Computer Engineering Research Summary (OpenHouse 2013 ...

wonderfuldistinctAI and Robotics

Oct 16, 2013 (3 years and 5 months ago)

30 views

1

ECE Open House
,
2013

Overview of Purdue

Computer
Engineering

2

ECE 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

3

ECE 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


S
trong reputation in hardware


Architecture, VLSI, Embedded Systems


C
ollaborations with sister areas/departments/centers


Communication & Signal Processing, VLSI, etc.


Computer Science Department


CERIAS (Security center), CWSA (Wireless center), CRI (High Performance
Computing)





4

ECE Open House
,
2013

Where do CE alumni go?

(in recent years)

PhD

MS

Universities
(professors)

US*

8

Oversea

4

Research Labs

8

1

Start
up

4(2 as

founders)

Large Companies

30

13

* One is a department head.

5

ECE 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

6

ECE 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/DoctoralHa
ndbook.pdf

7

ECE 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

8

ECE 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




9

ECE Open House
,
2013


ISL
(Sanjay
Rao
)


an ACL


Local Data Center

Cloud

Less

sensitive

data

frontend

Internet

(sensitive

databases)

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

10

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


sanjay@purdue.edu

11

ECE 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

12

ECE 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

13

ECE 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

14

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

15

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

16

ECE 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


17

ECE Open House
,
2013


Research topics:



Search, analyze, visualize, manipulate large data



Cloud computing services



Security



Collaboration, virtual organizations



Big Data capture, use, storage, management

Cyberinfrastructures

You can get involved in the largest project in the history of Purdue


17

NEES: Network for Earthquake Engineering Simulation

Profs Rudi Eigenmann
Saurabh

Bagchi

Collaborating with Civil Engineering, Mechanical Engineering, Engineering Education and ~20 other Universities

nees.org

18

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


19

ECE 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

20

ECE 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

21

ECE 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

Ultra
-
low voltage
energy harvesting IC

RF triggered
wakeup system

Super capacitor based high
-
efficiency
e
nergy storage system

SPI
-
SNOOPER reliable
wireless sensor node

22

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

23

ECE 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

24

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

25

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

26

ECE 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

27

ECE 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

28

ECE 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

29

ECE 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

30

ECE 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

31

ECE 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

R

Node

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