Overview of Purdue Computer Engineering Last Update: March 2015 ECE Open House, 2015 1 Computer Engineering (CE) at Purdue • 21 faculty members (~25% of the School of ECE) • Key Areas: – Software Systems • Compilers and High Performance Computing • Distributed Systems, Networking and Operating Systems • Dependability and Security – Computer Architecture and Embedded Systems • Microarchitectures • Interconnection networks • Low power design – AI, Robotics, and Visualization • Artificial Intelligence and Machine Learning • Graphics and Visualization • Robotics, Vision and Haptics ECE Open House, 2015 2 Why Purdue Computer Engineering? • Ranked #9 (US News and World Report, 2014) – Consistently ranked in the top 10 – Computer Engineering gets a separate ranking from EE • Strong software focus is unique… – Many faculty with Ph.Ds from Computer Science Departments – Areas like OS, Networking, Compilers, Visualization, AI not common in Computer Engineering Departments • Strong reputation in hardware – Architecture, VLSI, Embedded Systems • Collaborations with sister areas/departments/centers – Communication & Signal Processing, VLSI, etc. – Computer Science Department – CERIAS (Security center), CRI (High Performance Computing) ECE Open House, 2015 3 Where do CE alumni go? (in recent years) PhD Universities (professors) US* Oversea MS 8 4 8 Research Labs Startup 4(2 as founders) Large Companies 30 * One is a department head. ECE Open House, 2015 1 13 4 CE Positions • Only a representative sample Universities Research Labs UNC Charlotte Microsoft Research Facebook Mathworks U Pittsburgh PARC Intel (12) HP Oregon State Sandia Google (5) Samsung U Missouri MIT Lincoln Labs IBM (3) Cisco U Toronto AT&T Labs Microsoft (4) Simulex Arizona State Lawrence Livermore Qualcomm Cary MIT MITRE VMWare Schlumberger Stanford Adobe DE Shaw Bangladesh U Amazon Accenture Korea U Saavn Arctic Sand Cal Poly JP Chase SensorHound ECE Open House, 2015 Companies 5 Degree Options • • • • Lots of flexibility in degree options, course selection Ph.D (after Masters): 4 courses Direct Ph.D (after Bachelors): 12 courses Masters: – Non-Thesis (10 courses) – Thesis Option (6 courses) • Some highlights about our Masters: – Courses same as Ph.D level courses – Easy to switch to Ph.D (with support from committee members) – Thesis option allows large-scale system building, exposure to research etc. • Details: See Ph.D Handbook: – https://engineering.purdue.edu/ECE/Academics/Graduates/PHD/DoctoralHa ndbook.pdf ECE Open House, 2015 6 Research Areas: Overview • Compilers: Eigenmann, Midkiff, Kulkarni, Siskind • Distributed Syst./Networking/Operating Syst: Bagchi, Hu, Rao, Lin • Dependability/Security: Ghafoor, Bagchi, Lin • Computer Architecture: Vijaykumar, Thottethodi • Embedded Systems: Raghunathan, Lu • Artificial Intelligence/Machine Learning: Givan, Siskind, Kak • Human Computer Interaction: Ebert, Quinn • Robotics/Vision: Kak, Lee, Park, Siskind ECE Open House, 2015 7 Internet Systems Lab (Sanjay Rao) Current Research Focus: Cloud Computing Many Opportunities Elasticity, Cost-savings, Geodistribution Big Challenges: Data Privacy Concerns Performance is variable: Amazon: every 100ms latency cost 1% in sales Google: 0.5 sec’s delay revenue drop by 20% Data-center failures and outages 8 ECE Open House, 2015 8 ISL (Sanjay Rao) Hybrid Cloud Architectures Less sensitive data an ACL Geo-distributed data storage Balancing consistency, availability, performance Cloud frontend Internet (sensitive databases) Local Data Center • How to architect interactive geo-distributed cloud applications? Adapt to performance variability, high availability • Mobile Applications and cloud: • When does cloud make sense for mobile applications? • Consider both energy efficiency (3G/LTE), and performance ECE Open House, 2015 9 ISL (Sanjay Rao) • Other Research Areas: – Enterprise Network Management – Software Defined Networks – Internet Video Delivery (e.g., Youtube) • Collaborations with AT&T, Microsoft, Google • Research prototypes deployed in AT&T, Purdue • More Information: – URL: http://www.ece.purdue.edu/~isl/ – sanjay@purdue.edu ECE Open House, 2015 10 Dependable Computing Systems Research (DCSL) Prof. Saurabh Bagchi • URL: engineering.purdue.edu/~dcsl • We need computer systems that we can depend on in the face of – Naturally occurring faults – hardware malfunction, software bugs – Malicious intrusions – insider attack or external adversaries • To build these we need students who are not afraid to make and break real systems – Many project ideas and requirements come from industrial sponsors and partners • Why our students love it? – – – – Internships at top industrial places Multiple job offers from top places No super-long PhD timelines Work with industry: Google Faculty Award (2015), … • Collaborating ECE faculty: Eigenmann, Kulkarni, Lin, Quinn ECE Open House, 2015 11 Research Projects in DCSL • • Distributed IDS,for based Framework distributed intrusion tolerant system on Bayesian Network – protecting – How to build an adaptive infrastructure for diagnosing and recovering Northrop Grumman’s networks from failures in a distributed platform? – Application: Web services, DoD missile defense system D1 D3 D2 D4 ECE Open House, 2015 12 Research Projects in DCSL • Black-box diagnosis – How to diagnose source of errors in large scale distributed computing platforms? – Application: Distributed web services, Mobile apps (with AT&T), Supercomputing clusters (with LLNL) • Dependable Cyber Physical Systems – How to build dependable system under resource constraints? Under strict timing constraints? – Application: Smart power grid monitoring (startup company: SensorHound Innovations), infrastructureless wireless networks, say in battlefields or in disaster relief (with USC/ISI) ECE Open House, 2015 13 Distributed Systems and Networking Lab (Prof. Y. Charlie Hu) (1/2) • Smartphone Energy Profiling – Characterizing and Modeling the Impact of Wireless Signal Strength on Smartphone Battery Drain (Sigmetrics 2013) – Where is the energy spent inside my app? Fine Grained Energy Accounting on Smartphones with Eprof (EuroSys 2012, Best Student Paper Award) – Fine-Grained Power Modeling for Smartphones Using System Call Tracing (EuroSys 2011) • Smartphone Energy Debugging (with Prof. Midkiff) – Hypnos: Understanding and Treating Sleep Conflicts in Smartphones (Eurosys 2013) – What is keeping my phone awake? Characterizing and Detecting No-Sleep Energy Bugs in Smartphone Apps (MobiSys 2012) – Bootstrapping Energy Debugging on Smartphones: A First Look at Energy Bugs in Mobile Devices (HotNets 2011) ECE Open House, 2015 14 Distributed Systems and Networking Lab (Prof. Y. Charlie Hu) (2/2) • Data Center Networking – Duet: Cloud Scale Load Balancing with Hardware and Software (SIGCOMM 2014) – The Only Constant is Change: Incorporating Time Varying Network Reservations in Data Centers (SIGCOMM 2012) – The TCP Outcast Problem: Exposing Unfairness in Data Center Networks (NSDI 2012) – Latency Inflation with MPLS-based Traffic Engineering (IMC 2011) – Optimizing Cost and Performance in Online Service Provider Networks (NSDI 2010) ECE Open House, 2015 15 What is High-Performance Computing (HPC)? • Systems and application technology that creates and uses the highest compute power – Technology that pushes this envelope is clearly HPC • Today’s performance level: ~100TFlops peak • (Cray XK7 @ Oak Ridge NL, 560,000 cores, 17590 TFlops peak) • Classical application areas: climate modeling, computational fluid dynamics, molecular dynamics, structural analysis, …. • Hardware and software systems that enable this technology • The Computing Research Institute is Purdue’s interdisciplinary Center for High-Performance Computing • Several CE faculty participate in CRI: Midkiff, Eigenmann, Ghafoor, Vijaykumar, Hu, Bagchi, Thottethodi, Raghunathan ECE Open House, 2015 16 Cyberinfrastructures You can get involved in the largest project in the history of Purdue NEES: Network for Earthquake Engineering Simulation nees.org Research topics: • Search, analyze, visualize, manipulate large data • Cloud computing services • Security • Collaboration, virtual organizations • Big Data capture, use, storage, management Profs Rudi Eigenmann Saurabh Bagchi Collaborating with Civil Engineering, Mechanical Engineering, Engineering Education and ~20 other Universities ECE Open House, 2015 17 17 HELPS Lab (Prof. Yung-Hsiang Lu) • High-Efficiency, Low-Power Systems • http://engineering.purdue.edu/helps • Supercomputer on Your Hand: Combine convenience of mobile and the resources in cloud servers • Run complex programs, such as recognition, high-performance graphics, strategic games… on phone while performing heavy computing on server (cloud) • Problems – – – – Which parts of programs should run on mobile or cloud? How to handle intermittent connections? How many servers should be used? How to retrieve data from multiple sites (such as Youtube + Facebook + Picasa)? – How to protect privacy and data integrity? ECE Open House, 2015 18 HELPS Lab: Prof. Yung-Hsiang Lu • Integration of mobile robots and cloud computing – Robot mobiles' batteries can last only minutes (for demos). – Computing takes too long and wastes energy. – Robots: sensing and control. Cloud: computing. • Big Data. – Thousands of cameras streaming video continuously. – Most videos are not stored or analyzed. – Analyzing these videos require distributed computing. MB b b/s Mb/s Mb/s data sources ECE Open House, 2015 b/s storage distributed computers 19 Embedded Systems Lab (ESL) – Vijay Raghunathan • Webpage: https://engineering.purdue.edu/ESL • Embedded Systems: “Computers that are part of larger systems that you don’t normally think of as computers” • 98% of all CPUs sold go into embedded systems • Often very resource constrained, distributed, wireless 71 embedded CPUs 2 million lines of code BMW 745i ECE Open House, 2015 20 ESL: HW and SW Systems Built By Us Power Converter On-chip MOS Caps MPP Tracking Unit I/O Pads Heliomote solarpowered sensor node AVEKSHA system for nonintrusive debugging of embedded systems ECE Open House, 2015 Ultra-low voltage energy harvesting IC RF triggered wakeup system Super capacitor based highefficiency energy storage system SPI-SNOOPER reliable wireless sensor node 21 Embedded Systems Lab (ESL) • Hardware and Software Architectures for Wireless Embedded Systems – New low-power hardware architectures – Environmental energy harvesting – Embedded systems that enable green computing • Wireless Sensor Networks – New programming paradigms – New techniques for reliable operation • System-on-Chip Design Methodologies ECE Open House, 2015 22 Parallelism, Languages and Compilers Lab (Prof. Milind Kulkarni) • How do we make it easier for “Joe programmer” to write correct, efficient parallel and distributed programs? – Give him an intuitive programming model • Sequential, or close to it • Simple abstractions for data structures, algorithms • Develop languages, compilers and run-time techniques to support intuitive programming models – New languages and language features to support simple parallel programming models – Compiler techniques to optimize program • Reduce communication latency, improve locality – Run-time techniques to optimize execution • Build efficient run-time systems • Automatically tune run-time parameters ECE Open House, 2015 23 PLCL Projects • Compilers and runtime systems for optimizing irregular applications – New transformations and analyses to improve locality, vectorize programs – Runtime systems to support distributed execution or using GPUs – Automatic tuning of run-time behavior • How do you adapt to the input? • Optimizing scientific applications – Take advantage of domain-specific properties for optimization • Algebraic properties, data usage behaviors • Optimizing and parallelizing Computational Genomics applications – Make it easier to write fast genomics applications (joint work with Prof. Bagchi) • What are the key kernels that people use in computational genomics? ECE Open House, 2015 24 Selected Compiler Projects (Prof. Sam Midkiff) • URL: www.ece.purdue.edu/~smidkiff/research.htm • Compilation for more efficient, easier, safer programming – Novel high level programming language design and optimization • Aspen (With Prof. Vijay Pai) – Novel models of how threads interact (memory models) to ease of programming and high performance – Optimization of programs with high level user-specified parallelism – Compiler monitoring of programs to detect and characterize errors • Compilation for high performance – Hybrid compile-time/run-time analysis and optimization methods – Optimization of code for multithreaded processors • Debugging massively parallel programs (Prof. Hu) ECE Open House, 2015 25 Auto-tuning Compilers: Turning computer applications into life-long learners (Prof. Rudi Eigenmann, Prof. Sam Midkiff) Today: Write a program Compile it Run/use it Challenges: • Navigate a huge space of optimization options • Dynamically plug-in new code • Ensure the evolving program improves ECE Open House, 2015 Goals: • Programs run “optimally” • Programs improve with age • Software evolves Tomorrow: Write a program Compile, try new options automatically Run/use program as it evolves 26 Prof. Felix Xiaozhu Lin’s Research • System Software for Personal Computing – Buttery smooth, “jank-free” interactions – Energy efficient, cooler devices – Friendly, foolproof app programming paradigms • System Software for Heterogeneous Platforms – Unleashing the power of novel accelerators – Combating the memory wall – Securing the use of accelerators ECE Open House, 2015 27 Prof. T. N. Vijaykumar’s Research (1/2) • Power- and Reliability-related – Mitigating power and heat problems – Data center power and cooling • Fault Tolerance – Architecture support for hard errors & soft errors – Architectures to tolerate process variations • Network Hardware – High-speed router design – Hardware support for network management – Hardware support for network security ECE Open House, 2015 28 Prof. T. N. Vijaykumar’s Research (2/2) • Multicore architectures – Chip multiprocessor architecture – Heterogeneous multicores – Architecture support to make parallel programming easier • Quantum Computing – Quantum architectures • Microfluidics – Programmable Lab-on-a-Chip ECE Open House, 2015 29 On-Chip & Off-chip Interconnection Networks (Prof. Mithuna Thottethodi) Node Node Node Mem Router Node CPUs R R • Computation Issues: • Communication Issues: – Architecture support for management of large scale systems – Memory hierarchy, interaction with application – Congestion control for communication intensive applications – Routing, switching, & arbitration with worst-case guarantees • Other Projects: - Storage area networks - Architectures for biochemical analysis ECE Open House, 2015 30 Purdue University Visual Analytics Center (PURVAC) – David Ebert • Visual analytics (spatial, temporal, predictive, tools) • Illustrative visualization • Perceptually-motivated visualization • Procedural modeling of natural phenomena • Rendering (volume, procedural, …) ECE Open House, 2015 31 Visual Analytic Center of Excellence (VACCINE) Public Safety & Health Visual Analytics Research • Public safety visual analytics – Coast Guard Search And Rescue Visual Analytics – Social Media Visual Analytics – Crime Visual Analytics • Public health visual analytics – Decision support environment for epidemic modeling and responses – Pandemic influenza modeling and visualization tool – Cancer Care Engineering ECE Open House, 2015 32 Human-Powered Systems Lab Prof. Alex Quinn We develop systems that bring humans and machines together to automate processes in ways that neither could accomplish alone. ECE Open House, 2015 33 Human-Powered Systems Lab Prof. Alex Quinn ترجمة 翻 译 idea generation computer vision natural language processing machine + human translation Products supported by human-powered systems: Google Maps Apple Maps Amazon Facebook Google Translate Bing USPS Twitter ECE Open House, 2015 34 Recap: Research Areas Software Systems Archiecture and Embedded Systems AI/Vision/ Robotics • Compilers: Eigenmann, Midkiff, Kulkarni, Siskind • • Distributed Syst./Networking/Operating Syst: Bagchi, Hu, Rao, Lin Artificial Intelligence/Machine Learning: Givan, Siskind, Kak • Human Computer Interaction: Ebert, Quinn • Dependability/Security: Ghafoor, Bagchi, Lin • Robotics/Vision: Kak, Lee, Park, Siskind • Computer Architecture: Vijaykumar, Thottethodi • Embedded Systems: Raghunathan, Lu ECE Open House, 2015 35