Improving the design flow for parallel and heterogeneous architectures running real-time applications: The PHARAON FP7 project

In this article, we present the work-in-progress of the EU FP7 PHARAON project, started in September 2011. The first objective of the project is the development of new techniques and tools capable to guide and assist the designer in the development process, from UML specifications to implementation and debug on multicore platform. This tool chain will offer the possibility to propose and implement several parallelization strategies and drive the designer into implementation steps. The second objective of the project is to develop monitoring and control techniques in the middleware of the system capable to automatically adapt platform services to applications requirements and therefore reduce power consumption in a transparent manner for applications.

[1]  Eugenio Villar,et al.  Automatic synthesis from UML/MARTE models using channel semantics , 2012, ACES-MB '12.

[2]  Marc Pouzet,et al.  A modular memory optimization for synchronous data-flow languages: application to arrays in a lustre compiler , 2012, LCTES 2012.

[3]  Eugenio Villar,et al.  System synthesis from UML/MARTE models: The PHARAON approach , 2013, Proceedings of the 2013 Electronic System Level Synthesis Conference (ESLsyn).

[4]  H. Corporaal,et al.  Fast Multi-Dimension Multi-Choice Knapsack Heuristic for MP-SoC Run-Time Management , 2006, 2006 International Symposium on System-on-Chip.

[5]  Avi Mendelson,et al.  The TERAFLUX Project: Exploiting the DataFlow Paradigm in Next Generation Teradevices , 2013, 2013 Euromicro Conference on Digital System Design.

[6]  Dimitrios Kritharidis,et al.  Compiling Scilab to high performance embedded multicore systems , 2013, Microprocess. Microsystems.

[7]  Chantal Ykman-Couvreur,et al.  Fast multidimension multichoice knapsack heuristic for MP-SoC runtime management , 2011, TECS.

[8]  Sungwon Kang,et al.  Transformation Rules for Synthesis of UML Activity Diagram from Scenario-Based Specification , 2010, 2010 IEEE 34th Annual Computer Software and Applications Conference.

[9]  Yves Vanderperren,et al.  UML and model-driven development for SoC design , 2006, Proceedings of the 4th International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS '06).

[10]  Theodore P. Baker,et al.  An analysis of EDF schedulability on a multiprocessor , 2005, IEEE Transactions on Parallel and Distributed Systems.

[11]  Viktor K. Prasanna,et al.  Power-aware resource allocation for independent tasks in heterogeneous real-time systems , 2002, Ninth International Conference on Parallel and Distributed Systems, 2002. Proceedings..

[12]  Luciano Lavagno,et al.  HEAP: A Highly Efficient Adaptive Multi-processor Framework , 2012, DSD.

[13]  Niraj K. Jha,et al.  Static and dynamic variable voltage scheduling algorithms for real-time heterogeneous distributed embedded systems , 2002, Proceedings of ASP-DAC/VLSI Design 2002. 7th Asia and South Pacific Design Automation Conference and 15h International Conference on VLSI Design.

[14]  Martin Palkovic,et al.  A flexible platform architecture for Gbps wireless communication , 2012, 2012 International Symposium on System on Chip (SoC).

[15]  Rami G. Melhem,et al.  Comparison of global and partitioning schemes for scheduling rate monotonic tasks on a multiprocessor , 1998, Proceeding. 10th EUROMICRO Workshop on Real-Time Systems (Cat. No.98EX168).

[16]  Eugenio Villar,et al.  AUTOMATIC CONCURRENCY GENERATION THROUGH COMMUNICATION DATA SPLITTING BASED ON UML / MARTE MODELS , 2013 .

[17]  Tei-Wei Kuo,et al.  Energy-Efficient Real-Time Task Scheduling in Multiprocessor DVS Systems , 2007, 2007 Asia and South Pacific Design Automation Conference.

[18]  Francisco Moya,et al.  A comprehensive integration infrastructure for embedded system design , 2012, Microprocess. Microsystems.

[19]  Chung Laung Liu,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[20]  Eugenio Villar,et al.  UML / MARTE methodology for high-level system estimation and optimal synthesis , 2012 .

[21]  E. Rijpkema,et al.  Compaan: deriving process networks from Matlab for embedded signal processing architectures , 2000, Proceedings of the Eighth International Workshop on Hardware/Software Codesign. CODES 2000 (IEEE Cat. No.00TH8518).

[22]  Petru Eles,et al.  Energy-efficient mapping and scheduling for DVS enabled distributed embedded systems , 2002, Proceedings 2002 Design, Automation and Test in Europe Conference and Exhibition.

[23]  Marc Pouzet,et al.  Programming parallelism with futures in lustre , 2012, EMSOFT '12.

[24]  Tak Wah Lam,et al.  Non-migratory online deadline scheduling on multiprocessors , 2004, SODA '04.

[25]  Paolo Meloni,et al.  ASAM: Automatic architecture synthesis and application mapping , 2013, Microprocess. Microsystems.

[26]  Alejandro Nicolas,et al.  Automatic deployment of component-based embedded systems from UML/MARTE models using MCAPI , 2014, Design of Circuits and Integrated Systems.

[27]  Albert Cohen,et al.  Correct and Efficient Bounded FIFO Queues , 2013, 2013 25th International Symposium on Computer Architecture and High Performance Computing.

[28]  Klaus D. Müller-Glaser,et al.  MORPHEUS: Heterogeneous Reconfigurable Computing , 2007, 2007 International Conference on Field Programmable Logic and Applications.

[29]  R. Govindarajan,et al.  Automatic compilation of MATLAB programs for synergistic execution on heterogeneous processors , 2011, PLDI '11.

[30]  Chantal Ykman-Couvreur,et al.  The COMPLEX reference framework for HW/SW co-design and power management supporting platform-based design-space exploration , 2013, Microprocess. Microsystems.

[31]  Anastasia Braginsky A Lock-Free , 2012 .

[32]  Gerhard Fohler,et al.  Issues in the static allocation and scheduling of complex periodic tasks , 1993 .

[33]  D. Chen,et al.  Task scheduling and voltage selection for energy minimization , 2002, Proceedings 2002 Design Automation Conference (IEEE Cat. No.02CH37324).

[34]  B. Ramakrishna Rau,et al.  PICO: Automatically Designing Custom Computers , 2002, Computer.

[35]  David Blaauw,et al.  Reliability modeling and management in dynamic microprocessor-based systems , 2006, 2006 43rd ACM/IEEE Design Automation Conference.

[36]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[37]  Luciano Lavagno,et al.  Dynamic Trace-Based Data Dependency Analysis for Parallelization of C Programs , 2012, 2012 IEEE 12th International Working Conference on Source Code Analysis and Manipulation.

[38]  William Thies,et al.  A Practical Approach to Exploiting Coarse-Grained Pipeline Parallelism in C Programs , 2007, 40th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 2007).

[39]  Albert Cohen,et al.  Correct and efficient work-stealing for weak memory models , 2013, PPoPP '13.

[40]  Luca Benini,et al.  A survey of design techniques for system-level dynamic power management , 2000, IEEE Trans. Very Large Scale Integr. Syst..

[41]  C. Ykman-Couvreur,et al.  Parallel paradigms and run-time management techniques for many-core architectures: The 2PARMA approach , 2011, 2011 9th IEEE International Conference on Industrial Informatics.

[42]  Jari Nurmi,et al.  CRISP: Cutting Edge Reconfigurable ICs for Stream Processing , 2011 .

[43]  Sang Hyuk Son,et al.  Assigning Real-Time Tasks to Homogeneous Multiprocessor Systems , 1994 .

[44]  Albert Cohen,et al.  Erbium: a deterministic, concurrent intermediate representation to map data-flow tasks to scalable, persistent streaming processes , 2010, CASES '10.

[45]  Margaret Martonosi,et al.  An Analysis of Efficient Multi-Core Global Power Management Policies: Maximizing Performance for a Given Power Budget , 2006, 2006 39th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO'06).

[46]  Eugenio Villar,et al.  Automatic synthesis of embedded SW Communications from UML/marte models supporting memory space separation , 2012 .

[47]  Patrick P. C. Lee,et al.  A lock-free, cache-efficient shared ring buffer for multi-core architectures , 2009, ANCS '09.

[48]  José Pineda de Gyvez,et al.  Fuzzy-Controlled Voltage Scaling Based on Supply Current Tracking , 2013, IEEE Transactions on Computers.

[49]  Albert Cohen,et al.  OpenStream: Expressiveness and data-flow compilation of OpenMP streaming programs , 2012, TACO.

[50]  Dongkun Shin,et al.  Power-aware scheduling of conditional task graphs in real-time multiprocessor systems , 2003, Proceedings of the 2003 International Symposium on Low Power Electronics and Design, 2003. ISLPED '03..

[51]  A. Sinha,et al.  JouleTrack-a Web based tool for software energy profiling , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[52]  Albert Cohen,et al.  A stream-computing extension to OpenMP , 2011, HiPEAC.