USE OF GENETIC ALGORITHMS IN ADAPTIVE COMPILERS FOR CROSS-PLATFORM OPTIMIZATION
DOI:
https://doi.org/10.15588/1607-3274-2025-4-16Keywords:
genetic algorithms, adaptive compilers, cross-platform optimization, automationAbstract
Context. Modern software is developed under conditions of continuously increasing complexity of computing systems. Today, developers must consider a vast diversity of platforms, ranging from resource-constrained mobile devices to servers with highperformance processors and specialized architectures such as GPUs, FPGAs and even quantum computers. This heterogeneity requires software to operate efficiently across various hardware platforms. However, portability remains one of the most challenging tasks, especially when high performance is required. One of the promising directions to address this problem is the use of adaptive compilers that can automatically optimize code for different architectures. This approach allows developers to focus on the functional part of the software, minimizing the effort spent on optimization and configuration. Genetic algorithms (GAs) play a special role among the methods used to create adaptive compilers. These are powerful evolutionary techniques that allow finding optimal solutions in complex and multidimensional parameter spaces.
Objective. The objective of this research is to apply genetic algorithms in the process of adaptive compilation to enable automatic optimization of software across different hardware platforms.
Method. The approach is based on genetic algorithms to automate the compilation process. The key stages include: population initialization – creation of an initial set of compilation parameters; fitness function evaluation – assessment of the efficiency of each parameter combination; evolutionary operations – applying crossover, mutation and selection to generate the next generation of parameters; termination criteria – stopping the iterative process upon reaching an optimal result or stabilization of metrics.
Results. The developed algorithm was implemented in Python using the numpy, multiprocessing and subprocess libraries.
Performance evaluation of the algorithm was carried out using execution time, energy consumption and memory usage metrics.
Conclusions. The scientific novelty of the study lies in the development of: an innovative approach to automatic compilation parameter optimization based on genetic algorithms; a method for dynamic selection of optimization strategies based on performance metrics for different architectures; integration of GAs with modern compilers such as LLVM for automatic analysis of intermediate representation and code optimization; and methods for applying adaptive compilers to solve cross-platform optimization problems. The practical significance is determined by the use of genetic algorithms in adaptive compilers, which significantly improves the efficiency of the compilation process by automating the selection of optimal parameters for various architectures. The proposed approach can be successfully applied in the fields of mobile computing, cloud technologies and high-performance systems.
References
Tagtekin B., Höke B., Sezer M. K., Öztürk M. U.FOGA: Flag Optimization with Genetic Algorithm, Proc. IEEE Int. Conf. on Innovations in Intelligent Systems and Applications (INISTA 2021), 29 June–1 July 2021. Kocaeli, Turkey, IEEE, 2021, pp. 1–6. DOI: 10.1109/INISTA52462.2021.9456364.
Júnior N. L. Q. Rodriguez L. G. A., Silva A. F. da Combining Machine Learning with a Genetic Algorithm to Find Good Compiler Optimizations Sequences, Proc. 19th Int. Conf. on Enterprise Information Systems (ICEIS 2017), Vol. 1. Porto, Portugal, 26–29 Apr. 2017, pp. 397–404. DOI: 10.5220/0006270403970404.
Peeler H., Li S., Sloss A., Reid K., Yuan Y., Banzhaf W. Optimizing LLVM Pass Sequences with Shackleton: A Linear Genetic Programming Framework, Companion Proc. Genetic and Evolutionary Computation Conf. (GECCO ’22), 9–13 July 2022. Boston, USA, ACM, 2022, pp. 578–581. DOI: 10.1145/3520304.3528945.
Ashouri A. H., Killian W., Cavazos J., Palermo G., Silvano C. A Survey on Compiler Autotuning Using Machine Learning, ACM Computing Surveys, 2018, Vol. 51, № 5, Art. 96, 42 p. DOI: 10.1145/3197978.
Rosario V. M. do, Borin E., Nacul A., Breternitz M., Collange S., Barrett E. Smart Selection of Optimizations in Dynamic Compilers, Concurrency and Computation: Practice and Experience, 2021, Vol. 33, № 10, e6089. DOI: 10.1002/cpe.6089.
Cummins C., Fisches Z. V., Ben-Nun T., Hoefler T., O’Boyle M. F. P., Leather H. ProGraML: A GraphBased Program Representation for Data Flow Analysis and Compiler Optimizations, Proc. 38th Int. Conf. on Machine Learning (ICML 2021), 18–24 July 2021, Virtual Event. PMLR, 2021, Vol. 139, pp. 2244–2253.
Nugteren C., Codreanu V. CLTune: A Generic AutoTuner for OpenCL Kernels, Proc. IEEE 9th Int. Symp. on Embedded Multicore/Many-core Systems-on-Chip (MCSoC 2015), 23–25 Sept. 2015. Turin, Italy, IEEE, 2015, pp. 195–202. DOI: 10.1109/MCSoC.2015.33.
Ashouri A. H., Palermo G., Cavazos J., Silvano C. Automatic Tuning of Compilers Using Machine Learning. Cham, Springer, 2018, 78 p. (PoliMI SpringerBriefs in Applied Sciences). DOI: 10.1007/978- 3-319-71489-9.
Martins L. G. A., Nobre R., Cardoso J. M. P., Delbem A. C. B., Marques E. Clustering-Based Selection for the Exploration of Compiler Optimization Sequences, ACM Transactions on Architecture and Code Optimization (TACO), 2016, Vol. 13, № 1, Art. 14. DOI:
1145/2883614.
Liou J.-Y., Wang X., Forrest S., Wu C.-J. GEVO: GPU Code Optimization Using Evolutionary Computation, ACM Trans. on Architecture and Code Optimization, 2020, Vol. 17, № 4, Art. 33, 28 p. DOI: 10.1145/3418055.
Downloads
Published
How to Cite
Issue
Section
License
Copyright (c) 2025 M. G. Berdnyk, I. P. Starodubskyi

This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
Creative Commons Licensing Notifications in the Copyright Notices
The journal allows the authors to hold the copyright without restrictions and to retain publishing rights without restrictions.
The journal allows readers to read, download, copy, distribute, print, search, or link to the full texts of its articles.
The journal allows to reuse and remixing of its content, in accordance with a Creative Commons license СС BY -SA.
Authors who publish with this journal agree to the following terms:
-
Authors retain copyright and grant the journal right of first publication with the work simultaneously licensed under a Creative Commons Attribution License CC BY-SA that allows others to share the work with an acknowledgement of the work's authorship and initial publication in this journal.
-
Authors are able to enter into separate, additional contractual arrangements for the non-exclusive distribution of the journal's published version of the work (e.g., post it to an institutional repository or publish it in a book), with an acknowledgement of its initial publication in this journal.
-
Authors are permitted and encouraged to post their work online (e.g., in institutional repositories or on their website) as it can lead to productive exchanges, as well as earlier and greater citation of published work.