Tevfik Bultan, Professor, Computer Science (interviewed Winter 2016)
About Professor Bultan:
- Undergraduate Degree: B.Sc. Middle East Technical University/Electrical and Electronics Engineering, 1989
- M.S. Degree: Bilkent University/Computer Engineering and Information Science, 1993
- Ph.D. Degree: University of Maryland, College Park/Computer Science, 1998
- Ph.D. Advisor: Richard Gerber
- How long have you been at UCSB? Since 1998
- CS Department Profile
- Lab / Group: VerificationLaboratory (VLab)
- Top Publication: "Automata-based Model Counting for String Constraints"
- Research Areas: Software Verification, Program Analysis, Software Engineering, Computer Security
- Courses: CMPSC 160 Translation of Programming Languages, CMPSC 16 Problem Solving with Computers, CMPSC 267 Automated Verification, CMPSC 272 Software Engineering
- Awards and Honors: ACM SIGSOFT distinguished paper award, 2005, 2014; ASE 2005 best paper award, NSF CAREER award
Tell Us About Your Research:
My research focuses on automated verification techniques and their application to software. As computer systems become more pervasive, their dependability becomes increasingly important. As a result, there is an ongoing shift in focus, both in academia and industry, from performance to dependability. The size and complexity of the software systems nowadays inevitably lead to errors during both design and implementation phases. The goal of our research at VLab is to develop verification techniques that will help developers in identifying errors in software. Recently, we have developed a novel approach for finding data model bugs in software applications written using the Ruby-on-Rails framework, where programming errors could lead to loss of data or unauthorized access to data.
One positive advancement in modern application development has been the adoption of the Model-View-Controller (MVC) architecture which facilitates the separation of the data model (Model) from the user interface logic (View) and the control flow logic (Controller). The modularity and separation of concerns principles imposed by the MVC pattern provide opportunities for developing customized verification and analysis techniques. We developed an approach for automated verification of data models that 1) extracts a formal data model from a given application, 2) converts verification queries about the data model to queries about the satisfiability of formulas in a decidable theory, and 3) uses a decision procedure to check the satisfiability of the resulting formulas. We implemented this approach and applied it to open-source Rails applications, discovering data model errors in existing applications and demonstrating the feasibility of our approach.
How and Why Did You Get Into Your Area of Research and Why UCSB?:
During the first year of my PhD at the University of Maryland I took a bunch of courses and attended as many talks and seminars as possible. Some faculty there were focusing on system building, and some faculty were doing pure theory. I wanted to do a mix of theory and tool building. Automated verification area seemed like a great blend of theory and application. I learned about the model checking area and it seemed very interesting to me with its blend of mathematical logic and program analysis. The quality of the papers and the results in that area were very high which inspired me.
One of the reasons I chose to join UCSB is, when I interviewed at the CS department, it felt like a department on the rise with a lot of energy and a very collaborative environment. It also helped that my significant other is a UCSB graduate and she told me that Santa Barbara is one of the best places to live. And, she was right.
What do you Find Particularly Rewarding about your Research?:
Computing is a young field. It has changed the world already, but this is just the beginning. For years to come, human civilization will be heavily influenced by the advancements in the field of computing. Conducting scientific research in computing is a very fulfilling way to contribute to this future. I am particularly interested in research problems about analyzing software. The core of computing discipline is programming, in other words, writing software. By focusing on software analysis, I get to work on one of the core problems in the field of computing.
Where Will Your Research Take You Next:
There are many future research directions. In the short term, I would like to extend our work on software analysis, verification and security to Internet-of-Things (IoT) and autonomous devices. As computing becomes part of every device around us we will need to make sure that they work properly. It is one thing if your desktop or smart phone software crashes, it is another thing if the software on the device that monitors your health crashes, or the software on your self-driving car crashes. So, dependability of software in these domains is an important and urgent problem to work on. As a longer term research goal, since programming is becoming a skill that everyone needs to learn, I plan to investigate new software development approaches that will enable everyone to write dependable programs.
More on Tevfik's Research and Collaborations:
- Do you collaborate with Industry or other groups outside of UCSB? Currently I have a large collaborative project that involves Vanderbilt University and CMU. It is both challenging and rewarding to work with a big group of people. Some projects require big collaborations due to their scope. The project we are working on with Vanderbilt and CMU is about detecting vulnerabilities in Java bytecode. In particular, we are interested in automatically finding worst-case behavior and information leakage in programs. These are very hard problems, and they are also extremely interesting. Having a big group of people working on the same project enables us to tackle these hard problems.
- Do you collaborate with other UCSB faculty/departments? I have had collaborations with many faculty members at UCSB. Jianwen Su and I have worked on verification and analysis of service oriented systems and we co-supervised a PhD student (Xaing Fu, who is currently an Associate Professor at the Hofstra University). This was a very fruitful collaboration. Our results on analysis of interactions of web services have become seminal papers in the choreography analysis area. I have also collaborated with Oscar Ibarra on application of automata theory to automated verification problems which led to many interesting results. CS department at UCSB has a very collegial atmosphere which makes collaboration among faculty very easy and enjoyable.
Bultan's Research Group and Thoughts on Working with Graduate Students
VLab is a very active lab that consistently produces high quality research. This is due to the fact that I have excellent graduate students! I have always been very lucky in finding talented graduate students, and I consider graduate advising to be one of the best things about my job. Let me brag about my former PhD students a little bit: Six of my former PhD students have tenure track appointments and four of them are tenured. One of them, Fang Yu, received the UCSB Computer Science Outstanding Dissertation Award in 2010. This award is given annually to the best PhD dissertation in our department. Currently, Fang Yu is a tenured Associate Professor at the National Chenchi University in Taiwan. Another former PhD student of mine, Muath Alkhalaf, received the 2015 ACM SIGSOFT Outstanding Doctoral Dissertation Award. The ACM SIGSOFT Outstanding Dissertation Award is an annual international award that recognizes the top dissertation in the area of software engineering. This award is not only a great recognition for my Lab, but it is also a wonderful recognition of the software engineering research at UCSB. Muath Alkhalaf is currently a tenure-track assistant professor at the King Saud University in Riyadh, Saudi Arabia. The current group of students at VLab are especially talented. They are making excellent contributions to the software verification and sofware security areas. I am really enjoying working with them. And, I am always looking for new talented students to join VLab!
Rich Wolski, Professor, Computer Science (interviewed Spring 2015)
About Professor Wolski:
- Undergraduate Degree: B.Sc. Cal Poly San Luis Obispo
- M.S. and Ph.D. Degrees: UC Davis — M.S. 1989 and Ph.D. 1994
- Industry Employment: Co-founder Eucalyptus Systems (now part of HP)
- CS Department Profile
- Lab / Group: RACELab
- Research Area: Operating Systems and Distributed Systems
- Courses: Operating Systems (CS 270) and Cloud Computing
- Awards and Honors: Two papers in best of 20 years of High-Performance Parallel and Distributed Computing (HPDC) and one best of 35 years of ACM International Symposium on Supercomputing (ICS)
Tell Us About Your Research:
We investigate the use of open source software technologies to build scalable systems. Cloud computing and large-scale high-performance computing depend on software innovations that enable the computational, communication, and storage capabilities of many computers and networks to be used together. Our group studies the system-building principles needed to create such amalgamations empirically, by building experimental software systems that can be tested and studied in a scientific context.
How and Why Did You Get Into Your Area of Research and Why UCSB?:
I have always been fascinated by the idea of building large systems that can perform ever more powerful computations. The emergence of Internet Search as a key societal technology demonstrates how very large scale computation can lead to important new capabilities. UCSB is remarkable in its support of empirical research (that has impact in the "real world") and cross-disciplinary collaborative research. I was drawn to it because there did not seem to be boundaries or impediments to how and what I could study in this exciting field.
What you do Find Particularly Rewarding about your Research?:
Working with students to investigate new answers and solutions to pressing and difficult problems is by far the most rewarding part of research for me.
Where Will Your Research Take You Next:
Scalable computing will continue to change the world by making what human kind can know, broader and more accessible. I'm looking forward to the research that accelerates this process.
More on Rich's Research and Collaborations:
- Do you collaborate with Industry or other groups outside of UCSB?We are collaborating with companies such as Pow Wow Energy that are focused on improving the use and stewardship of natural resources. Working with Pow Wow and Vine Rangers, a start-up dedicated to improving local viticulture, we have been studying water usage and wildlife activity in the Santa Barbara county area.
- Do you collaborate with other UCSB faculty/departments? We collaborate with Frank Doyle's group in Chemical Engineering on developing innovative therapies for individuals with Diabetes. Using a combination of process control and machine learning based analytics we are studying how activity monitoring using consumer "wearables" can be used to improve therapeutic outcomes.
Wolski's Research Group and Thoughts on Working with Graduate Students
Our lab hosts between five and 15 graduate students and undergraduates working on research. We encourage students to work collaboratively on high-impact research problems and to interact as colleagues with the wider academic and technology communities.
Tim Cheng, Professor of ECE and UCSB Associate Vice Chancellor for Research (interviewed Fall 2013)
About Professor Cheng:
- Hometown: Taipei, Taiwan
- Undergrad Degree: National Taiwan University, EE Dept, 1983
- Ph.D. Degree: University of California, Berkeley, EECS Dept, 1988
- Ph.D. Advisor: Professor Ernest Kuh
- Industry Employment: Bell Labs, Murray Hill, NJ - Technical Staff Member
- Tim's College of Engineering Profile
- Labs: SoC Design and Test Lab and Learning-Based Multimedia Lab
- Publications: Google Scholar
- Research Interests: Design Validation, Verification,Testing, and Reliability for Circuits and Systems; Mobile Embedded Systems; Multimedia Computing
- Courses: Mobile Embedded Systems/Smartphones (ECE 150/250), VLSI Test Techniques (255A), Digital Design Methodologies (152B)
- Awards and Honors: IEEE Fellow, received 10 best paper awards in various IEEE conferences and journals, UCSB College of Engineering's Outstanding Teaching Faculty Award 2004-2005
Tell Us About Your Research: My research encompasses two major areas: (1) Design automation and test for electronic systems and (2) Mobile computer vision and embedded systems. In the first area, the research addresses challenges of ensuring correctness and reliability of complex integrated systems. Throughout my career, I've developed a number of techniques that have led to the availability of low-cost and high-quality solutions for validation and testing of high-performance and robust silicon integrated circuits as well as of flexible electronics. In the second area, my group developed a number of solutions for fast and accurate content analysis in images and videos, with an increasing focus on mobile applications that have limited hardware and energy resources.
How and Why Did You Get Into Your Area of Research?: Electronic design automation (EDA) and test are critical areas for the semiconductor industry and their research involves hardware and software, as well as algorithms and methodologies, and has strong "systems" components. These attributes are very attractive to me and thus helped provide me a long-lasting research career in this field. Mobile embedded systems, which have a broad spectrum of applications and are technically sophisticated, is multidisciplinary in nature and also interests me.
Why UCSB?: UCSB has a great reputation for nurturing multidisciplinary research which was the main reason I chose to leave Bell Labs. Over the past 20 years, UCSB's research culture and environment have helped me tremendously by expanding my research to cover a spectrum of topics - such as devices, systems, software, and applications - while still enabling me to have a great amount of depth for each research project.
What you do Find Particularly Rewarding about your Research?: I have been offering a course on mobile embedded systems, cross-listed for both undergraduate and graduate students, which I found particularly rewarding. The course covers the latest smartphone and tablet technologies including hardware platforms, operating systems, emerging apps, and low-power design techniques. The growth of smartphone and tablet functionalities, and advances in their technologies, have come about far more rapidly than most people’s ability to comprehend. There is not a textbook or any publicly available teaching materials for a comprehensive coverage of this fast-moving technical area. I have spent a significant amount of time and efforts developing the course materials to help students, as well as myself, gain a broad and sufficiently deep knowledge of the key technologies behind these devices. Due to the timeliness of the course materials, many students taking the course successfully land an internship or a full-time job in the smartphone/Android industry right after receiving their B.S. or M.S. degrees and I have found this very rewarding.
Where Will Your Research Take You Next?: I constantly look for new topics that will excite me and help train graduate students. I am now growing my research in the general area of microsystems for mobile healthcare, which I believe has rich research opportunities and new applications.
More on Tim's Research and Collaborations:
- Do you collaborate with industry or other groups outside of UCSB? I collaborate with industry and international research partners, including companies like Intel, Texas Instruments, Broadcom, Mediatek, Freescale, ITRI, etc. They sponsor our research, provide industrial data, host our graduate students for summer internships, offer critical input to our research, and adopt our solutions for some successful research results. I also spent my sabbatical at National TsingHua University, Taiwan (1999), University of Tokyo, Japan (2008), Hong Kong University of Science and Technology HKUST (2012) to establish collaborative projects.
- Do you collaborate with other UCSB faculty/departments? I have been working closely with several other faculty members at UCSB (in ECE and Materials) and three other universities on a multidisciplinary research project to develop enabling technologies and applications for monolithically 3D-integrated, hybrid CMOS/nano-memristor circuits. This multidisciplinary research team for the AFOSR-MURI HyNano project consists of researchers from four campuses (UCSB, SUNY Stony Brook, Michigan, and UMass) and nine research groups (including physicists, materials scientists, device engineers, circuit designers, and computer architects) with the sponsorship from Department of Defense (DoD) and Air Force Office of Scientific Research (AFOSR) under the Multidisciplinary University Research Initiative (MURI) program.
Tim's Research Group:
- Tell us about your research group: I manage two research labs — the SoC Design and Test Lab and the Learning-based Multimedia Lab. The SoC Design and Test Lab focuses on developing methodologies, algorithms, techniques, and tools for validating, verifying, testing, and analyzing system-on-chip (SoC), flexible electronics, and 3D devices. The Learning-Based Multimedia (LBMM) Lab has wide interests in various algorithms and techniques for multimedia applications but its current focus is mobile computer vision, mobile augmented reality, and medical image viewing. Our research addresses the main challenges for achieving the required real-time performance of vision and medical image viewing tasks with minimum energy consumption in a mobile, embedded environment, including designing a new energy-efficient parallel architecture for these tasks.
- Thoughts on working with graduate students: Graduate students spend a very precious period of their life in my lab so my ultimate goal is to make sure their time investment in the lab is worthwhile and can help them develop a successful and long-lasting career. My objective is to train my students to become both deep thinkers and solid doers. I don't do micro-management but have one-on-one meeting with each graduate student at least 1-2 hours per week in addition to group meetings. I pay special attention to students' thesis directions, which must be innovative, useful, and interesting. In addition to research content, it’s equally important to provide abundant opportunities for students to improve their writing and presentation skills.
Tim Sherwood, Associate Professor, Computer Science (interviewed Spring 2012)
About Professor Sherwood:
- Hometown: San Diego, CA
- Ph.D.: UC San Diego (Go Tritons!), CSE, 2003
- M.S. Degree: UC San Diego, Computer Science and Engineering
- Undergrad Degree: UC Davis (Go Aggies!), CSE, 1998
- Ph.D. Advisor: Professor Brad Calder, UCSD
- Industry Employment: Microsoft Research (Visiting Researcher)
- Tim's Personal Website
- Lab / Group: ArchLab
- Research Interests: computer architecture, secure processors, embedded systems, program analysis and characterization
- Courses: Computer Architecture (CMPCS 154); Advanced Computer Architecture (CMPCS 254); Translation of Programming Languages / Compilers (CMPCS 160) ; Trustworthiness in Embedded Systems (Special Topic / CMPCS 290E); and Senior Capstone (CMPCS 189B)
- Awards and Honors: IEEE Micro Top Pick 2003, 2006, 2009, 2010; Best Paper PACT and CGO; Northrop Grumman Teaching Award; 2012 UCSB Academic Senate Distinguished Teaching Award and more
Tell Us About Your Research:
My current research focus is on hardware/software system design under strict efficiency, safety, or security requirements. Systems responsible for controlling aircraft, regulating access to very sensitive data, and implanted in our medical devices, all deserve a level of assurance far beyond the norm. Creating these systems today is an incredibly expensive operation both in terms of time and money; and even assessing the assurance of the resulting system can cost upwards of $10,000 per line of code.
Building upon my groups experience developing novel security methods for FPGAs, we have developed a new method for building embedded systems that allow us to verify the integrity or secrecy of all information executing in that system -- from the highest levels of abstraction down to gate-level details of the digital logic implementation. While not addressing physical or analog attacks, it does include safety from covert channels, information flows introduced during refinement, implicit flows, and even timing channels. While common case performance is a powerful tool, this basic research is exploring an orthogonal direction for computer architecture: making it easier to build systems with provable properties. To demonstrate that this is really possible for non-trivial systems we developed a new hardware logic discipline for security, Gate-Level Information-Flow Tracking (GLIFT) logic, and show its effectiveness by creating a full system including: a new Instruction Set Architecture, a domain specific language and compiler, and a fully synthesizable prototype CPU all around this discipline. We recently demonstrated how such a technique can be incorporated directly into the hardware design language, and how by using our method as a static analysis technique we can support even general purpose programs with almost negligible overhead.
How and Why Did You Get Into Your Area of Research and Why UCSB? What you do Find Particularly Rewarding about your Research?: Originally I fell into research by accident. I was an undergraduate looking for something productive to do over the summer and I started working with Fred Chong long before we were able to steal him away to UCSB. From that earliest experience I was hooked, it was so exciting to be at the cutting edge of technology. As an undergraduate you learn the best a field has to offer distilled down into it's purest form, as a masters student you start to see the edge of human knowledge about a subject. As a Ph.D. student you find exactly where that edge is and blast through it. When you get to those questions where the right answer is "nobody knows" and then you set off to answer them for the first time -- well that is a pretty special thing. I think that is part of the reason that going to school with both absolutely top research and a deep dedication to the students, like UCSB Engineering, is so important. You want to learn from people passionate about the field, and you want them to help guide you to that edge. I think that is what I find so rewarding about my job, bringing students to the edge of human understanding in science and engineering, and then pushing on that edge until we can move it forward.
Where Will Your Research Take You Next?: I think the biggest challenge facing computer engineering today is the fact that, for all the time, effort, and money that goes into building hardware and software systems, the fact of the matter is that they are still incredibly brittle. When build a automobile today you engineer it from the ground up. You build on years of experience and a deep understanding of the materials used and how and when they fail. The fact of the matter is that the computer that sits in your laptop today was first designed decades ago when the world was a very different place -- we used to use floppy disks to move data around for goodness sake! The fact that this same old design can be patched and retooled and supercharged for so many years is really an impressive feat, but its age is really starting to show. There is only so much horsepower you can add to a model-T before you realize that something entirely new might be needed as the things that we care about change over time (like fuel efficiency!). One of the most important set of questions my lab is looking at now is how computer systems might be designed in to future to be far less brittle, to support provable notions of security, reliability, and safety, and to use orders of magnitude less power.
More on Tim's Research and Collaborations:
I just got back from a year at Microsoft and it was quite informative. It is wonderful to see first hand the role that research can play in a company, and recently we published two papers together -- the first one on allocating power effectively when making use of resistive memory technologies, and the second one on using ideas from cryptography to address problems encountered in designing secure microprocessor key storage when attackers can dismantle your chips. The best collaborations are when you have many people from different disciplines and backgrounds all learning from each other -- for example I have recently been learning about memristor physics from Dmitri Strukov and formal semantics from Ben Hardekopf while I have been teaching them about modern processor design. The biggest advances happen when we are able to make new connections between two fields that no one has ever found before.
Sherwood's Research Group and Thoughts on Working with Graduate Students
At UCSB, I co-direct the CS Computer Architecture Lab (ArchLab), where my students and I work on all manner of computer architecture problems, from circuits to systems to the applications that run on them. Computer architecture is a great field in that you can use theory, algorithms, languages, and circuits all together to attack interesting problems. My primary interest is in techniques that allow for the composition of systems with strict properties of safety, security, scalability. To tackle these types of problems we have to build the whole thing, from the logic gates, to functional units, to microprocessors, to compilers, to operating systems, all the way up to applications -- and I am really lucky to work with students that can do it all!
Forrest Brewer, Professor, Electrical & Computer Engineering (interviewed Winter 2011)
About Professor Brewer:
- Hometown: Arvada, Colorado
- Ph.D.: University of Illinois, Computer Science, 1988
- M.S. Degree: University of Illinois, Computer Science, 1985
- Undergrad Degree: Caltech, Physics (honors), 1980
- Industry Employment: Northrop Corporation, 1981-1985
- Lab / Group: High Level Design/Synthesis
- Research Interests: VLSI Design and Architecture, System Level Tools and Specification
- Courses: VLSI Architecture and Design / Advanced VLSI Architecture and Design (ECE 124D / 256C), Hardware - Software Interface / Embedded System Design (ECE 153A / 253), VLSI Project Design / Testing (ECE 224),Logic Design Automation / Algorithmic Logic Synthesis (ECE 256B/D)
Tell Us About Your Research:
My research is in system level design automation of mixed analog/digital and hardware/software systems. Low power, high-performance control system implementations in FPGA/ASIC. Formal logic based optimization and design at the system level. Digital systems engineering in highly constrained environments such as very low power digital, radiation hardened digital and analog interface design. Communication network automated protocol synthesis, system level machine identification (with Li.C. Wang) and mixed digital/analog integrated control for chemical and bio-inspired in-vitro chip design (with L. Theogarajan).
How and Why Did You Get Into Your Area of Research and Why UCSB?: I decided against a career in theoretical physics largely because I desired the possibility of more real-world impact. Turning to engineering, I spent several years in industry designing very high performance signal processing and multi-dimensional control systems at the dawn of the computer integration in those fields. My graduate work ended up in Design Automation which merged the physics, software tools and modeling aspects and hardware system design that was my interest. UCSB was clearly an up-and-coming school in ECE where there was potential to grow into a unique locale.
What do you Find Particularly Rewarding about your Research?: I am happiest when a idea pans out with a graduate student — every couple years, you get to a point or concept that is completely new. There is also the very personal rewards when a student manages to finish a difficult thesis or lands a dream job.
Where Will Your Research Take You Next?: I am looking into the practicality of automated synthesis of 1-bit sigma-delta designs in FPGAs and ASIC. This presents a serious challenge as the SNR of the 1-bit signals is typically 1 part in 50. The upshot is that many classical techniques have massive noise and aliasing problems. We are looking at formal digital induction and game-theoretic techniques to verify correct operation.
More on Forrest's Research
- Do you collaborate with industry? Other groups outside of UCSB?: I consult in the area of Integrated Circuit design and more recently in low-power embedded system design. I am on the technical advisory board of Atrenta Corp. and have served on technical start-up teams for two other companies. I am currently involved in a mobile embedded system startup and a technical consulting contractor (radiation engineering and software tools and modeling).
- Do you collaborate with other UCSB faculty and departments?: I am in a joint effort with Kim Turner of Mechanical Engineering,a MEMS-based accelerometer using quantum-tunneling was successfully placed under closed-loop control with a 40kHz+ loop rate.
Forrest's Research Group and Thoughts on Working with Graduate Students
My lab consists of five graduate and three undergraduate students with two students in system level hardware/software synthesis, one student in constrained environment digital and analog engineering, two students in control system low power and 1-bit sigma-delta design, and two joint students with CE faculty in the areas of digital system test-based identification and constrained network protocol synthesis. The two system level students work in transaction-based synthesis of hardware/software systems in concert with an SRC/NSF program. The constrained digital student is working on analog/digital synthesis for the Rad-Hard environment of the CERN LHC experiments. Last but not least, the undergraduate students are working on what is now a Capstone Project consisting of an inexpensive FPGA based control appliance with versions aimed at research in MEMS and Chemical/Physical process and experimentation and another aimed at the controls lab teaching needs.
Chandra Krintz, Professor, Computer Science (interviewed Summer 2011)
About Professor Krintz:
- Hometown: Morocco, Indiana
- Ph.D.: U. of California, San Diego, Computer Science, 2001
- M.S. Degree: U. of California, San Diego, Computer Science, 1998
- Industry Employment: Microsoft Research (Intern), IBM Research (Intern), Locus/Platinum Computing (Software Engineer)
- Chandra's Personal Website
- Lab / Group: Lab for Research on Adaptive Computing Environments (RACELab)
- Research Interests: Runtime Systems and Programming Support for Cloud Computing, High-level Languages, and Mobile Computing; Dynamic and Adaptive Optimization, Monitoring, Customization of Software and Systems
- Courses: Programming Language Implementations, Hardware/Software Interfaces, OO Computing, Cloud Computing, SWE
- Publications: Krintz's Publication List
- Top Publication: Cross-Language, Type-Safe, and Transparent Object Sharing For Co-Located Managed Runtimes
- Honors and Awards: NSF CAREER, CRA-W Anita Borg Early Career Award, UCSB Distinguished Teaching Award, COE Teaching Award, ACM & IEEE Senior member
Tell Us About Your Research:
I'm interested in improving the performance, energy efficiency, and ease of use of software systems and applications. In particular, my group focuses on techniques that help us understand the behavior of and to optimize programs written in high-level languages (Java, Python, Ruby, and others) that execute over the internet and/or distributed computer systems. Our techniques efficiently monitor and predict the behavior of programs as they run, and use this information to optimize all layers of the software stack.
My group recently has developed a new computing platform for cloud systems called AppScale. AppScale facilitates cloud computing research and implements the Google App Engine (GAE) APIs (emulating the GAE cloud). AppScale implements a number of different database back-ends, a map-reduce interface, support for computational and data-intensive workloads, as well as performance and resource monitoring for automatic scaling. My group employs AppScale to investigate the next-generation of distributed programming systems.
How and Why Did You Get Into Your Area of Research?: I found my area of interest the way many students find theirs: by trying out different things. When pursuing my PhD, I started out in Artificial Intelligence (because the group gave away free pizza all right, I was a starving student). I investigated information theory and cryptography because I found an amazing professor with whom I liked working. I then realized that my true calling was programming systems (because I wrote programs to implement the theory instead of coming up with the theory myself :) and because the potential of Internet computing and related technologies was so compelling). My interests in this area have evolved but have not waned; my particular foci over time have included mobile computing, sensor network systems, managed runtime systems (Java/.Net virtual machines), hand-held and microcontroller-based systems, interpreted language runtimes (Python, Ruby), distributed/Internet computing, and cloud systems.
What do you Find Particularly Rewarding about your Research?: I love being able to work on hard problems that are important to industry, researchers and developers, and to the world around us. Programming technologies and devices change rapidly so there are always interesting directions to pursue and learn about. I never get bored. In addition, I love the intellectual autonomy and challenges that research enables. Finally, I get to work on these problems with amazingly bright colleagues and students who constantly inspire and energize me.
Where Will Your Research Take You Next?: My group and I are on the bleeding edge of cloud computing and programming systems and, the two are intertwined. I plan to investigate how to make writing efficient programs for cloud systems easier so that doing so can be done by a broader user base (scientists, data analysts, students, artists, ...) so that we all can more easily take advantage of the vast resources and potential that cloud systems offer. I also plan to continue investigating clever and useful ways of making the programs that we write more energy efficient, performant, and scalable.
More on Chandra's Research
- Do you collaborate with industry? Other groups outside of UCSB?: I collaborate (and have collaborated in the past) with researchers at Microsoft Research, IBM Research, Google, Intel, and other companies. Our collaborations have targeted high-level language virtual machine technologies (profiling, dynamic and adaptive optimization of programs, and garbage collection).
- Do you collaborate with other UCSB faculty and departments?: I collaborate with multiple faculty at UCSB as well. We combine our expertise, experiences and interests to pursue research in systems and software (e.g. in the areas of cloud computing, sensor networking, hardware/software interoperation, and static and dynamic program analysis).
Chandra's Research Group and Thoughts on Working with Graduate Students
My research group typically consists of 4-5 PhD students, 4-5 MS students, and multiple undergraduates. My students work together or on their own depending on their interests, work styles, and experience. We have both group meetings and individual meetings depending on the needs of the students.