- TextdokumentDeveloping Bare-Metal GPGPU Drivers From Scratch: What prevents scientists from developing own GPGPU drivers?(Tagungsband des FG-BS Frühjahrstreffens 2021, 2021) Lütke Dreimann, Marcel; Kessener, DanielMost of modern computers use Graphic Processing Units (GPUs) as an additional source of computing power. However, using GPUs in bare-metal research operating systems comes with some challenges. Existing drivers for Linux or Windows are complex and cannot be used for without much effort. Documentation of modern GPUs is often missing or incomplete and drivers are incomprehensive or closed source. This paper tries to explain what prevents scientists from creating their own GPU drivers. Additionally, it gives an overview about GPGPU driver development for GPUs from different manufactur- ers and shows some challenges. Nevertheless, we have ambitiously started an undertaking to develop our own driver from scratch. To some extend this was successful, but with many problems on the way.
- TextdokumentRemote AVX Overhead: Detection and Mitigation(Tagungsband des FG-BS Frühjahrstreffens 2021, 2021) Gottschlag, MathiasDue to power constraints, recent Intel CPUs reduce their frequency when executing AVX2 and AVX-512 instructions. Often, this frequency reduction affects other applications as well, which reduces overall performance and prevents contemporary operating systems from fairly distributing system resources. In our work, we show that these problems are fundamental problems of power-limited computing. We analyze the problems and show a method to quantify the underlying AVX overhead. Based on our analysis, we then describe a set of operating system techniques to improve performance and scheduler fairness. Our results show the importance of active management of hardware-controlled frequency scaling by the OS. Based on this observation, we sketch improved hardware-software interfaces which could further reduce AVX overhead and improve the efficacy of our approach.
- TextdokumentA Study on the Portability of IoT Operating Systems(Tagungsband des FG-BS Frühjahrstreffens 2021, 2021) Martins Gomes, Renata; Baunach, MarcelThe IoT is set to permeate our lives as a new and global super infrastructure, where billions of devices with an unprecedented variety of hardware architectures will interact. To enable IoT applications and services to run everywhere without major adaptation, operating systems (OS) provide standardized interfaces to the heterogeneous hardware. As a consequence, an operating system for IoT devices must be available for a huge number of target platforms, from low-end to high-end devices, and it must guarantee different levels of dependability (e.g., safety, security, real-time, maintainability) that each application will require. Some of these hardware architectures do already exist, others will emerge over time and introduce new or improved features that must be supported or exploited by the OS. In order to succeed, an OS must thus be portable, not only concerning its functionality, but also its verified dependability. This paper tries to answer the question of how portable existing IoT OSs are, analyzing five popular OSs on their design, development, and testing processes, as well as the quality of available ports. We close with a suggestion on how to improve portability for future OS designs.
- TextdokumentUnparalleled Parallelism? CPU & GPU Architecture Trends and Their Implications for HPC Software(Tagungsband des FG-BS Frühjahrstreffens 2021, 2021) Morgenstern, Laura; Kabadshow, Ivo; Werner, MatthiasThe free lunch is over – again? In 2004, Herb Sutter observed the stagnation of clock frequencies and predicted hyperthreading and multicore capabilities as drivers for performance growth on CPUs. This prediction and the resulting advice to focus more on concurrency to achieve sustainable application performance, has become the daily reality of HPC software engineers. In this paper, we compare trends in the development of CPU and GPU architectures and examine their implications for the parallelization and portability of HPC software. The data analysis still reveals levelling clock frequencies but this time also for GPUs. Additionally, an increasing amount of hardware parallelism can be observed for both architectures.