PATSMA: Parameter Auto-tuning for Shared Memory Algorithms
Programs with high levels of complexity often face challenges in adjusting execution parameters, particularly when the ideal value for these parameters may change based on the execution context. These dynamic parameters significantly impact the program’s performance. For instance, ideal parallel loo...
Saved in:
| Published in | SoftwareX Vol. 27; p. 101789 |
|---|---|
| Main Authors | , , , , |
| Format | Journal Article |
| Language | English |
| Published |
Elsevier B.V
01.09.2024
Elsevier |
| Subjects | |
| Online Access | Get full text |
| ISSN | 2352-7110 2352-7110 |
| DOI | 10.1016/j.softx.2024.101789 |
Cover
| Summary: | Programs with high levels of complexity often face challenges in adjusting execution parameters, particularly when the ideal value for these parameters may change based on the execution context. These dynamic parameters significantly impact the program’s performance. For instance, ideal parallel loop scheduling may vary depending on factors like the execution environment, program input, or the choice of compiler. Given the expensive nature of testing each case individually, one viable solution is to automate parameter adjustments using optimization methods. This article introduces PATSMA, a parameter auto-tuning tool that leverages Coupled Simulated Annealing (CSA) and Nelder–Mead (NM) optimization methods to fine-tune existing parameters in an iterative application. We demonstrate how auto-tuning can contribute to the real-time optimization of parallel algorithms designed for shared memory systems. PATSMA is a C++ library readily available under the MIT license. |
|---|---|
| ISSN: | 2352-7110 2352-7110 |
| DOI: | 10.1016/j.softx.2024.101789 |