Development of optimization framework for embedded software based on automatic tuning of modern GCC via optimisation phases reordering

Автор: Otrashchenko A.I., Akimov Z.D., Efanov N.N.

Журнал: Труды Московского физико-технического института @trudy-mipt

Рубрика: Информатика и управление

Статья в выпуске: 1 (61) т.16, 2024 года.

Бесплатный доступ

Nowadays compilers have large amounts of optimizations, and the order in which these optimizations are applied can significantly impact the resulting binary. However, any software that uses GCC as a toolchain could not choose the optimization order, because of lack of such support in the compiler. In this paper, we propose an implementation of software infrastructure, based on GCC toolchain, which allows phase-ordering in GCC with regard to given objective function. It includes infrastructure to interact with GCC and its optimization passes, and it includes integration of this infrastructure into existing machine learning packages. Using the implemented method, we explored two approaches for compiler auto-tuning by phase-ordering: genetic algorithm and reinforcement learning. For testing those approaches a benchmark set was created, which consists of utility programs, programs for modeling and existing open benchmarks. In carried out experiments, where the objective function was chosen to be size reduction without loss in runtime, the results were acquired, analyzed and compared between the approaches.

Еще

Optimizing compiler, genetic algorithm, machine learning, gcc, reinforcement learning, function characterization, compiler auto-tuning

Короткий адрес: https://sciup.org/142241776

IDR: 142241776

Статья научная