1 ECE Open House, 2013 Overview of Purdue Computer Engineering.

31
1 ECE Open House, 2013 Overview of Purdue Computer Engineering

Transcript of 1 ECE Open House, 2013 Overview of Purdue Computer Engineering.

1ECE 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