Skip to main content

DSL-Based Acceleration of Automotive Environment Perception and Mapping Algorithms for Embedded CPUs, GPUs, and FPGAs

  • Conference paper
  • First Online:
Book cover Architecture of Computing Systems – ARCS 2019 (ARCS 2019)

Abstract

The availability and sophistication of Advanced Driver Assistance System (ADASs) are becoming increasingly important for customers when making purchasing decisions and thus also for the manufacturers of such systems. The increased demands on functionality have also increased the demands in computing power and today’s standard processors in automotive Electronic Control Unit (ECUs) struggle to provide enough computing power for those tasks. Here, heterogeneous systems, for example consisting of Central Processing Unit (CPUs), embedded Graphics Processing Unit (GPUs), and Field-Programmable Gate Array (FPGAs) provide a remedy. These heterogeneous systems, however, increase the development effort and the development costs enormously.

In this paper, we analyze the extent to which it is possible to automatically generate code with the help of a Domain-Specific Language (DSL) for typical algorithms in the field of environment perception and environment mapping. We show that with the Heterogeneous Image Processing Acceleration (Hipacc) framework it is possible to generate program code for CPUs, GPUs, and FPGAs. After that, we compare for selected algorithms the execution times of the automatically generated code with hand-written variants from the literature.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 54.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 69.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Arnold, B., Deursen, A.V., Res, M.: An algebraic specification of a language for describing financial products. In: ICSE-17 Workshop on Formal Methods Application in Software Engineering, pp. 6–13. IEEE (1995)

    Google Scholar 

  2. Bock, F., German, R., Siegl, S.: Domain-specific languages for the definition of automotive system requirements. In: Workshop CARS 2016 - Critical Automotive Applications: Robustness & Safety, September 2016. https://hal.archives-ouvertes.fr/hal-01375453

  3. Bouzouraa, M.E.: Belegungskartenbasierte Umfeldwahrnehmung in Kombination mit objektbasierten Ansätzen für Fahrerassistenzsysteme. Dissertation, Technische Universität München, München (2012)

    Google Scholar 

  4. Bresenham, J.E.: Algorithm for computer control of a digital plotter. IBM Syst. J. 4(1), 25–30 (1965). https://doi.org/10.1147/sj.41.0025

    Article  Google Scholar 

  5. Elfes, A.: Using occupancy grids for mobile robot perception and navigation. Computer 22(6), 46–57 (1989). https://doi.org/10.1109/2.30720

    Article  Google Scholar 

  6. Fickenscher, J., Hannig, F., Teich, J., Bouzouraa, M.: Base algorithms of environment maps and efficient occupancy grid mapping on embedded GPUs. In: Proceedings of the 4th International Conference on Vehicle Technology and Intelligent Transport Systems (VEHITS), pp. 298–306. SciTePress, March 2018. https://doi.org/10.5220/0006677302980306

  7. Fickenscher, J., Reiche, O., Schlumberger, J., Hannig, F., Teich, J.: Modeling, programming and performance analysis of automotive environment map representations on embedded GPUs. In: Proceedings of the 18th IEEE International High-Level Design Validation and Test Workshop (HLDVT), pp. 70–77. IEEE, October 2016. https://doi.org/10.1109/HLDVT.2016.7748257

  8. Fickenscher, J., Schlumberger, J., Hannig, F., Teich, J., Bouzouraa, M.: Cell-based update algorithm for occupancy grid maps and hybrid map for ADAS on embedded GPUs. In: Proceedings of the Conference on Design, Automation and Test in Europe (DATE), pp. 443–448. EDAA, March 2018. https://doi.org/10.23919/DATE.2018.8342050

  9. Frigo, M., Johnson, S.G.: The design and implementation of FFTW3. Proc. IEEE 93(2), 216–231 (2005). https://doi.org/10.1109/JPROC.2004.840301

    Article  Google Scholar 

  10. Gill, A.: AFrame: a domain specific language for virtual reality. In: Proceedings of the 2nd International Workshop on Real World Domain Specific Languages (RWDSL), p. 4:1. ACM (2017). https://doi.org/10.1145/3039895.3039899

  11. Hannig, F., Ruckdeschel, H., Dutta, H., Teich, J.: PARO: synthesis of hardware accelerators for multi-dimensional dataflow-intensive applications. In: Woods, R., Compton, K., Bouganis, C., Diniz, P.C. (eds.) ARC 2008. LNCS, vol. 4943, pp. 287–293. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-78610-8_30

    Chapter  Google Scholar 

  12. Harris, C., Stephens, M.: A combined corner and edge detector. In: Proceedings of Fourth Alvey Vision Conference, pp. 147–151 (1988)

    Google Scholar 

  13. Hegarty, J., et al.: Darkroom: compiling high-level image processing code into hardware pipelines. ACM Trans. Graph. 33(4), 144:1–144:11 (2014). https://doi.org/10.1145/2601097.2601174

  14. Kalman, R.E.: A new approach to linear filtering and prediction problems. Trans. ASME J. Basic Eng. 82(Series D), 35–45 (1960)

    Article  Google Scholar 

  15. Kuo, Y.C., Fu, C.M., Tsai, C.T., Lin, C.C., Chang, G.H.: Pedestrian collision warning of advanced driver assistance systems. In: International Symposium on Computer, Consumer and Control (IS3C), pp. 740–743, July 2016. https://doi.org/10.1109/IS3C.2016.189

  16. Kuo, Y.C., Pai, N.S., Li, Y.F.: Vision-based vehicle detection for a driver assistance system. Comput. Math. Appl. 61(8), 2096–2100 (2011). https://doi.org/10.1016/j.camwa.2010.08.081

    Article  Google Scholar 

  17. Membarth, R., Reiche, O., Hannig, F., Teich, J., Körner, M., Eckert, W.: HIPAcc: a domain-specific language and compiler for image processing. IEEE Trans. Parallel Distrib. Syst. 27(1), 210–224 (2016). https://doi.org/10.1109/TPDS.2015.2394802

    Article  Google Scholar 

  18. Pu, C., Black, A., Cowan, C., Walpole, J.: Microlanguages for operating system specialization. In: Proceedings of the SIGPLAN Workshop on Domain-Specific Languages. ACM, January 1997

    Google Scholar 

  19. Reiche, O., Özkan, M., Membarth, R., Teich, J., Hannig, F.: Generating FPGA-based image processing accelerators with Hipacc. In: Proceedings of the International Conference on Computer Aided Design (ICCAD), pp. 1026–1033. IEEE, November 2017. https://doi.org/10.1109/ICCAD.2017.8203894

  20. Schmitt, C., Kuckuk, S., Hannig, F., Köstler, H., Teich, J.: ExaSlang: a domain-specific language for highly scalable multigrid solvers. In: Proceedings of the 4th International Workshop on Domain-Specific Languages and High-Level Frameworks for High Performance Computing (WOLFHPC), pp. 42–51. IEEE Computer Society, November 2014. https://doi.org/10.1109/WOLFHPC.2014.11

  21. Thrun, S., Burgard, W., Fox, D.: Probabilistic Robotics. The MIT Press, Cambridge and London (2005)

    Google Scholar 

  22. Sujeeth, A.K., et al.: OptiML: an implicitly parallel domain-specific language for machine learning. In: Proceedings of the 28th International Conference on International Conference on Machine Learning (ICML), pp. 609–616. Omnipress (2011)

    Google Scholar 

  23. Voelter, M., Ratiu, D., Kolb, B., Schaetz, B.: mbeddr: instantiating a language workbench in the embedded software domain. Autom. Softw. Eng. 20(3), 339–390 (2013). https://doi.org/10.1007/s10515-013-0120-4

    Article  Google Scholar 

  24. Williams, S., Waterman, A., Patterson, D.: Roofline: an insightful visual performance model for multicore architectures. Commun. ACM 52(4), 65–76 (2009). https://doi.org/10.1145/1498765.1498785

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jörg Fickenscher .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Fickenscher, J., Hannig, F., Teich, J. (2019). DSL-Based Acceleration of Automotive Environment Perception and Mapping Algorithms for Embedded CPUs, GPUs, and FPGAs. In: Schoeberl, M., Hochberger, C., Uhrig, S., Brehm, J., Pionteck, T. (eds) Architecture of Computing Systems – ARCS 2019. ARCS 2019. Lecture Notes in Computer Science(), vol 11479. Springer, Cham. https://doi.org/10.1007/978-3-030-18656-2_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-18656-2_6

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-18655-5

  • Online ISBN: 978-3-030-18656-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics