Computer engineering is the only one of the eight research areas in which a student can receive a specialized undergraduate degree (BSCmpE). Undergraduate and graduate students study in three main sub-areas -- computer architecture, software systems, and intelligent systems. Graduate students may pursue studies that cross between the sub-areas and combine a variety of topics. The Computer Engineering Faculty have the following labs and project groups.
Information for new CE Area graduate students:
Multimedia Lab URL: https://engineering.purdue.edu/~dmultlab/
Associated faculty: Prof. Arif Ghafoor
Dependable Computing Systems Lab (DCSL)
In this lab, we design practical reliable and secure distributed systems. Our work is motivated by the fact that systems are increasing in scale, both in terms of the number of executing elements and the amount of data that they need to process and existing dependability techniques are increasingly failing to meet the demands of such scaling. Further, systems are heterogeneous, both in terms of hardware (GPU, DSP, FPGA, etc. coupled with traditional CPUs) and software (software from multiple parties being integrated to provide end-user functionality). The faults that bedevil such systems may be due to accidental (or natural) causes, or malicious (or induced) causes and we deal with both classes. Our work deals with faults by providing the functionality of detection (tell quickly that there is something wrong), diagnosis (what is the root cause of the failure), containment (how to prevent the failure from propagating through the system), and in some cases, prediction (of an impending failure, so that proactive mitigation actions can be triggered). Our work focuses primarily in the application and in the middleware software layers, while with embedded wireless devices, we also delve into the low-level firmware.
Associated faculty: Prof. Saurabh Bagchi
Haptic Interface Research Lab (HIRL)
HIRL is devoted to the investigation of the underlying principles for the design, development and evaluation of human-machine interfaces, with an emphasis on haptic interfaces. It is equipped with several unique equipment, including a real-time pressure-distribution measurement system, two force feedback devices, and several vibrotactile displays developed in-house.
Associated faculty: Prof. Hong Tan
High-Efficiency, Low-Power Systems Group (HELPS)
HELPS develops the technology to improve the efficiency and performance of computing systems. Our research includes cloud and mobile computing, image/video processing, resource management. Energy efficiency is one of the "enablers" in computing and longer battery lifetime has been consistently ranked as at the top of mobile users' most-wanted improvement. HELPS integrates the convenience of mobile computing and the abundant resources in cloud computing for providing better performance at lower energy consumption. HELPS is constructing a platform using globally deployed network cameras for mobile users to obtain real-time views of the world.
Associated faculty: Prof. Yung-Hsiang Lu
Internet Systems Lab (ISL)
Our focus is on research related to the Internet and Distributed Systems. Our current research focuses on Cloud Computing. Specifically, we are looking at how best to architect interactive web-applications over geographically distributed data-centers, and how to partition functionality between smart-phones and the cloud. We are also looking at Software Defined Networking and Enterprise Network Configuration Management. In the past, we have conducted research in the areas of Peer to Peer Systems, and Internet video Content Distribution architectures. Our research has benefited by support from NSF, Cisco, AT&T, and Microsoft. Many of the challenges we address are motivated by real-world experience, require insights into operations of distributed systems at Internet scales, and can have substantial real world impact.
Machine Learning, Planning, and Reasoning
We study new methods for automating fundamental cognitive processes such as learning, planning, and reasoning. Our focus is on challenge problems for which previous artificial intelligence research has dramatically failed to produce human-level performance---for example, learning the meaning of words by seeing them used in context, or learning to play a new game better by playing it repeatedly. We actively examine the relationship between the machine's representation of the problem and its solution success. Our applied projects include work in the areas of branch prediction in computer architecture, control of computer networks, and anomaly detection in computer security.
ParaMount Research Group
The ParaMount Research Group focuses on system software for high-performance computing, including: advanced compilation techniques, methodologies and tools for parallel programming, program characterization, benchmark evaluation and development, parallel and distributed computing concepts, and network computing.
Associated faculty: Prof. Rudolph Eigenmann
Purdue Program Languages Research Group
PurPL is the cross-departmental umbrella group for programming languages research at Purdue University. PurPL research groups push the boundaries of every area in programming languages, software engineering, formal methods, and systems: PL theory, design, and implementation, language-based security, compiler optimizations, verification, program synthesis, and more. But we do more than fundamental research: we bring PL ideas to bear on a wide range of areas, including big data, security, education, and computational science.
Robot Vision Lab
The Purdue Robot Vision Laboratory performs state-of-the-art research in sensory intelligence for the machines of the future. This laboratory has made pioneering contributions in 3D object recognition, vision-guided navigation for indoor mobile robots, task and assembly planning, among others.
Associated faculty: Prof. Avi Kak
System software, including operating systems, distributed systems, and runtime, constitutes the core of modern computer systems. With diverse perspectives, we are building the next-generation system software for a wide spectrum of computers – from mobile devices in your pocket to “big iron” in data centers – towards making them performant, efficient, and reliable.