Skip to main content

Surrogate-Assisted Multi-objective Optimization for Compiler Optimization Sequence Selection

  • Conference paper
  • First Online:
Parallel Problem Solving from Nature – PPSN XVII (PPSN 2022)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 13399))

Included in the following conference series:

  • 860 Accesses

Abstract

Compiler developers typically design various optimization options to produce optimized programs. Generally, it is a challenging task to identify a reasonable set of optimization options (i.e., compiler optimization sequence) in modern compilers. Optimization objectives, in addition to the target architecture and source code of the program, influence the selection of optimization sequences. Current applications are often required to optimize two or more conflicting objectives simultaneously, such as execution time and code size. Existing approaches employ evolutionary algorithms to find appropriate optimization sequences to trade off the above two objectives. However, since program compilation and execution are time-consuming, and the two objectives are inherently conflicting, applying evolutionary algorithms faces the diverse objectives influence and computationally expensive problem. In this study, we present a surrogate-assisted multi-objective optimization approach. To speed up the convergence, it employs a fast global search based on non-dominated sorting. The approach then uses two surrogate models for each objective to generate approximate fitness evaluations rather than using actual expensive evaluations. Extensive experiments on the benchmark suite cBench show that our approach outperforms the baseline NSGA-II on hypervolume by an average of 11.7%. Furthermore, experiments verify that the surrogate model contributes to solving the computationally expensive problem and taking fewer actual fitness evaluations.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 109.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 139.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    https://gcc.gnu.org/onlinedocs/gcc-9.4.0/gcc/Optimize-Options.html#Optimize-Options.

References

  1. Agakov, F., et al.: Using machine learning to focus iterative optimization. In: Proceedings of the International Symposium on Code Generation and Optimization, pp. 295–305 (2006)

    Google Scholar 

  2. Ansel, J., et al.: OpenTuner: an extensible framework for program autotuning. In: Proceedings of the 23rd International Conference on Parallel Architectures and Compilation, pp. 303–316 (2014)

    Google Scholar 

  3. Ashouri, A.H., Bignoli, A., Palermo, G., Silvano, C., Kulkarni, S., Cavazos, J.: MICOMP: mitigating the compiler phase-ordering problem using optimization sub-sequences and machine learning. ACM Trans. Archit. Code Optim. 14(3), 29 (2017)

    Article  Google Scholar 

  4. Ashouri, A.H., Killian, W., Cavazos, J., Palermo, G., Silvano, C.: A survey on compiler autotuning using machine learning. ACM Comput. Surv. 51(5), 1–42 (2018)

    Article  Google Scholar 

  5. Ashouri, A.H., Mariani, G., Palermo, G., Park, E., Cavazos, J., Silvano, C.: COBAYN: compiler autotuning framework using Bayesian networks. ACM Trans. Archit. Code Optim. (TACO) 13(2), 1–25 (2016)

    Article  Google Scholar 

  6. Breiman, L.: Random forests. Mach. Learn. 45(1), 5–32 (2001)

    Article  Google Scholar 

  7. Cáceres, L.P., Bischl, B., Stützle, T.: Evaluating random forest models for irace. In: Proceedings of the Genetic and Evolutionary Computation Conference Companion, pp. 1146–1153 (2017)

    Google Scholar 

  8. Chebolu, N.A.B.S., Wankar, R.: Multi-objective exploration for compiler optimizations and parameters. In: Murty, M.N., He, X., Chillarige, R.R., Weng, P. (eds.) MIWAI 2014. LNCS (LNAI), vol. 8875, pp. 23–34. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-13365-2_3

    Chapter  Google Scholar 

  9. Chen, J., Xu, N., Chen, P., Zhang, H.: Efficient compiler autotuning via Bayesian optimization. In: 2021 IEEE/ACM 43rd International Conference on Software Engineering (ICSE), pp. 1198–1209. IEEE (2021)

    Google Scholar 

  10. Deb, K., Agrawal, R.B.: Simulated binary crossover for continuous search space. Complex Syst. 9(2), 115–148 (1995)

    MathSciNet  MATH  Google Scholar 

  11. Fursin, G.: Collective benchmark (cBench), a collection of open-source programs with multiple datasets assembled by the community to enable realistic benchmarking and research on program and architecture optimization (2010). http://cTuning.org/cbench

  12. Gu, Q., Wang, D., Jiang, S., Xiong, N., Jin, Y.: An improved assisted evolutionary algorithm for data-driven mixed integer optimization based on Two_Arch. Comput. Ind. Eng. 159, 107463 (2021)

    Article  Google Scholar 

  13. Gu, Q., Wang, Q., Li, X., Li, X.: A surrogate-assisted multi-objective particle swarm optimization of expensive constrained combinatorial optimization problems. Knowl.-Based Syst. 223, 107049 (2021)

    Article  Google Scholar 

  14. Hall, M., Padua, D., Pingali, K.: Compiler research: the next 50 years. Commun. ACM 52(2), 60–67 (2009)

    Article  Google Scholar 

  15. Hong, W., Yang, P., Wang, Y., Tang, K.: Multi-objective magnitude-based pruning for latency-aware deep neural network compression. In: Bäck, T., et al. (eds.) PPSN 2020. LNCS, vol. 12269, pp. 470–483. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-58112-1_32

    Chapter  Google Scholar 

  16. Lokuciejewski, P., Plazar, S., Falk, H., Marwedel, P., Thiele, L.: Multi-objective exploration of compiler optimizations for real-time systems. In: 2010 13th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing, pp. 115–122. IEEE (2010)

    Google Scholar 

  17. Lokuciejewski, P., Plazar, S., Falk, H., Marwedel, P., Thiele, L.: Approximating pareto optimal compiler optimization sequences-a trade-off between WCET, ACET and code size. Softw. Pract. Experience 41(12), 1437–1458 (2011)

    Article  Google Scholar 

  18. Sun, C., Ding, J., Zeng, J., Jin, Y.: A fitness approximation assisted competitive swarm optimizer for large scale expensive optimization problems. Memetic Comput. 10(2), 123–134 (2018)

    Article  Google Scholar 

  19. Sun, Y., Wang, H., Xue, B., Jin, Y., Yen, G.G., Zhang, M.: Surrogate-assisted evolutionary deep learning using an end-to-end random forest-based performance predictor. IEEE Trans. Evol. Comput. 24(2), 350–364 (2019)

    Article  Google Scholar 

  20. Valdiviezo, H.C., Van Aelst, S.: Tree-based prediction on incomplete data using imputation or surrogate decisions. Inf. Sci. 311, 163–181 (2015)

    Article  Google Scholar 

  21. Zhou, Y.Q., Lin, N.W.: A study on optimizing execution time and code size in iterative compilation. In: 2012 Third International Conference on Innovations in Bio-Inspired Computing and Applications, pp. 104–109. IEEE (2012)

    Google Scholar 

  22. Zitzler, E., Thiele, L.: Multiobjective optimization using evolutionary algorithms—a comparative case study. In: Eiben, A.E., Bäck, T., Schoenauer, M., Schwefel, H.-P. (eds.) PPSN 1998. LNCS, vol. 1498, pp. 292–301. Springer, Heidelberg (1998). https://doi.org/10.1007/BFb0056872

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding authors

Correspondence to Lei Qiao or He Jiang .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Gao, G., Qiao, L., Liu, D., Chen, S., Jiang, H. (2022). Surrogate-Assisted Multi-objective Optimization for Compiler Optimization Sequence Selection. In: Rudolph, G., Kononova, A.V., Aguirre, H., Kerschke, P., Ochoa, G., Tušar, T. (eds) Parallel Problem Solving from Nature – PPSN XVII. PPSN 2022. Lecture Notes in Computer Science, vol 13399. Springer, Cham. https://doi.org/10.1007/978-3-031-14721-0_27

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-14721-0_27

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-14720-3

  • Online ISBN: 978-3-031-14721-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics