- Usecase Analyse und Hyperparameter Optimierung von targetDART Anwendungen
Knierim, Felix; Müller, Matthias S. (Thesis advisor); Bader, Michael (Thesis advisor); Schmitz, Adrian (Consultant)
Aachen : RWTH Aachen University (2025)
Bachelor Thesis
Bachelorarbeit, Rheinisch-Westfälische Technische Hochschule Aachen, 2025
Abstract
For all kinds of projects that require a lot of computations, multiple computation devices are used in parallel, in order to speed up the execution. Not just multiple nodes, but also accelerators and CPUs are used simultaneously. Load imbalances often occur on applications that utilize multiple devices. The occurrence of load imbalances means that a computation unit has more workload than another computation unit. Load imbalances slow down the executions because computing devices, which have less workload than other devices, will finish earlier and stay idle. If a device stays idle while others are processing workload, the runtime can be decreased by offloading parts of the workload to the idle devices. A common cause for load imbalances is that they are induced by the algorithm that the application uses or by external factors, like a computation device that processes computations faster or slower than others. The workload can be balanced during the execution of the program, which is called dynamic load balancing. Static load balancing balances the workload before it is executed and cannot react to imbalances that occur during the execution. Most of the tools that apply dynamic load balancing balance the load between CPU and an accelerator or between multiple nodes. A solution that is able to apply both is targetDART. targetDART provides runtime support that applies dynamic load balancing within a node, between CPU and accelerators, and across different nodes. It is integrated into the LLVM project and is available as a plugin for the clang compiler. This thesis conducts benchmarks to test the capabilities and limits of targetDART regarding different use cases. Furthermore, the hyperparameters oftargetDART are also tested, in order to provide guidelines for their usage. The results of this thesis show that targetDART scales efficiently. Although a lot of factors that depend on the use case induce small overheads of 14-16% or 400ms. The use case that induced high overhead was for using CPU-only as a computation device. Another plugin that targetDART utilizes induces that overhead. For the hyperparameters, a comparison of a naive case with no hyperparameters set and a best case, which combines all optimal hyperparameter settings, shows that with the guidelines for hyperparameters, a speedup of 2.06× can be achieved.
Institutions
- Chair of High Performance Computing (Computer Science 12) [123010]