Methodology for Developing a High-speed Compiler Based on the Modified Loop Fusion Optimization Method: Models and Tools for its Implementation
- Autores: Logunov B.A.1, Kharin I.A.1
-
Afiliações:
- Scientific Research Center for Aircraft Strength, Federal Autonomous Institution “Central Aerohydrodynamic Institute named after Professor N.E. Zhukovsky” (FAI “TSAGI”)
- Edição: Volume 10, Nº 1 (2023)
- Páginas: 103-111
- Seção: ELEMENTS OF COMPUTING SYSTEMS
- URL: https://journals.eco-vector.com/2313-223X/article/view/545844
- DOI: https://doi.org/10.33693/2313-223X-2023-10-1-103-111
- ID: 545844
Citar
Resumo
In connection with the development of information technologies, the complexity of programming languages and, accordingly, applications developed using them, program optimization is of particular importance. In the process of optimization, the program is improved by reducing the code size, complexity, using less memory and provides a reduction in execution time without changing the internal function. In practice, optimization is implemented using compilers and their functions. Taking into account the above, the aim of the article was to develop a methodology for studying various aspects of building a high-speed compiler with a modified loop fusion optimization method, as well as models and tools for its implementation. In the course of the research, the features of its design using the modified loop fusion optimization method are outlined, descriptions of the flowchart of the modified loop fusion algorithm and the logical flowchart of the compiler development stages are given. As a result of the work, a compiler based on the modified loop fusion optimization method is proposed, using loop reversal to ensure their “legitimate” and profitable merging, which reduces the execution time of the program while maintaining its correctness. The efficiency of the proposed compiler is shown by comparing the compilation times of the test program obtained using it and using the well-known compiler x86-64 gcc 4.7.1.
Palavras-chave
Texto integral
![Acesso é fechado](https://journals.eco-vector.com/lib/pkp/templates/images/icons/text_lock.png)
Sobre autores
Boris Logunov
Scientific Research Center for Aircraft Strength, Federal Autonomous Institution “Central Aerohydrodynamic Institute named after Professor N.E. Zhukovsky” (FAI “TSAGI”)
Email: logunov39@mail.ru
Candidate of Engineering; Head of the Department of Measuring and Computing Equipment, Department of strength standards, loads and Aeroelasticty of the Scientific Research Center for Aircraft Strength of the Federal Autonomous Institution “Central Aerohydrodynamic Institute named after Professor N.Е. Zhukovsky” (FAI “TSAGI”)
Rússia, Zhukovsky, Moscow regionIlya Kharin
Scientific Research Center for Aircraft Strength, Federal Autonomous Institution “Central Aerohydrodynamic Institute named after Professor N.E. Zhukovsky” (FAI “TSAGI”)
Autor responsável pela correspondência
Email: xarin.ilya@bk.ru
engineer of the Department of Measuring and Computing Equipment, Department of strength standards, loads and Aeroelasticty of the Scientific Research Center for Aircraft Strength of the Federal Autonomous Institution “Central Aerohydrodynamic Institute named after Professor N.Е. Zhukovsky” (FAI “TSAGI”)
Rússia, Zhukovsky, Moscow regionBibliografia
- Agez M. Correcting remaining truncations in hybrid life cycle assessment database compilation. Journal of Industrial Ecology. 2022. Vol. 26. No. 1. Pp. 121–133.
- Abate C. An extended account of trace-relating compiler correctness and secure compilation. ACM Transactions on Programming Languages and Systems. 2021. Vol. 43. No. 4. Pp. 14–19.
- Muller E. Push versus pull-based loop fusion in query engines. Journal of Functional Programming. 2018. Vol. 28. No. 1. Pp. 56–62.
- Sesin I.Yu. Comparative analysis of software optimization methods for combating branch predication on GPUs. Russian Technological Journal. 2021. No. 6. Pp. 7–15. (In Rus.)
- Li Hao. Compiling cross-language network programs into hybrid data plane. IEEE/ACM Transactions on Networking: A Joint Publication of the IEEE Communications Society. 2021. Vol. 30. No. 3. Pp. 1088–1103.
- Zhufeng H. Optimization based on LLVM global instruction selection. Journal of Physics. Conference Series. 2021. Vol. 1856. No. 1. Pp. 19–23.
- Ziraksima M. Using an evolutionary approach based on shortest common supersequence problem for loop fusion. Soft Computing: A Fusion of Foundations, Methodologies and Applications. 2020. Nо. 10. Рp. 7231–7252.
- Vladimirov K.I. Structure splitting optimization for the vector optimizer in the Intel graphics compiler. Modern Information Technologies and IT Education. 2022. No. 2. Pp. 249–255. (In Rus.)
- Josipovic L. Synthesizing general-purpose code into dynamically scheduled circuits. IEEE Circuits and Systems Magazine. 2021. Vol. 21. No. 2. Pp. 97–118.
- Kiesel R. Efficient knowledge compilation beyond weighted model counting. Theory and Practice of Logic Programming. 2022. Vol. 22. No. 4. Pp. 505–522.
- Ahmed H. Toward a novel engine for compiler optimization space exploration of big data workloads. Software, Practice & Experience. 2022. Vol. 52. No. 5. Pp. 1262–1293.
- Shymon I.M. Compilation, analysis and application of a comprehensive Bangla Corpus KUMono. IEEE Access: Practical Innovations, Open Solutions. 2022. Vol. 10. Pp. 79999–80014.
- Novikov K.D. Software optimization. Bulletin of the Russian New University. Series: Complex Systems: Models, Analysis and Control. 2021. No. 1. Pp. 159–165. (In Rus.)
- Murali P. Formal constraint-based compilation for noisy intermediate-scale quantum systems. Microprocessors and Microsystems. 2019. Vol. 66. No. 9. Pp. 102–112.
- Patrignani M. Robustly safe compilation, an efficient form of secure compilation. ACM Transactions on Programming Languages and Systems. 2021. Vol. 43. No. 1. Pp. 12–19.
- Gonopolsky M.G. Automatic generation of an interpreter for a multilingual virtual machine. Modern Information Technologies and IT Education. 2021. Vol. 17. No. 4. Pp. 988–997. (In Rus.)
- Baev R.V. Prevention of vulnerabilities resulting from optimization of code with undefined behavior. Proceedings of the Institute for System Programming of the Russian Academy of Sciences. 2021. Vol. 33. No. 4. Pp. 195–210. (In Rus.)
- Kormen T.H., Leizerson Ch.E., Rivest R.L., Stein C. Section 24.3: Dijkstra’s Algorithm. In: introduction to algorithms. 2nd ed. MIT Press and McGraw-Hill, 2001. Pp. 595–601. ISBN: 0-262-03293-7.
Arquivos suplementares
![](/img/style/loading.gif)