This is an unedited manuscript accepted for publication and provided as an Article in Press for early access at the author’s request. The article will undergo copyediting, typesetting, and galley proof review before final publication. Please be aware that errors may be identified during production that could affect the content. All legal disclaimers of the journal apply.
Manish Kumar Jha,
Shambhu Kumar Mishra,
- Research Scholar, Department of Mathematics, Patliputra University, Patna, Bihar, India
- Professor on Lien, University Department of Mathematics, Patliputra University, Patna, Bihar, India
Abstract
This paper explores the use of machine learning (ML) approaches to compiler optimization. The now-traditional static compilation techniques are transformed into adaptive, dynamic systems capable of making context-specific advancements. Traditional compilers rely mostly on heuristic or rule-based optimization techniques. While these techniques work well in general cases, they consistently fail to adapt well within the limits of code structures that modern machines display. This limitation is especially acute in today’s computational landscape, where software applications are increasingly complex and require ever-growing resources. On the other hand, machine learning models like neural networks and reinforcement learning (RL) offer a paradigm shift because compilers can learn from past performance data and adjust optimizations dynamically to the unique features of individual codebases. This paper further evaluates the application of supervised, unsupervised, and reinforcement learning models to the prediction of optimal compiler configurations. It aims at improving critical performance metrics like execution time, memory usage, and energy efficiency. The experimental results show enhancements across various benchmarks, including reduced execution times, less memory usage, and superior energy efficiency compared to state-of-the-art compiler optimization methods. Reinforcement learning models were highly adaptable, yielding great performance in dynamic and variable computational environments, whereas supervised and unsupervised models proved more effective in predictable and clustered codebases. These results emphasize the potential of ML-based compiler optimization in the creation of smarter and more flexible compiler systems. In doing so, ML might empower compilers to dynamically respond to a diverse set of requirements imposed by applications and computational environments, thus creating the next generation of self-optimizing compilers with unprecedented performance scalability. This research validates the position of ML as an essential ingredient in modern compiler designs in order to cope with increasing demands of advanced computational workloads.
Keywords: Machine learning, compiler optimization, fortification learning, neural systems, versatile compilation.
[This article belongs to Journal of Computer Technology & Applications (jocta)]
Manish Kumar Jha, Shambhu Kumar Mishra. Educating Compilers to Learn: Utilizing Machine Learning for More brilliant Code Optimization. Journal of Computer Technology & Applications. 2024; 16(01):-.
Manish Kumar Jha, Shambhu Kumar Mishra. Educating Compilers to Learn: Utilizing Machine Learning for More brilliant Code Optimization. Journal of Computer Technology & Applications. 2024; 16(01):-. Available from: https://journals.stmjournals.com/jocta/article=2024/view=190018
References
- Siemieniuk A, Chelini L, Khan AA, Castrillon J, Drebes A, Corporaal H, Grosser T, Kong M. OCC: An automated end-to-end machine learning optimizing compiler for computing-in-memory. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems. 2021 Aug 2;41(6):1674-86.
- Chen C, Zhang P, Zhang H, Dai J, Yi Y, Zhang H, Zhang Y. Deep learning on computational‐resource‐limited platforms: A survey. Mobile Information Systems. 2020;2020(1):8454327.
- Zhang H, Xing M, Wu Y, Zhao C. Compiler Technologies in Deep Learning Co-Design: A Survey. Intelligent Computing. 2023 Jun 19;2:0040.
- Patel H, Ramanan BA, Khan MA, Williams T, Friedman B, Drabeck L. Automating Code Adaptation for MLOps–A Benchmarking Study on LLMs. arXiv preprint arXiv:2405.06835. 2024 May 10.
- Sutton RS, Barto AG. Reinforcement learning: An introduction. MIT press; 2018 Nov 13.
- Li M, Liu Y, Liu X, Sun Q, You X, Yang H, Luan Z, Gan L, Yang G, Qian D. The deep learning compiler: A comprehensive survey. IEEE Transactions on Parallel and Distributed Systems. 2020 Oct 13;32(3):708-27.
- Babu RG, Nedumaran A, Manikandan G, Selvameena R. Tensorflow: Machine learning using heterogeneous edge on distributed systems. InDeep Learning in Visual Computing and Signal Processing 2022 Oct 20 (pp. 71-90). Apple Academic Press.
- Werner M, Servadei L, Wille R, Ecker W. Automatic compiler optimization on embedded software through k-means clustering. InProceedings of the 2020 ACM/IEEE Workshop on Machine Learning for CAD 2020 Nov 16 (pp. 157-162).
- Lee B, Lu L, Wang T, Kim T, Lee W. From zygote to morula: Fortifying weakened aslr on android. In2014 IEEE Symposium on Security and Privacy 2014 May 18 (pp. 424-439). IEEE.
- Tripathy HK, Mishra S, Rout M, Balamurugan S, Mishra S, editors. Optimized Computational Intelligence Driven Decision-Making: Theory, Application and Challenges. John Wiley & Sons; 2024 Jul 8.
- Rahmani TA, Belalem G, Mahmoudi SA, Merad‐Boudia OR. Equalizer: Energy‐efficient machine learning‐based heterogeneous cluster load balancer. Concurrency and Computation: Practice and Experience. 2024 Oct 25;36(23):e8230.
- Raschka S, Patterson J, Nolet C. Machine learning in python: Main developments and technology trends in data science, machine learning, and artificial intelligence. Information. 2020 Apr 4;11(4):193.
- Kumar D, Bezdek JC, Palaniswami M, Rajasegarar S, Leckie C, Havens TC. A hybrid approach to clustering in big data. IEEE transactions on cybernetics. 2015 Sep 29;46(10):2372-85.
- Haneda M, Knijnenburg PM, Wijshoff HA. Optimizing general purpose compiler optimization. InProceedings of the 2nd conference on Computing frontiers 2005 May 4 (pp. 180-188).
Journal of Computer Technology & Applications
Volume | 16 |
Issue | 01 |
Received | 14/11/2024 |
Accepted | 25/11/2024 |
Published | 18/12/2024 |