Escolar Documentos
Profissional Documentos
Cultura Documentos
Ada Gavrilovska, Santosh Pande, Hsien-Hsin Lee, Matthew Wolf, Russ Clark, Karsten Schwan, Calton Pu, Sudhakar Yalamanchili CERCS Georgia Institute of Technology
History
Center for Experimental Research in Computer Systems (CERCS)
School of Computing Science and School of Electrical and Computer Engineering at GT Focused on High Performance Computing Enterprise Systems Pervasive and Embedded Systems
Multicore curriculum
www.cercs.gatech.edu/multicore
The computing industry has an ever-increasing demand for scientists, engineers, and practitioners capable of designing and developing next generation applications, systems software, and platforms for the projected tens of billions of embedded devices of the future.
Universities and academic institutions must respond to this trend by ensuring the creation of adequate workforce, equipped with the required knowledge and skillsets, as well as by graduating Computer Science and Engineering students capable of competing for these types of employment opportunities
Engage broad set of faculty, across Schools in the College of Computing and School of Electrical and Computer Engineering
GT Approach
Modules
Modules and projects throughout CS and ECE curricula
New courses
Generate Interest
Competition
Leverage content developed for specialized Georgia Tech MS in Embedded Computing at Korea University
Course Modules
Bring Embedded IA to curriculum
vs. bring IA to embedded curriculum
Target Courses
CS 2200 Systems and Networks CS 3210 Design of Operating Systems CS 4210 Advanced Operating Systems (UG) CS 6210 Advanced Operating Systems (Grad) CS 8803GOS Graduate Introduction to Operating Systems CS 6235 Real-Time Systems (Grad) CS 6365 Enterprise Systems CS 6675 Advanced Internet Applications ECE 3055 Computer Architecture and OS ECE 4893 Multicore and GPU Programming for Video Games ECE 6100 Advanced Computer Architecture CS 8803 Languages and Compilers for Embedded Systems CS 4803 Mobile Applications and Services Possibility of exposure to 300+/yr students
Target Environment
Intel Atom
Maintain familiar toolchain, port applications/software
Platforms
SDKs (multiple generations)
notebooks (Lenovo S10, Dell minis) Linux flavors: including Moblin, MeeGo Android Virtualized infrastructure
MeeGo and Moblin VMs on Xen
Leveraging
edc.intel.com content and Intel training modules MeeGo and Moblin projects and applications
Sample Projects
Depending on course: from 2-3 week to semester long individual, or in groups of up to 3 required for the entire class power measurement, power modeling and energy management performance analysis of various OS schedulers for Moblin performance analysis of paravirutalized Moblin for Xen distributed object sharing infrastructure with support for caching, replication and dynamic discovery analysis of virtualized wireless networking stacks middleware for aware-home environment drivers for multi-touch or location-based capabilities smart drivers for IPTV applications
Sample Projects
Location-based
Virtual GPS driver interface to GPS interface, vs. WhereAmI.com vs. markers Breadcrums track my way through Klaus of JF3 location driver, tracking, wireless signal detection
Distributed services
Distributed Chimera DHT, in-memory key-value store Redis caching, replication, dynamic recovery, consistency nanoclouds + exaclouds: use battery status or wireless strength to determine whether to go to Flickr
Resource management
Compare and tune Linux schedulers for embedded workload mix and metric Performance, Power, Platform Efficiency
Graduate students to devise this tool based on compiler, profiling technology to be released in open source Undergraduate students will serve as early users (beta version) of this tool, will port applications using it and give feedback for feature enhancements Alpha version of this tool under progress
16
Program Understanding Source Call Tree Sequence Function Search Call Graph Static Dynami c Properties
Function Understanding
Memory Locality Spatial Temporal Neighbor Affinity View CFG Alias Analysis
Metrics
No of calls
Frame rates Hot-spots Variance
Performance Counters
Throughput
0
1 11 21 31 41 51 61 71 81 91 101 111
Power consumption
e.g., finish the computation as early as possible, let the system enter the sleep mode Minimize C-state transition
Curricular integration
To be integrated with CS 8803 Optimizations for Embedded Systems graduate level course Use of LLVM compiler infrastructure, profiling and compression techniques, profile representation structures for efficient querying
Practical component:
based on Android and MeeGo on Atom platforms state-of-the-art video decoders power breakdown per algorithm components performance/power optimization
Programming Competition
MeeGo/Atom theme Modeled after Yahoo! HackFest, successfully organized at GT for several years Entry through courses
Students are building towards contest entry from beginning of semester e.g., Mobile Applications and Services, Design of Operating Systems, Embedded Systems and Software
Open to others
Crash course module(s) on day 1 and 2 Competition on final day