Modeling, programming and performance analysis of automotive environment map representations on embedded GPUs

Future Advanced Driver Assistance Systems (ADAS) require the continuous computation of detailed maps of the vehicle's environment. Due to the high demand of accuracy and the enormous amount of data to be fused and processed, common architectures used today, like single-core processors in automotive Electronic Control Units (ECUs), do not provide enough computing power. Here, emerging embedded multi-core architectures are appealing such as embedded Graphics Processing Units (GPUs). In this paper, we (a) identify and analyze common subalgorithms of ADAS algorithms for computing environment maps, such as interval maps, for suitability to be parallelized and run on embedded GPUs. From this analysis, (b) performance models are derived on achievable speedups with respect to sequential single-core CPU implementations. (c) As a third contribution of this paper, these performance models are validated by presenting and comparing a novel parallelized interval map GPU implementation against a parallel occupancy grid map implementation. For both types of environment maps, implementations on an Nvidia Tegra K1 prototype are compared to verify the correctness of the introduced performance models. Finally, the achievable speedups with respect to a single-core CPU solution are reported. These range from 3x to 275x for interval and grid map computations.

[1]  Wolfram Burgard,et al.  Improving Grid-based SLAM with Rao-Blackwellized Particle Filters by Adaptive Proposals and Selective Resampling , 2005, Proceedings of the 2005 IEEE International Conference on Robotics and Automation.

[2]  Ulrich Hofmann,et al.  A generic map based environment representation for driver assistance systems applied to detect convoy tracks , 2012, 2012 15th International IEEE Conference on Intelligent Transportation Systems.

[3]  Samuel Williams,et al.  Roofline: an insightful visual performance model for multicore architectures , 2009, CACM.

[4]  Hans P. Moravec Robot spatial perception by stereoscopic vision and 3D evidence grids , 1996 .

[5]  Darius Burschka,et al.  Efficient occupancy grid computation on the GPU with lidar and radar for road boundary detection , 2010, 2010 IEEE Intelligent Vehicles Symposium.

[6]  Ulrich Hofmann,et al.  An interval based representation of occupancy information for driver assistance systems , 2013, 16th International IEEE Conference on Intelligent Transportation Systems (ITSC 2013).

[7]  Jizhong Xiao,et al.  Multi-volume occupancy grids: An efficient probabilistic 3D mapping model for micro aerial vehicles , 2010, 2010 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[8]  Mohamed Essayed Bouzouraa Belegungskartenbasierte Umfeldwahrnehmung in Kombination mit objektbasierten Ansätzen für Fahrerassistenzsysteme , 2012 .

[9]  S. Kammel,et al.  Lidar-based lane marker detection and mapping , 2008, 2008 IEEE Intelligent Vehicles Symposium.

[10]  Erich Strohmaier,et al.  A genetic algorithms approach to modeling the performance of memory-bound computations , 2007, Proceedings of the 2007 ACM/IEEE Conference on Supercomputing (SC '07).

[11]  Jack Bresenham,et al.  Algorithm for computer control of a digital plotter , 1965, IBM Syst. J..

[12]  Alberto Elfes,et al.  Using occupancy grids for mobile robot perception and navigation , 1989, Computer.

[13]  Tobias Weiherer Scalable Map-based Environment Representations for Highly Automated Vehicles , 2015 .

[14]  Volker Willert,et al.  Robust free space detection in occupancy grid maps by methods of image analysis and dynamic B-spline contour tracking , 2012, 2012 15th International IEEE Conference on Intelligent Transportation Systems.