27076

Real-Time High-Performance Computing for Embedded Control Systems

Alejandro Josué Calderón Torres
Universitat Politècnica de Catalunya, Computer Architecture Department
Universitat Politècnica de Catalunya, 2022

@phdthesis{calderon2022real,

   title={Real-time high-performance computing for embedded control systems},

   author={Calder{‘o}n Torres, Alejandro Josu{‘e} and others},

   school={Universitat Polit{`e}cnica de Catalunya},

   year={2022}

}

Download Download (PDF)   View View   Source Source   

657

views

Critical real-time systems include a wide spectrum of computer systems whose correct behavior is dictated not only by correct functionality but also by their timely execution with respect to predefined deadlines. The increasing demand for higher performance in these systems has led the industry to recently include embedded Graphics Processing Units (GPUs), mainly for machine learning and computer vision tasks. In the real-time control systems industry, there is a trend moving towards the consolidation of multiple computing systems into fewer and more powerful ones, aiming for the reduction of Size, Weight and Power (SWaP). The highly parallel architecture of GPUs could help to develop more advanced, energy efficient, and scalable control systems. However, GPUs are known about their closed source and non-deterministic nature, which complicates the resource provisioning analysis for the implementation of real-time systems. On the other hand, in the real-time time control systems industry, a Model-Based Design (MBD) approach is used for the development and testing of this kind of systems to manage their diversity and complexity. Recently, MBD tools have been enhanced with GPU code generation capabilities for machine learning acceleration, a feature that could also be leveraged for the development of real-time control systems. However, there is no indication whether these tools are ready for the design of time-sensitive systems. This thesis addresses these problems. First, we present a methodology and an automated tool to extract the properties of GPU memory allocators. This tool allows the computation of the real amount of memory used by GPU applications, facilitating a correct resource provisioning analysis. Then, we present a library which allows the characterization of the use of dynamic memory in GPU applications. We use this library to characterize GPU benchmarks and we identify memory allocation patterns that could be modified to improve performance and memory consumption in embedded GPUs. Based on these results, we present a tool to optimize the use of dynamic memory in legacy GPU applications executed on embedded platforms. Afterwards, we analyze the timing of control algorithms executed in embedded GPUs and we identify techniques to achieve an acceptable real-time behavior. Finally, we evaluate MBD tools in terms of integration with GPU hardware and GPU code generation, and we propose a source-to-source transformation tool to improve the model-based generated GPU code.
No votes yet.
Please wait...

* * *

* * *

HGPU group © 2010-2024 hgpu.org

All rights belong to the respective authors

Contact us: