1 ECE Open House, 2013 Overview of Purdue Computer Engineering.
-
Upload
melanie-edith-preston -
Category
Documents
-
view
215 -
download
1
Transcript of 1 ECE Open House, 2013 Overview of Purdue Computer Engineering.
2ECE Open House, 2013
Computer Engineering (CE) at Purdue• 20+ 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– AI, Robotics, and Visualization
• Artificial Intelligence and Machine Learning• Graphics and Visualization• Robotics, Vision and Haptics
3ECE Open House, 2013
Why Purdue Computer Engineering?• Consistently ranked in the top 11 (US News
Rankings)– 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), CWSA (Wireless center), CRI
(High Performance Computing)
4ECE Open House, 2013
Where do CE alumni go?(in recent years)
PhD MS
Universities (professors)
US* 8
Oversea 4
Research Labs 8 1
Startup 4(2 as founders)
Large Companies 30 13
* One is a department head.
5ECE Open House, 2013
CE Positions
Universities Research Labs Companies
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
Korea U MITRE VMWare Schlumberger
Sogang U Adobe DE Shaw
Bangladesh U Amazon Accenture
Cal Poly Saavn Arctic Sand
JP Chase SensorHound
6ECE Open House, 2013
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/
DoctoralHandbook.pdf
7ECE Open House, 2013
Research Projects Overview
• Compilers: Eigenmann, Midkiff, Kulkarni• Distributed Syst./Networking/Operating Syst: Bagchi,
Hu, Rao• Dependability/Security: Ghafoor, Bagchi• Computer Architecture: Vijaykumar, Pai, Thottethodi• Embedded Systems: Raghunathan, Lu• Artificial Intelligence/Machine Learning: Givan,
Siskind• Graphics/Visualization: Ebert, Elmqvist• Robotics/Vision/Haptics: Kak, Lee, Park, Tan
8ECE Open House, 2013
Internet Systems Lab (Sanjay Rao) Current Research Focus: Cloud Computing
8
Many Opportunities Elasticity, Cost-savings, Geo-
distribution
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
9ECE Open House, 2013
ISL (Sanjay Rao)
an ACL
Local Data Center
CloudLess sensitive data frontend
Internet
(sensitivedatabases)
Hybrid Cloud Architectures Geo-distributed data storage Balancing consistency, availability, performance
• 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
10ECE Open House, 2013
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/– [email protected]
11ECE Open House, 2013
Dependable Computing Systems Research (DCSL)Prof. Saurabh Bagchi
• URL: www.ece.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
12ECE Open House, 2013
Research Projects in DCSL• Framework for distributed intrusion tolerant system
– How to build an adaptive infrastructure for diagnosing and recovering from failures in a distributed platform?
– Application: Web services, DoD missile defense system
D1
D2
D3
D4
• Distributed IDS, based on Bayesian Network – protecting Northrop Grumman’s networks
13ECE Open House, 2013
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 embedded wireless networks– How to build dependable network out of inherently unreliable
components with resource constraints?
– Application: Smart power grid monitoring (startup company: SensorHound Innovations), infrastructureless wireless networks, say in battlefields or in disaster relief
14ECE Open House, 2013
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)
15ECE Open House, 2013
Distributed Systems and Networking Lab(Prof. Y. Charlie Hu) (2/2)
• Data Center Networking– 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)
16ECE Open House, 2013
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
17ECE Open House, 2013
Research topics:• Search, analyze, visualize, manipulate large data• Cloud computing services• Security• Collaboration, virtual organizations• Big Data capture, use, storage, management
CyberinfrastructuresYou can get involved in the largest project in the history of Purdue
17
NEES: Network for Earthquake Engineering Simulation
Profs Rudi Eigenmann Saurabh BagchiCollaborating with Civil Engineering, Mechanical Engineering, Engineering Education and ~20 other Universities
nees.org
18ECE Open House, 2013
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?
19ECE Open House, 2013
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.
data sources distributed computers
Mb/s
Mb/s
MB
b/s
b/s
b
storage
20ECE Open House, 2013
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
BMW 745i
71 embedded CPUs
2 million lines of code
21ECE Open House, 2013
ESL: HW and SW Systems Built By Us
AVEKSHA system for non-intrusive
debugging of embedded systems
Heliomote solar-powered sensor
node
I/O Pads
PowerConverter
MPPTracking Unit
On-chipMOS Caps
Ultra-low voltage energy
harvesting IC
RF triggered wakeup system
Super capacitor based high-efficiency energy
storage system
SPI-SNOOPER reliable wireless
sensor node
22ECE Open House, 2013
• 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
Embedded Systems Lab (ESL)
23ECE Open House, 2013
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
24ECE Open House, 2013
PLCL Projects• Run-time systems for parallelizing irregular (pointer-based)
applications– Developing novel load balancing strategies
– Automatic tuning of run-time behavior
• How many threads should you use? How do you adjust this at run-time?
• What data structures should you use for a particular program?
• Performance analysis of parallel programs– How much parallelism is there? Where are the bottlenecks? How should we
address them?
• Languages and compilers for distributed systems– Goal: take a single, sequential application and automatically distribute it to
multiple servers on the cloud (joint work with Prof. Lu)
• What components should be distributed? Where should they go?
• How do you minimize computation time? Energy usage? Bandwidth cost?
25ECE Open House, 2013
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)
26ECE Open House, 2013
Auto-tuning Compilers: Turning computer applications into life-long learners
(Prof. Rudi Eigenmann, Prof. Sam Midkiff)
Write a program
Compile it
Run/use it
Today:
Tomorrow:Write a program
Run/use program as it evolves
Compile, try new options automatically
Challenges:• Navigate a huge space of
optimization options• Dynamically plug-in new code• Ensure the evolving program
improves
Goals:• Programs run “optimally”• Programs improve with age• Software evolves
27ECE Open House, 2013
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
28ECE Open House, 2013
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
29ECE Open House, 2013
Prof. Vijay Pai’s Research (1/2)
– Focus on network interface
– Use parallel cores and explicitly-partitioned memory system for power and performance
– Application-level offloading: intrusion detection, XML, other computationally intensive tasks on network stream
Instruction Memory
I-Cache 0
CPU 0
(P+4)x(S) Crossbar (32-bit)
Read
Write
TX
RX
MAC Assists
PCI Bus
DMA Assists
DRAM
Ext. Mem. Interface
(Off-Chip)
Scratchpad 0 Scratchpad 1 S-pad S-1
CPU P-1
I-Cache 1 I-Cache P-1
CPU 1
• Hardware & Software Design for 10 Gigabit Network Servers
30ECE Open House, 2013
Prof. Vijay Pai’s Research (2/2)
• Resource-Efficient Storage Server– Target application: High-bitrate video-on-demand– Explore unconventional OS strategies for reliable real-time
performance
• Programming for Parallel Network Services (with Prof. Midkiff)– Complex systems work through flow-graph models, but
conventional programming languages force linearization– Common parallel models break encapsulation– Instead: explicitly represent concurrency and communication
between program components
31ECE Open House, 2013
On-Chip & Off-chip Interconnection Networks(Prof. Mithuna Thottethodi)
• Computation Issues:– Architecture support for
management of large scale systems– Memory hierarchy, interaction with
application
RNode R
Node
Node
Node
Router
CPUs
Mem
• Communication Issues:– Congestion control for
communication intensive applications
– Routing, switching, & arbitration with worst-case guarantees
• Other Projects: - Storage area networks - Architectures for biochemical analysis