Abstract
To ease the burden on developers, Domain-specific languages (DSLs) aim at combining architecture- and domain-specific knowledge, thereby delivering performance, productivity, and portability. HIPAcc is a publicly available framework for the automatic code generation of image processing algorithms on Graphics processing unit (GPU) accelerators. Starting from a C++ embedded DSL, HIPAcc delivers tailored code variants for different target architectures, significantly improving the programmer’s productivity. In this chapter, we use HIPAcc as foundation and extend it to be able to generate C++ code specific to the C-based HLS framework Vivado HLS from Xilinx.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
- 2.
Replacing memory loads of constant values by inserting the numerical literals.
- 3.
For example, image names are maintained, only given a prefix when converting to streams.
- 4.
Jetson DC power analysis of the CUDA smoke particle demo, adjusted for fan and system power consumption: http://wccftech.com/nvidia-tegra-k1-performance-power-consumption-revealed-xiaomi-mipad-ship-32bit-64bit-denver-powered-chips/.
References
C. Harris and M. Stephens. A Combined Corner and Edge Detector. In Proceedings of the 4th Alvey Vision Conference, pages 147–151, 1988.
R. Membarth, F. Hannig, J. Teich, M. Körner, and W. Eckert. Generating device-specific GPU code for local operators in medical imaging. In Proceedings of the 26th IEEE International Parallel & Distributed Processing Symposium (IPDPS), pages 569–581. IEEE, May 2012.
R. Membarth, O. Reiche, F. Hannig, J. Teich, M. Körner, and W. Eckert. HIPAcc: A domain-specific language and compiler for image processing. IEEE Transactions on Parallel and Distributed Systems, PP(99):1–14, 2015.
R. Membarth, O. Reiche, F. Hannig, and J. Teich. Code generation for embedded heterogeneous architectures on Android. In Proceedings of the Conference on Design, Automation and Test in Europe (DATE), March 2014.
O. Reiche, M. Schmid, F. Hannig, R. Membarth, and J. Teich. Code generation from a domain-specific language for C-based HLS of hardware accelerators. In Proceedings of the International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS). ACM, October 2014.
M. Schmid, N. Apelt, F. Hannig, and J. Teich. An image processing library for C-based high-level synthesis. In Proceedings of the 24th International Conference on Field Programmable Logic and Applications (FPL). IEEE, September 2014.
F. Stein. Efficient computation of optical flow using the census transform. In Pattern Recognition, volume 3175 of Lecture Notes in Computer Science (LNCS), pages 79–86. Springer, 2004.
R. Tessier and W. Burleson. Reconfigurable computing for digital signal processing: A survey. Journal of VLSI signal processing systems for signal, image and video technology, 28(1-2):7–27, 2001.
Acknowledgements
This work was partly supported by the German Research Foundation (DFG) as part of the Research Training Group 1773 “Heterogeneous Image Systems”.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing Switzerland
About this chapter
Cite this chapter
Schmid, M., Reiche, O., Hannig, F., Teich, J. (2016). HIPAcc . In: Koch, D., Hannig, F., Ziener, D. (eds) FPGAs for Software Programmers. Springer, Cham. https://doi.org/10.1007/978-3-319-26408-0_12
Download citation
DOI: https://doi.org/10.1007/978-3-319-26408-0_12
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-26406-6
Online ISBN: 978-3-319-26408-0
eBook Packages: EngineeringEngineering (R0)