Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/1837274.1837284acmconferencesArticle/Chapter ViewAbstractPublication PagesdacConference Proceedingsconference-collections
research-article

Online SystemC emulation acceleration

Published: 13 June 2010 Publication History

Abstract

Field-programmable gate arrays (FPGAs) have recently been used as platforms to emulate SystemC descriptions. Emulation supports in-system testing using real input and output. We previously showed emulation speed to be competitive with SystemC simulations on a PC when the emulator uses acceleration engines. A limit on the number of acceleration engines that can fit on an emulation platform creates new online problems involving runtime decisions as to when to load a SystemC process into an acceleration engine. We define the online SystemC emulation acceleration problem. In contrast to previous works that focus on statically improving SystemC (and the more general event-driven) simulations, we utilize online heuristics to manage the use of a limited number of SystemC acceleration engines in an emulation framework, where the kernel must adapt and react to dynamically changing process and event queues. We test several online heuristics and show 9x improvement over microprocessor-only emulation and 5x over statically preloaded acceleration engines. We further improve emulation performance by 10--20% by adding kernel bypass connections between acceleration engines and by adapting the online heuristics to make use of those connections.

References

[1]
Baker, P., Todman, T., Styles, H., and Luk, W. Reconfigurable Designs for Radiosity. FCCM 2005.
[2]
Balarin, F., Lavagno, L., and Murthy P. Scheduling for Embedded Real-Time Systems. IEEE Design and Test of Computers, 1998.
[3]
Chandran, P., Chandra, J., Simon, B. P., and Ravi, D. Parallelizing SystemC Kernel for Fast Hardware Simulation on SMP Machines. Workshop on Parallel and Distributed Simulation, 2009.
[4]
Chopard, B., Combes, P., and Zory, J. A Conservative Approach to SystemC Parallelization. Lecture Notes in Computer Science. Volume 3994. 2006.
[5]
Combes, P., Caron, E., Desprez, F., Chopard, B., and Zory, J. Relaxing Synchronization in a Parallel SystemC Kernel. IEEE international Symposium on Parallel and Distributed Processing with Applications, 2008.
[6]
Danne, K., Platzner, M. Periodic Real-Time Scheduling for FPGA Computers. Intelligent Solutions in Embedded Systems, 2005
[7]
Das, S. R. Adaptive protocols for parallel discrete event simulation. In 28th Conference on Winter Simulation, 1996.
[8]
Fujimoto, R. M. 1989. Parallel discrete event simulation. WSC 1989.
[9]
Ghiasi, S. and Sarrafzadeh, M. Optimal reconfiguration sequence management. ASP-DAC 2003.
[10]
Gross, D., and Harris, C. M. Fundamentals of queueing theory. John Wiley & Sons, Inc. New York, NY, USA. 1985.
[11]
Harchol-Balter, M. and Downey, A. B. 1997. Exploiting process lifetime distributions for dynamic load balancing. ACM Trans. Comput. Syst. 15, 3 (Aug. 1997), 253--285
[12]
Huang, C., and Vahid, F. Dynamic Coprocessor Management for FPGA-Enhanced Compute Platforms. CASES 2008.
[13]
Huang, C., and Vahid, F. Transmuting coprocessors: dynamic loading of FPGA coprocessors. DAC 2009.
[14]
Ishfaq Ahmad, Arif Ghafoor, Kishan Mehrotra, Performance prediction of distributed load balancing on multicomputer systems, ACM/IEEE conference on Supercomputing, 1991.
[15]
Jefferson, D. and Reiher, P. Supercritical speedup. Annual Simulation Symposium. 1991.
[16]
Min-You Wu. On runtime parallel scheduling for processor load balancing, IEEE TPDS 1997.
[17]
Naguib, Y. N. and Guindi, R. S. Speeding Up SystemC Simulation through Process Splitting. DATE 2007.
[18]
Noguera, J., Badia, R. M. Dynamic run-time HW/SW scheduling techniques for reconfigurable architectures. CODES-ISSS 2002.
[19]
NSR Physiome Project. http://nsr.bioeng.washington.edu/.
[20]
Pérez, D. G., Mouchard, G., and Temam, O. A New Optimized Implemention of the SystemC Engine Using Acyclic Scheduling. DATE 2004.
[21]
Sirowy, S., Miller, B. and Vahid, F. Portable SystemC-on-a-Chip. CODES/ISSS 2009.
[22]
Steiger, C., Walder, H., Platzner, M., and Thiele, L. 2003. Online Scheduling and Placement of Real-time Tasks to Partially Reconfigurable Devices. RTSS 2003.
[23]
Wang, Z. and Maurer, P. M. LECSIM: a Levelized event driven compiled logic simulation.). DAC 1990.

Cited By

View all

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
DAC '10: Proceedings of the 47th Design Automation Conference
June 2010
1036 pages
ISBN:9781450300025
DOI:10.1145/1837274
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 13 June 2010

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. SystemC
  2. bytecode
  3. emulation
  4. online algorithms
  5. simulation
  6. virtual machines

Qualifiers

  • Research-article

Funding Sources

Conference

DAC '10
Sponsor:

Acceptance Rates

Overall Acceptance Rate 1,770 of 5,499 submissions, 32%

Upcoming Conference

DAC '25
62nd ACM/IEEE Design Automation Conference
June 22 - 26, 2025
San Francisco , CA , USA

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 16 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2017)Thread- and data-level parallel simulation in SystemC, a Bitcoin miner case study2017 IEEE International High Level Design Validation and Test Workshop (HLDVT)10.1109/HLDVT.2017.8167466(74-81)Online publication date: Oct-2017
  • (2017)Parallel SimulationHandbook of Hardware/Software Codesign10.1007/978-94-017-7358-4_19-1(1-32)Online publication date: 12-Apr-2017
  • (2017)Parallel SimulationHandbook of Hardware/Software Codesign10.1007/978-94-017-7267-9_19(533-564)Online publication date: 27-Sep-2017
  • (2014)Out-of-Order Parallel Discrete Event Simulation for Transaction Level ModelsIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2014.235646933:12(1859-1872)Online publication date: Dec-2014
  • (2013)Advances in Parallel Discrete Event Simulation for Electronic System-Level DesignIEEE Design & Test10.1109/MDT.2012.222601530:1(45-54)Online publication date: Feb-2013
  • (2011)Just-in-time compilation for FPGA processor cores2011 Electronic System Level Synthesis Conference (ESLsyn)10.1109/ESLsyn.2011.5952282(1-6)Online publication date: Jun-2011

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media