Software systems today face increasing demands for high performance and efficient memory usage. Traditional optimization methods, often hard-coded and inflexible, struggle to adapt to complex and dynamic workloads. Machine Learning (ML) algorithms offer a promising approach by automatically learning patterns and making intelligent decisions to optimize execution time (runtime) and memory consumption. This paper provides a comprehensive review of recent research (2021–2025) on applying ML techniques – including neural networks, reinforcement learning, and evolutionary algorithms – to performance optimization in software systems. We discuss how ML-driven solutions have achieved significant improvements, such as reducing program execution time, enhancing memory/cache efficiency, and intelligently allocating resources in cloud environments.
Article Link: