Efficient task scheduling for runtime reconfigurable systems

Recent research indicates the promising performance of employing reconfigurable systems to accelerate multimedia and communication applications. Nonetheless, they are yet to be widely adopted. One reason is the lack of efficient operating system support for these platforms. In this paper, we address the problem of runtime task scheduling as a main part of the operating systems. To do so, a new task replacement parameter, called Time-Improvement, is proposed for compiler assisted scheduling algorithms. In contrast with most related approach, we validate our approach using real application workload obtained from an application for multimedia test remotely taken by students. The proposed online task scheduling algorithm outperforms previous algorithms and accelerates task execution from 4% up to 20%.

[1]  Marco Caccamo,et al.  Real-Time Management of Hardware and Software Tasks for FPGA-based Embedded Systems , 2007, IEEE Transactions on Computers.

[2]  Herbert Walder Non-preemptive Multitasking on FPGAs: Task Placement and Footprint Transform , 2002 .

[3]  Zonghua Gu,et al.  Optimal Static Task Scheduling on Reconfigurable Hardware Devices Using Model-Checking , 2007, 13th IEEE Real Time and Embedded Technology and Applications Symposium (RTAS'07).

[4]  Stamatis Vassiliadis,et al.  DWARV: Delftworkbench Automated Reconfigurable VHDL Generator , 2007, 2007 International Conference on Field Programmable Logic and Applications.

[5]  Miodrag Potkonjak,et al.  MediaBench: a tool for evaluating and synthesizing multimedia and communications systems , 1997, Proceedings of 30th Annual International Symposium on Microarchitecture.

[6]  Jürgen Teich,et al.  ReCoNodes - Optimization Methods for Module Scheduling and Placement on Reconfigurable Hardware Devices , 2010, Dynamically Reconfigurable Systems.

[7]  Tarek A. El-Ghazawi,et al.  Virtual Configuration Management: A Technique for Partial Runtime Reconfiguration , 2009, IEEE Transactions on Computers.

[8]  Stamatis Vassiliadis,et al.  The MOLEN polymorphic processor , 2004, IEEE Transactions on Computers.

[9]  Rudy Lauwereins,et al.  Design, Automation, and Test in Europe , 2008 .

[10]  Marco Platzner,et al.  ReconOS: An Operating System for Dynamically Reconfigurable Hardware , 2010, Dynamically Reconfigurable Systems.

[11]  Markus Rullmann,et al.  A cost model for partial dynamic reconfiguration , 2008, 2008 International Conference on Embedded Computer Systems: Architectures, Modeling, and Simulation.

[12]  Ludovic Righetti,et al.  Operating system support for interface virtualisation of reconfigurable coprocessors , 2004, Proceedings Design, Automation and Test in Europe Conference and Exhibition.

[13]  Richard M. Stallman,et al.  GNU Compiler Collection Internals , 2011 .

[14]  Katherine Compton,et al.  SPY vs. SLY: Run-time thread-scheduler aware reconfigurable hardware allocators , 2009, 2009 International Conference on Field-Programmable Technology.

[15]  Hamid Mushtaq,et al.  Runtime Multitasking Support on Reconfigurable Accelerators , 2010 .

[16]  Roberto Cordone,et al.  Partitioning and Scheduling of Task Graphs on Partially Dynamically Reconfigurable FPGAs , 2009, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[17]  David A. Kearney,et al.  ReConfigME: a detailed implementation of an operating system for reconfigurable computing , 2006, Proceedings 20th IEEE International Parallel & Distributed Processing Symposium.

[18]  Katherine Compton,et al.  An execution environment for reconfigurable computing , 2005, 13th Annual IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM'05).

[19]  Robert W. Brodersen,et al.  Borph: an operating system for fpga-based reconfigurable computers , 2007 .

[20]  Mahmood Fazlali,et al.  Rec-Bench: A tool to create benchmark for reconfigurable computers , 2010, 2010 VI Southern Programmable Logic Conference (SPL).

[21]  David A. Kearney,et al.  Issues in Operating Systems for Reconfigurable Computing , 2002 .

[22]  Carlos González,et al.  A task graph execution manager for reconfigurable multi-tasking systems , 2010, Microprocess. Microsystems.

[23]  Diederik Verkest,et al.  Operating-system controlled network on chip , 2004, Proceedings. 41st Design Automation Conference, 2004..

[24]  Jürgen Teich,et al.  Task scheduling for heterogeneous reconfigurable computers , 2004, Proceedings. SBCCI 2004. 17th Symposium on Integrated Circuits and Systems Design (IEEE Cat. No.04TH8784).

[25]  Mahmood Fazlali,et al.  Data path Configuration Time Reduction for Run-time Reconfigurable Systems , 2009, ERSA.

[26]  Marco Platzner,et al.  Cooperative multithreading in dynamically reconfigurable systems , 2009, 2009 International Conference on Field Programmable Logic and Applications.

[27]  Mahmood Fazlali,et al.  A Modified Merging Approach for Datapath Configuration Time Reduction , 2010, ARC.

[28]  Carlos González,et al.  A Hardware Task-Graph Scheduler for Reconfigurable Multi-tasking Systems , 2008, 2008 International Conference on Reconfigurable Computing and FPGAs.

[29]  Marco Platzner,et al.  Online scheduling and placement of real-time tasks to partially reconfigurable devices , 2003, RTSS 2003. 24th IEEE Real-Time Systems Symposium, 2003.

[30]  Zexin Pan,et al.  Hardware Supported Task Scheduling on Dynamically Reconfigurable SoC Architectures , 2008, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[31]  Koen Bertels,et al.  Toward a runtime system for reconfigurable computers: A virtualization approach , 2009, 2009 Design, Automation & Test in Europe Conference & Exhibition.

[32]  Francky Catthoor,et al.  Efficiently scheduling runtime reconfigurations , 2008, TODE.

[33]  Ying Wang,et al.  Online Hybrid Task Scheduling in Reconfigurable Systems , 2007, 2007 11th International Conference on Computer Supported Cooperative Work in Design.

[34]  Georgi Gaydadjiev,et al.  Online Hardware Task Scheduling and Placement Algorithm on Partially Reconfigurable Devices , 2008, ARC.

[35]  Muhammad Shafique,et al.  MinDeg: a performance-guided replacement policy for run-time reconfigurable accelerators , 2009, CODES+ISSS '09.

[36]  Yong Dou,et al.  Loop Kernel Pipelining Mapping onto Coarse-Grained Reconfigurable Architecture for Data-Intensive Applications , 2009, J. Softw..

[37]  Vlad Mihai Sima,et al.  Compiler assisted runtime task scheduling on a reconfigurable computer , 2009, 2009 International Conference on Field Programmable Logic and Applications.

[38]  Koen Bertels,et al.  Interfacing operating systems and polymorphic computing platforms based on the MOLEN programming paradigm , 2010, ISCA'10.

[39]  Marco Platzner,et al.  Dynamically Reconfigurable Systems - Architectures, Design Methods and Applications , 2010, Dynamically Reconfigurable Systems.

[40]  Ranga Vemuri,et al.  An Integrated Online Scheduling and Placement Methodology , 2004, FPL.

[41]  Robert W. Brodersen,et al.  A unified hardware/software runtime environment for FPGA-based reconfigurable computers using BORPH , 2006, Proceedings of the 4th International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS '06).

[42]  Scott Hauck,et al.  Reconfigurable computing: a survey of systems and software , 2002, CSUR.