CoDeR-MP SSF meeting, May 3, 2011, Uppsala Agenda Overview (Coffee will be served) Introduction, Olof Lindgren CoDeR-MP: Goals, progress and vision, Wang Yi Discussion Hard safety-critical real-time applications CoDeR-MP solved the 37-year open problem! Guan Nan Coloring the cache to isolate multiple applications, Wang Yi Break Soft high-performance real-time applications Performance profiling and modeling, David Eklöv & Erik Hagersten The multi-core locking problem, Pan Xiaoyue & Bengt Jonsson Industrial applications: real-time signal processing Real-time model-based estimation, Alexander Medvedev, UU SAAB’s perspective on multi-core, Mats Ekman & Björn Holmberg, SAAB Lunch & Discussion
CoDeR-MP Computationally Demanding Real-Time Applications on Multicore Platforms OUTLINE Why CoDeR-MP Project Plan Structure Goals Progress Main achievements Demos Vision
The free lunch is over & Multicores are coming ! Year
CPU L1 CPU L1 CPU L1 CPU L1 CPU L1 CPU L1 CPU L1 CPU L1 Typical Multicore Architecture L2 Cache Off-chip memory 5
Theoretically with multicore, you may get: Higher Performance Increasing the cores -- unlimited computing power ! Lower Power Consumption Increasing the cores, decreasing the clock frequency Keep the “same performance” using ¼ of the energy 6 This sounds great for embedded & real-time applications!
CPU L1 CPU L1 CPU L1 CPU L1 CPU L1 CPU L1 CPU L1 CPU L1 Shared Resources Bandwidth Real-Time Applications on Multicores? L2 Cache Off-chip memory Problems: -- Cache contention -- Bus interference -- Multiprocessor scheduling -- Spinlocks/Queuing -- Cheap/expensive Synchronization 7
CoDeR-MP addressing the challenges: Migrating legacy software to multicore Sequential code parallelization Performance issues – memory problems Synchronization/locking problem Developing new real-time software on multicore High-performance applications: “fast” – real-time applications Predictable real-time applications with guarantees: “correct” and “deterministic” Driven by Industrial Applications
Real-Time Tracking with parallel particle filter – SAAB
Real-Time Control – ABB Robotics ABCD CommandsHigh-level instructions Precise moves Requests Welding program IRC5 robot controller Mixed Hard and Soft Real-Time Tasks 20% hard real-time tasks Main concerns: Isolation between hard & soft tasks: “fire walls” Real-time guarantee for the 20% “super” RT tasks Migration to multicore?
Goals of CoDeR-MP New techniques for High-performance Real-Time applications & Predictable Real Time applications on multi-core processors Mixed applications on the same multi-core chip 20% Hard RT 60% Soft RT 20% Others
Project Plan Task 1 (Demonstrators) Migration of IRC5 robot controller onto multicore platform ( guidelines and tools for performance and real-time guarantees) Multicore implementation of parallel alg. for ground target tracking Task 2 (Application diagnostics for migration) Methods and tools for modeling, adaptation, integration and evaluation of design alternatives Task 3 (Application parallelization) Parallel algorithms for control and signal processing Task 4 (Resource allocation for real-time/”predictable”) Multicore scheduling (processor cores and caches) Task 5 (Resource allocation for performance/”fast”) Resource modeling and management
Consortium/Senior Members SAAB SAAB Systems, Mats Ekman (SAAB Combitech, Björn Holmberg) ABB Corporate Research, Jan Höglund ABB Robotics, Peter Ericsson/Roger Kulläng Uppsala University Automated Control, Alexander Medvedev Computer Architectures, Erik Hagersten & David Black-Schaffer Software Technology, Bengt Jonsson Embedded Systems, Wang Yi, Project leader
Current Ph.D. Students David Eklöv Guan Nan Pan Xiaoyue Andreas Sandberg Andreas Sembrant Olov Rosen Jonatan Liden Zhang Yi David Black-Schaffer (now assistant professor) Previous Post Doc Fellow
CoDeR-MP: Project Structure Techniques/tools for real-time guarantees Wang et al Techniques/tools for performance guarantees Erik, Bengt et al Industrial Applications: real-time signal processing Alexander and Mats
Main achievements Industrial applications SAAB shows great interests in using the parallel signal processing algorithms developed within CoDeR-MP for real-time tracking ABB robotics shows great interests of using the CoDeR-MP performance modeling/profiling tools Academic research 20 (peer-reviewed) papers on good/top conferences 2 best paper awards: IEEE RTSS 2009 and HiPEAC best paper nominations (IEEE RTSS09, IEEE RTSS10, IEEE RTAS10, IEEE RTAS11 & HiPEAC11) Solved a 37-year open problem for multiprocessor scheduling Successful FP 7 collaboration, 4 proposals! Wang, CERTAINTY (Mixed embedded applications on multicores), likely to be funded Erik (passed the threshold, cliff-hanger) Wang, Encore (passed the threshold) Bengt (passed the threshold)
Demonstrators (in progress) Real-Time Tracking Running on “recorded data” Migration of legacy code Prototype tools for performance analysis Cache coloring on LINUX for real-time guarantee
VISION
Robot Contriller Hard 20% Real-Time Soft Real-Time Non Real-Time: House Keeping We must allocate “resources”: cores, caches We must isolate the different applications
Platform Hardware Resources: Cores, Caches, Memmory Bandwidth … Application Hard real-time, Software real-time, Others ?
Platform Hardware Resources: Cores, Caches, Memmory Bandwidth … Resource Virtualization Hard 20% Real-Time Soft Real-Time Non Real-Time: House Keeping Application Hard real-time, Software real-time, Others Resource Reservation
Platform Hardware Resources: Cores, Caches, Memmory Bandwidth … Hard 20% Real-Time Soft Real-Time Non Real-Time: House Keeping Application Hard real-time, Software real-time, Others Server 1 … … Server N Application Mapping Resource Partition
Platform Hardware Resources: Cores, Caches, Memmory Bandwidth … Hard 20% Real-Time Soft Real-Time Non Real-Time: House Keeping Application Hard real-time, Software real-time, Others Server 1 … … Server N Application Mapping Resource Partition CoDeR-MP tools