Optimization Of Run-time Mapping On Heterogeneous CPU / FPGA Architectures

This research investigates the problem of the optimisation of run-time task mapping on a real-time computing system CPU/FPGA (Central Processing Unit/Field-Programmable Gate Array) used to implement intimately coupled hardware and software models. The case study analyzed in this work is inspired by the avionic industry. Indeed, real-time computing systems are increasingly used in aerospace and avionic industries. In the face of power wall and real-time requirements, hardware designers are directed more and more towards reconfigurable computing with the use of heterogeneous CPU/FPGA systems. In such systems, multi-core processors (CPU) provide high computation rates while the reconfigurable logic (FPGA) offers high performance and adaptability to the application real-time constraints. However, there is a lack of CAD (Computer-Aided design) tools able to deal with the development of applications on such heterogeneous systems. This work includes the development and the comparison of efficient heuristics that focus on the static initial task mapping, the dynamic mapping of new applications at run-time, and the dynamic re-configuration to avoid the real-time constraint violation.

[1]  Bora Uçar,et al.  Task assignment in heterogeneous computing systems , 2006, J. Parallel Distributed Comput..

[2]  Emmanuel Jeannot,et al.  Optimizing performance and reliability on heterogeneous parallel systems: Approximation algorithms and heuristics , 2012, J. Parallel Distributed Comput..

[3]  Howard Jay Siegel,et al.  A dynamic matching and scheduling algorithm for heterogeneous computing systems , 1998, Proceedings Seventh Heterogeneous Computing Workshop (HCW'98).

[4]  Tarek A. El-Ghazawi,et al.  A Parallel Genetic Algorithm for Task Mapping on Parallel Machines , 1999, IPPS/SPDP Workshops.

[5]  Oscar H. Ibarra,et al.  Heuristic Algorithms for Scheduling Independent Tasks on Nonidentical Processors , 1977, JACM.

[6]  Wun-Hwa Chen,et al.  A hybrid heuristic to solve a task allocation problem , 2000, Comput. Oper. Res..

[7]  Thomas L. Casavant,et al.  A Taxonomy of Scheduling in General-Purpose Distributed Computing Systems , 1988, IEEE Trans. Software Eng..

[8]  Ronald L. Graham,et al.  Bounds on Multiprocessing Timing Anomalies , 1969, SIAM Journal of Applied Mathematics.

[9]  Christos Koulamas,et al.  A modified LPT algorithm for the two uniform parallel machine makespan minimization problem , 2009, Eur. J. Oper. Res..

[10]  Ladislau Bölöni,et al.  A Comparison of Eleven Static Heuristics for Mapping a Class of Independent Tasks onto Heterogeneous Distributed Computing Systems , 2001, J. Parallel Distributed Comput..

[11]  Hans-Ulrich Heiss,et al.  Mapping Tasks to Processors at Run-time , 1992 .

[12]  Zhongzhi Shi,et al.  A revisit of fast greedy heuristics for mapping a class of independent tasks onto heterogeneous computing systems , 2007, J. Parallel Distributed Comput..

[13]  Soonhoi Ha,et al.  A Static Scheduling Heuristic for Heterogeneous Processors , 1996, Euro-Par, Vol. II.

[14]  Anthony A. Maciejewski,et al.  Dynamically mapping tasks with priorities and multiple deadlines in a heterogeneous environment , 2007, J. Parallel Distributed Comput..

[15]  Viktor K. Prasanna,et al.  Greedy Heuristics for Resource Allocation in Dynamic Distributed Real-Time Heterogeneous Computing Systems , 2002, PDPTA.

[16]  Jean-Luc Dekeyser,et al.  A prototyping environment for high performance reconfigurable computing , 2011, 6th International Workshop on Reconfigurable Communication-Centric Systems-on-Chip (ReCoSoC).

[17]  Mahmood Fazlali,et al.  Efficient task scheduling for runtime reconfigurable systems , 2010, J. Syst. Archit..

[18]  Christos Koulamas,et al.  An improved delayed-start LPT algorithm for a partition problem on two identical parallel machines , 2008, Eur. J. Oper. Res..