Abstract
General purpose computers are moving towards employing reconfigurable fabrics in order to achieve higher performance. In such systems, serving several applications at runtime is a challenging problem in which the reconfigurable fabric has to be shared among competing tasks. Because of the inherent complexity of mapping the computation intensive tasks into the FPGA, a comprehensive runtime system is required to address all the conflicting issues between competing applications' demands and to keep the system performance at the required level. In this paper, we present a runtime environment wherein a number of components introduced to handle the task assignment problem in a very low overhead manner. This runtime system completely virtualizes the underlying hardware and thus relieve the program developers from the difficulties of hardware design issues. More specifically, we discuss the design and implementation of the scheduler as the fundamental component as well as the profiler and the runtime binding mechanism in our runtime system.
- http://www.hartes.org/, 2010.Google Scholar
- http://euler.slu.edu/~fritts/mediabench, 2010.Google Scholar
- http://www.coremark.org/, 2010.Google Scholar
- http://www.eembc.org/, 2010.Google Scholar
- M. Arnold and B. G. Ryder. A framework for reducing the cost of instrumented code. ACM SIGPLAN Notices, Vol 36, No. 5, pages 168--179, 2001. Google ScholarDigital Library
- C. Augonnet, S. Thibault, R. Namyst, and P. Wacrenier. Starpu: A unified platform for task scheduling on heterogeneous multicore architectures. In 15th International Euro-Par Conference, pages 863--874. Springer, 2009. Google ScholarDigital Library
- G. Barnett. Cpu scheduling simulator. cpuss.codeplex.com, 2009.Google Scholar
- N. Een and N. Sorensson. An extensible sat-solver. In Theory and Applications of Satisfiability Testing, pages 333--336, 2004.Google ScholarCross Ref
- W. Fu and K. Compton. An execution environment for reconfigurable computing. In 13th Annual IEEE Symposium on Field-Programmable Custom Computing Machines, 2005. FCCM 2005, pages 149--158, 2005. Google ScholarDigital Library
- S. Huang, A. Hormati, D. Bacon, and R. Rabbah. Liquid metal: Object-oriented programming across the hardware/software boundary. In Proceedings of the 22nd European conference on Object-Oriented Programming, pages 76--103. Springer-Verlag, 2008. Google ScholarDigital Library
- G. Hunt,, G. Hunt, and D. Brubacher. Detours: Binary interception of win32 functions. In In Proceedings of the 3rd USENIX Windows NT Symposium, pages 135--143, 1998. Google ScholarDigital Library
- J. Kelm and S. Lumetta. Hybridos: Runtime support for reconfigurable accelerators. In Proceedings of the 16th International ACM/SIGDA Symposium on Field Programmable Gate Arrays, pages 212--221. ACM, 2008. Google ScholarDigital Library
- E. Lubbers and M. Platzner. Reconos: An operating system for dynamically reconfigurable hardware. Dynamically Reconfigurable Systems, pages 269--290, 2010.Google ScholarCross Ref
- K. Olukotun et al. Towards pervasive parallelism. In Barcelona Multicore Workshop (BMW2008), Jun 2008.Google Scholar
- E. Panainte, K. Bertels, and S. Vassiliadis. The Molen compiler for reconfigurable processors. ACM Transactions on Embedded Computing Systems (TECS), 6(1):6, 2007. Google ScholarDigital Library
- M. Sabeghi and K. Bertels. Toward a runtime system for reconfigurable computers: A virtualization approach. In Design, Automation and Test in Europe (DATE09), April 2009. Google ScholarDigital Library
- M. Sabeghi and K. Bertels. Interfacing operating systems and polymorphic computing platforms based on the molen programming paradigm. In Sixth Annual Workshop on the Interaction between Operating Systems and Computer Architecture, June 2010. Google ScholarDigital Library
- M. Sabeghi, V. Sima, and K. Bertels. Compiler assisted runtime task scheduling on a reconfigurable computer. In 19th International Conference on Field Programmable Logic and Applications (FPL09), August 2009.Google ScholarCross Ref
- H. So and R. Brodersen. A unified hardware/software runtime environment for fpga-based reconfigurable computers using borph. ACM Transactions on Embedded Computing Systems (TECS), 7(2):14, 2008. Google ScholarDigital Library
- S. Vassiliadis, S. Wong, G. Gaydadjiev, K. Bertels, G. Kuzmanov, and E. M. Panainte. The molen polymorphic processor. IEEE Transactions on Computers, Vol 53, No. 11, pages 1363--1375, 2004. Google ScholarDigital Library
Index Terms
- Runtime multitasking support on polymorphic platforms
Recommendations
Interfacing operating systems and polymorphic computing platforms based on the MOLEN programming paradigm
ISCA'10: Proceedings of the 2010 international conference on Computer ArchitectureThe MOLEN Programming Paradigm was proposed to offer a general function like execution of the computation intensive parts of the programs on the reconfigurable fabric of the polymorphic computing platforms. Within the MOLEN programming paradigm, the ...
Supporting Multitasking of Pipelined Computations on Embedded Parallel Processor Arrays
ICPPW '09: Proceedings of the 2009 International Conference on Parallel Processing WorkshopsThis paper presents software support that enables seamless task restructuring and load balancing of pipelined applications at runtime, making it possible to dynamically pick the stages that will be executed as separate tasks on distinct CPUs, depending ...
Function-level multitasking interface design in an embedded operating system with reconfigurable hardware
EUC'07: Proceedings of the 2007 international conference on Embedded and ubiquitous computingReconfigurable architecture provides a high performance computing paradigm. We can implement the compute-intensive functions into reconfigurable devices to optimize the application performance. In current reconfigurable hardware designs, the function-...
Comments