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

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

Accurate High-level Modeling and Automated Hardware/Software Co-design for Effective SoC Design Space Exploration

Published: 18 June 2017 Publication History

Abstract

A desirable feature of a development tool for SoC design is that, given the important applications in the domain to be targeted by the SoC, a powerful hardware-software partitioning engine is available to determine which function(s) shall be mapped to hardware. However, to provide high-quality partitioning, this engine must be able to consider a rich design space of possible alternate hardware and software implementations for each program region candidate for hardware acceleration, in turn making the task of finding the optimal mapping very difficult given the number of design points to consider and the need for accurate modeling of latency, power and area.
In this work we propose a novel framework to enable hardware acceleration of performance-critical parts of an application, by addressing the problem of hardware/software partitioning under power and area constraints to minimize the overall program latency. Our flow is based on the LLVM compiler, and focuses on building a scalable compile-time partitioning algorithm while considering large sets of alternative hardware and software implementations for a particular region. To this end we develop a hybrid approach based on mixing semi-random selection of hardware design points and an Integer Linear Programming formulation of the mapping decision, along with iterative refinements of the solution. Experimental results demonstrate the capability of our approach to consider complex designs and yet output near-optimal partitioning decision. Our package is named RIP (Randomized ILP-based Partitioning), and is open source to benefit the research community.

References

[1]
Xilinx, inc. sdsoc development environment. https://www.xilinx.com/products/design-tools/software-zone/sdsoc.html.
[2]
P. Arato, S. Juhasz, Z. A. Mann, A. Orban, and D. Papp. Hardware-software partitioning in embedded system design. In ISPACS'03, 2003.
[3]
T. Blickle, J. Teich, and L. Thiele. System-level synthesis using evolutionary algorithms. Design Automation for Embedded Systems, 3(1):23--58, 1998.
[4]
K. S. Chatha and R. Vemuri. Magellan: multiway hardware-software partitioning and scheduling for latency minimization of hierarchical control-dataflow task graphs. In CODES+ISSS'01, 2001.
[5]
D. Chen, J. Cong, Y. Fan, and L. Wan. Lopass: A low-power architectural synthesis system for fpgas with interconnect estimation and optimization. IEEE Transactions on Very Large Scale Integration (VLSI) Systems, 18(4):564--577, 2010.
[6]
R. P. Dick and N. K. Jha. Mogac: a multiobjective genetic algorithm for hardware-software cosynthesis of distributed embedded systems. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 17(10):920--935, 1998.
[7]
P. Eles, Z. Peng, K. Kuchcinski, and A. Doboli. System level hardware/software partitioning based on simulated annealing and tabu search. Design automation for embedded systems, 2(1):5--32, 1997.
[8]
C. Erbas, S. Cerav-Erbas, and A. D. Pimentel. Multiobjective optimization and evolutionary algorithms for the application mapping problem in multiprocessor system-on-chip design. IEEE Transactions on Evolutionary Computation, 10:358--374, 2006.
[9]
W. Kemmerer, W. Zuo, and D. Chen. Parallel code-specific cpu simulation with dynamic phase convergence modeling for hw/sw co-design. In ICCAD'16, 2016.
[10]
A. Krizhevsky, I. Sutskever, and G. E. Hinton. Imagenet classification with deep convolutional neural networks. In NIPS'12, 2012.
[11]
R. Niemann and P. Marwedel. An algorithm for hardware/software partitioning using mixed integer linear programming. Design Automation for Embedded Systems, 2(2):165--193, 1997.
[12]
L.-N. Pouchet, P. Zhang, P. Sadayappan, and J. Cong. Polyhedral-based data reuse optimization for configurable computing. In FPGA'13, 2013.
[13]
S. Prakash and A. C. Parker. Synthesis of application-specific heterogeneous multiprocessor systems. In ACM SIGARCH Computer Architecture News, volume 20, page 434. ACM, 1992.
[14]
E. Sha, L. Wang, Q. Zhuge, J. Zhang, and J. Liu. Power efficiency for hardware/software partitioning with time and area constraints on mpsoc. International Journal of Parallel Programming, 43(3):381--402, 2015.
[15]
J. Shirako, K. Sharma, N. Fauzia, L.-N. Pouchet, J. Ramanujam, P. Sadayappan, and V. Sarkar. Analytical bounds for optimal tile size selection. In CC'12, 2012.
[16]
J. Teich. Hardware/software codesign: The past, the present, and predicting the future. Proceedings of the IEEE, 100(Special Centennial Issue):1411--1430, 2012.
[17]
W. Zuo, W. Kemmerer, J. B. Lim, L.-N. Pouchet, A. Ayupov, T. Kim, K. Han, and D. Chen. A polyhedral-based systemc modeling and generation framework for effective low-power design space exploration. In ICCAD'15, 2015.
[18]
W. Zuo, P. Li, D. Chen, L.-N. Pouchet, S. Zhong, and J. Cong. Improving polyhedral code generation for high-level synthesis. In CODES+ISSS '13, 2013.
[19]
W. Zuo, Y. Liang, P. Li, K. Rupnow, D. Chen, and J. Cong. Improving high level synthesis optimization opportunity through polyhedral transformations. In FPGA '13, 2013.

Cited By

View all
  • (2024)Design Spaces and How Software Designers Use Them: a samplerProceedings of the 1st International Workshop on Designing Software10.1145/3643660.3643941(1-8)Online publication date: 15-Apr-2024
  • (2024)HIDA: A Hierarchical Dataflow Compiler for High-Level SynthesisProceedings of the 29th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 110.1145/3617232.3624850(215-230)Online publication date: 27-Apr-2024
  • (2024)Cyclebite: Extracting Task Graphs From Unstructured Compute-ProgramsIEEE Transactions on Computers10.1109/TC.2023.332750473:1(221-234)Online publication date: Jan-2024
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
DAC '17: Proceedings of the 54th Annual Design Automation Conference 2017
June 2017
533 pages
ISBN:9781450349277
DOI:10.1145/3061639
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

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 18 June 2017

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Conference

DAC '17
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)45
  • Downloads (Last 6 weeks)10
Reflects downloads up to 13 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Design Spaces and How Software Designers Use Them: a samplerProceedings of the 1st International Workshop on Designing Software10.1145/3643660.3643941(1-8)Online publication date: 15-Apr-2024
  • (2024)HIDA: A Hierarchical Dataflow Compiler for High-Level SynthesisProceedings of the 29th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 110.1145/3617232.3624850(215-230)Online publication date: 27-Apr-2024
  • (2024)Cyclebite: Extracting Task Graphs From Unstructured Compute-ProgramsIEEE Transactions on Computers10.1109/TC.2023.332750473:1(221-234)Online publication date: Jan-2024
  • (2024)Expanding hardware accelerator system design space exploration with gem5-SALAMv2Journal of Systems Architecture: the EUROMICRO Journal10.1016/j.sysarc.2024.103211154:COnline publication date: 1-Sep-2024
  • (2023)High-level Synthesis for Domain Specific ComputingProceedings of the 2023 International Symposium on Physical Design10.1145/3569052.3580027(211-219)Online publication date: 26-Mar-2023
  • (2023)Early DSE and Automatic Generation of Coarse-grained Merged AcceleratorsACM Transactions on Embedded Computing Systems10.1145/354607022:2(1-29)Online publication date: 24-Jan-2023
  • (2023)A CPU-FPGA Holistic Source-To-Source Compilation Approach for Partitioning and Optimizing C/C++ Applications2023 32nd International Conference on Parallel Architectures and Compilation Techniques (PACT)10.1109/PACT58117.2023.00034(320-322)Online publication date: 21-Oct-2023
  • (2023)Lightning Talk: The Next Wave of High-level Synthesis2023 60th ACM/IEEE Design Automation Conference (DAC)10.1109/DAC56929.2023.10247880(1-3)Online publication date: 9-Jul-2023
  • (2022)Auto-Partitioning Heterogeneous Task-Parallel Programs with StreamBlocksProceedings of the International Conference on Parallel Architectures and Compilation Techniques10.1145/3559009.3569659(398-411)Online publication date: 8-Oct-2022
  • (2022)ScaleHLS: A New Scalable High-Level Synthesis Framework on Multi-Level Intermediate Representation2022 IEEE International Symposium on High-Performance Computer Architecture (HPCA)10.1109/HPCA53966.2022.00060(741-755)Online publication date: Apr-2022
  • Show More Cited By

View Options

Get Access

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