Multi-Profile Static Binary Optimization of the Application Based on Execution Traces

Autor: Sergey Lisitsyn
Jazyk: ruština
Rok vydání: 2021
Předmět:
Zdroj: Современные информационные технологии и IT-образование, Vol 17, Iss 3, Pp 593-602 (2021)
Druh dokumentu: article
ISSN: 2411-1473
DOI: 10.25559/SITITO.17.202103.593-602
Popis: Profiling is the collection of characteristics about the execution of programs that can be used during optimizations. One example of usage is the BOLT static binary optimizer. The main performance gain in it is achieved by recomposing the code based on the profile obtained during application execution. However, this optimization is implemented without considering switching between application scenarios when there is a change in the collected characteristics of the program during its execution. This leads to the fact that when the application is executed on a scenario other than the profiled one, the performance gain will be less, or regression will be observed. Combining all possible program profiles into one does not solve all possible problems. This paper describes an algorithm for multi-profile code analysis, considering the change of scenarios of the program. This algorithm is based on processing application execution traces collected using dynamic binary instrumentation. Based on this analysis, it is possible to optimize the placement of code depending on its belonging to a certain scenario, which will lead to an increase in the locality of the code. Also, based on multi-profile analysis, it is possible to optimize the duplication of code that falls into several scenarios simultaneously.
Databáze: Directory of Open Access Journals