Papers
Topics
Authors
Recent
Gemini 2.5 Flash
Gemini 2.5 Flash
153 tokens/sec
GPT-4o
7 tokens/sec
Gemini 2.5 Pro Pro
45 tokens/sec
o3 Pro
4 tokens/sec
GPT-4.1 Pro
38 tokens/sec
DeepSeek R1 via Azure Pro
28 tokens/sec
2000 character limit reached

Adapting Multi-objectivized Software Configuration Tuning (2404.04744v1)

Published 6 Apr 2024 in cs.SE, cs.AI, and cs.DC

Abstract: When tuning software configuration for better performance (e.g., latency or throughput), an important issue that many optimizers face is the presence of local optimum traps, compounded by a highly rugged configuration landscape and expensive measurements. To mitigate these issues, a recent effort has shifted to focus on the level of optimization model (called meta multi-objectivization or MMO) instead of designing better optimizers as in traditional methods. This is done by using an auxiliary performance objective, together with the target performance objective, to help the search jump out of local optima. While effective, MMO needs a fixed weight to balance the two objectives-a parameter that has been found to be crucial as there is a large deviation of the performance between the best and the other settings. However, given the variety of configurable software systems, the "sweet spot" of the weight can vary dramatically in different cases and it is not possible to find the right setting without time-consuming trial and error. In this paper, we seek to overcome this significant shortcoming of MMO by proposing a weight adaptation method, dubbed AdMMO. Our key idea is to adaptively adjust the weight at the right time during tuning, such that a good proportion of the nondominated configurations can be maintained. Moreover, we design a partial duplicate retention mechanism to handle the issue of too many duplicate configurations without losing the rich information provided by the "good" duplicates. Experiments on several real-world systems, objectives, and budgets show that, for 71% of the cases, AdMMO is considerably superior to MMO and a wide range of state-of-the-art optimizers while achieving generally better efficiency with the best speedup between 2.2x and 20x.

Definition Search Book Streamline Icon: https://streamlinehq.com
References (54)
  1. Andrea Arcuri and Lionel C. Briand. 2011. A practical guide for using statistical tests to assess randomized algorithms in software engineering. In ICSE’11: Proc. of the 33rd International Conference on Software Engineering. ACM, 1–10.
  2. Tuning Algorithms for Stochastic Black-Box Optimization: State of the Art and Future Perspectives. Black Box Optimization, Machine Learning, and No-Free Lunch Theorems (2021), 67–108.
  3. Taming parallel I/O complexity with auto-tuning. In International Conference for High Performance Computing, Networking, Storage and Analysis, SC’13, Denver, CO, USA - November 17 - 21, 2013, William Gropp and Satoshi Matsuoka (Eds.). ACM, 68:1–68:12. https://doi.org/10.1145/2503210.2503278
  4. Algorithms for Hyper-Parameter Optimization. In Advances in Neural Information Processing Systems 24: 25th Annual Conference on Neural Information Processing Systems 2011. Proceedings of a meeting held 12-14 December 2011, Granada, Spain, John Shawe-Taylor, Richard S. Zemel, Peter L. Bartlett, Fernando C. N. Pereira, and Kilian Q. Weinberger (Eds.). 2546–2554. https://proceedings.neurips.cc/paper/2011/hash/86e8f7ab32cfd12577bc2619bc635690-Abstract.html
  5. James Bergstra and Yoshua Bengio. 2012. Random Search for Hyper-Parameter Optimization. J. Mach. Learn. Res. 13 (2012), 281–305. http://dl.acm.org/citation.cfm?id=2188395
  6. SMS-EMOA: Multiobjective selection based on dominated hypervolume. Eur. J. Oper. Res. 181, 3 (2007), 1653–1669. https://doi.org/10.1016/J.EJOR.2006.08.008
  7. Automatic Configuration of GCC Using Irace. In Artificial Evolution - 13th International Conference, Évolution Artificielle, EA 2017, Paris, France, October 25-27, 2017, Revised Selected Papers (Lecture Notes in Computer Science, Vol. 10764), Evelyne Lutton, Pierrick Legrand, Pierre Parrend, Nicolas Monmarché, and Marc Schoenauer (Eds.). Springer, 202–216. https://doi.org/10.1007/978-3-319-78133-4_15
  8. Efficient Compiler Autotuning via Bayesian Optimization. In 43rd IEEE/ACM International Conference on Software Engineering, ICSE 2021, Madrid, Spain, 22-30 May 2021. IEEE, 1198–1209. https://doi.org/10.1109/ICSE43902.2021.00110
  9. MMO: Meta Multi-Objectivization for Software Configuration Tuning. IEEE Transactions on Software Engineering (2024).
  10. Tao Chen. 2022a. Lifelong Dynamic Optimization for Self-Adaptive Systems: Fact or Fiction?. In IEEE International Conference on Software Analysis, Evolution and Reengineering, SANER 2022, Honolulu, HI, USA, March 15-18, 2022. IEEE, 78–89. https://doi.org/10.1109/SANER53432.2022.00022
  11. Tao Chen. 2022b. Planning Landscape Analysis for Self-Adaptive Systems. In International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS 2022, Pittsburgh, PA, USA, May 22-24, 2022, Bradley R. Schmerl, Martina Maggio, and Javier Cámara (Eds.). ACM/IEEE, 84–90. https://doi.org/10.1145/3524844.3528060
  12. Tao Chen and Rami Bahsoon. 2017a. Self-Adaptive and Online QoS Modeling for Cloud-Based Software Services. IEEE Trans. Software Eng. 43, 5 (2017), 453–475. https://doi.org/10.1109/TSE.2016.2608826
  13. Tao Chen and Rami Bahsoon. 2017b. Self-Adaptive Trade-off Decision Making for Autoscaling Cloud-Based Services. IEEE Trans. Serv. Comput. 10, 4 (2017), 618–632. https://doi.org/10.1109/TSC.2015.2499770
  14. FEMOSAA: Feature Guided and Knee Driven Multi-Objective Optimization for Self-Adaptive Software. ACM Transactions on Software Engineering and Methodology 27, 2 (2018).
  15. Tao Chen and Miqing Li. 2021. Multi-objectivizing software configuration tuning. In ESEC/FSE ’21: 29th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, Athens, Greece, August 23-28, 2021, Diomidis Spinellis, Georgios Gousios, Marsha Chechik, and Massimiliano Di Penta (Eds.). ACM, 453–465. https://doi.org/10.1145/3468264.3468555
  16. Tao Chen and Miqing Li. 2023a. Do Performance Aspirations Matter for Guiding Software Configuration Tuning? An Empirical Investigation under Dual Performance Objectives. ACM Trans. Softw. Eng. Methodol. 32, 3 (2023), 68:1–68:41. https://doi.org/10.1145/3571853
  17. Tao Chen and Miqing Li. 2023b. The Weights Can Be Harmful: Pareto Search versus Weighted Search in Multi-objective Search-based Software Engineering. ACM Trans. Softw. Eng. Methodol. 32, 1 (2023), 5:1–5:40. https://doi.org/10.1145/3514233
  18. Standing on the shoulders of giants: Seeding search-based multi-objective optimization with prior knowledge for software service composition. Inf. Softw. Technol. 114 (2019), 155–175. https://doi.org/10.1016/j.infsof.2019.05.013
  19. A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Transactions on Evolutionary Computation 6, 2 (2002), 182–197.
  20. Good Things Come In Threes: Improving Search-based Crash Reproduction With Helper Objectives. In 35th IEEE/ACM International Conference on Automated Software Engineering (ASE’20).
  21. JellyFish: Online Performance Tuning with Adaptive Configuration and Elastic Container in Hadoop Yarn. In 21st IEEE International Conference on Parallel and Distributed Systems, ICPADS 2015, Melbourne, Australia, December 14-17, 2015. IEEE Computer Society, 831–836. https://doi.org/10.1109/ICPADS.2015.112
  22. Juan José Durillo and Antonio J. Nebro. 2011. jMetal: A Java framework for multi-objective optimization. Adv. Eng. Softw. 42, 10 (2011), 760–771. https://doi.org/10.1016/j.advengsoft.2011.05.014
  23. Félix-Antoine Fortin and Marc Parizeau. 2013. Revisiting the NSGA-II crowding-distance computation. In Genetic and Evolutionary Computation Conference, GECCO ’13, Amsterdam, The Netherlands, July 6-10, 2013, Christian Blum and Enrique Alba (Eds.). ACM, 623–630. https://doi.org/10.1145/2463372.2463456
  24. Resource-Guided Configuration Space Reduction for Deep Learning Models. In 43rd IEEE/ACM International Conference on Software Engineering, ICSE 2021, Madrid, Spain, 22-30 May 2021. IEEE, 175–187. https://doi.org/10.1109/ICSE43902.2021.00028
  25. Jingzhi Gong and Tao Chen. 2022. Does Configuration Encoding Matter in Learning Software Performance? An Empirical Study on Encoding Schemes. In 19th IEEE/ACM International Conference on Mining Software Repositories, MSR 2022, Pittsburgh, PA, USA, May 23-24, 2022. ACM, 482–494. https://doi.org/10.1145/3524842.3528431
  26. Jingzhi Gong and Tao Chen. 2023. Predicting Software Performance with Divide-and-Learn. In Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, ESEC/FSE 2023, San Francisco, CA, USA, December 3-9, 2023, Satish Chandra, Kelly Blincoe, and Paolo Tonella (Eds.). ACM, 858–870. https://doi.org/10.1145/3611643.3616334
  27. Jingzhi Gong and Tao Chen. 2024. Predicting Configuration Performance in Multiple Environments with Sequential Meta-Learning. FSE’24: Proceedings of the ACM on Software Engineering (PACMSE) 1, FSE. https://doi.org/10.1145/3643743
  28. Xue Han and Tingting Yu. 2016. An Empirical Study on Performance Bugs for Highly Configurable Software Systems. In Proceedings of the 10th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, ESEM 2016, Ciudad Real, Spain, September 8-9, 2016. ACM, 23:1–23:10. https://doi.org/10.1145/2961111.2962602
  29. Sequential Model-Based Optimization for General Algorithm Configuration. In LION5: Proc. of the 5th International Conference Learning and Intelligent Optimization (Lecture Notes in Computer Science, Vol. 6683). Springer, 507–523.
  30. ParamILS: An Automatic Algorithm Configuration Framework. J. Artif. Intell. Res. 36 (2009), 267–306. https://doi.org/10.1613/jair.2861
  31. Pooyan Jamshidi and Giuliano Casale. 2016. An Uncertainty-Aware Approach to Optimal Configuration of Stream Processing Systems. In 24th IEEE International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems, MASCOTS 2016, London, United Kingdom, September 19-21, 2016. IEEE Computer Society, 39–48.
  32. Learning to sample: exploiting similarities across environments to learn performance models for configurable systems. In Proceedings of the 2018 ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, ESEC/SIGSOFT FSE 2018, Lake Buena Vista, FL, USA, November 04-09, 2018, Gary T. Leavens, Alessandro Garcia, and Corina S. Pasareanu (Eds.). ACM, 71–82. https://doi.org/10.1145/3236024.3236074
  33. BiLO-CPDP: Bi-Level Programming for Automated Model Discovery in Cross-Project Defect Prediction. In 35th IEEE/ACM International Conference on Automated Software Engineering, ASE 2020, Melbourne, Australia, September 21-25, 2020. IEEE, 573–584. https://doi.org/10.1145/3324884.3416617
  34. Understanding the automated parameter optimization on transfer learning for cross-project defect prediction: an empirical study. In ICSE ’20: 42nd International Conference on Software Engineering, Seoul, South Korea, 27 June - 19 July, 2020, Gregg Rothermel and Doo-Hwan Bae (Eds.). ACM, 566–577. https://doi.org/10.1145/3377811.3380360
  35. How to Evaluate Solutions in Pareto-Based Search-Based Software Engineering: A Critical Review and Methodological Guidance. IEEE Trans. Software Eng. 48, 5 (2022), 1771–1799. https://doi.org/10.1109/TSE.2020.3036108
  36. MRONLINE: MapReduce online performance tuning. In The 23rd International Symposium on High-Performance Parallel and Distributed Computing, HPDC’14, Vancouver, BC, Canada - June 23 - 27, 2014, Beth Plale, Matei Ripeanu, Franck Cappello, and Dongyan Xu (Eds.). ACM, 165–176. https://doi.org/10.1145/2600212.2600229
  37. The irace package: Iterated racing for automatic algorithm configuration. Operations Research Perspectives 3 (2016), 43–58.
  38. Opt4J: a modular framework for meta-heuristic optimization. In 13th Annual Genetic and Evolutionary Computation Conference, GECCO 2011, Proceedings, Dublin, Ireland, July 12-16, 2011, Natalio Krasnogor and Pier Luca Lanzi (Eds.). ACM, 1723–1730. https://doi.org/10.1145/2001576.2001808
  39. TrimTuner: Efficient Optimization of Machine Learning Jobs in the Cloud via Sub-Sampling. In 28th International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems, MASCOTS 2020, Nice, France, November 17-19, 2020. IEEE, 1–8. https://doi.org/10.1109/MASCOTS50786.2020.9285971
  40. A Robust Multi-objective Approach for Software Refactoring under Uncertainty. In Search-Based Software Engineering - 6th International Symposium, SSBSE 2014, Fortaleza, Brazil, August 26-29, 2014. Proceedings (Lecture Notes in Computer Science, Vol. 8636), Claire Le Goues and Shin Yoo (Eds.). Springer, 168–183. https://doi.org/10.1007/978-3-319-09940-8_12
  41. Finding faster configurations using FLASH. IEEE Transactions on Software Engineering 46, 7 (2020).
  42. Andrew Jhon Scott and M Knott. 1974. A cluster analysis method for grouping means in the analysis of variance. Biometrics (1974), 507–512.
  43. eQual: informing early design decisions. In ESEC/FSE ’20: 28th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, Virtual Event, USA, November 8-13, 2020, Prem Devanbu, Myra B. Cohen, and Thomas Zimmermann (Eds.). ACM, 1039–1051. https://doi.org/10.1145/3368089.3409749
  44. Predicting performance via automated feature-interaction detection. In 34th International Conference on Software Engineering, ICSE 2012, June 2-9, 2012, Zurich, Switzerland, Martin Glinz, Gail C. Murphy, and Mauro Pezzè (Eds.). IEEE Computer Society, 167–177. https://doi.org/10.1109/ICSE.2012.6227196
  45. Automatic configuration of the Cassandra database using irace. PeerJ Comput. Sci. 7 (2021), e634. https://doi.org/10.7717/peerj-cs.634
  46. Single-objective Versus Multi-objectivized Optimization for Evolutionary Crash Reproduction. In Search-Based Software Engineering - 10th International Symposium, SSBSE 2018, Montpellier, France, September 8-9, 2018, Proceedings (Lecture Notes in Computer Science, Vol. 11036), Thelma Elita Colanzi and Phil McMinn (Eds.). Springer, 325–340. https://doi.org/10.1007/978-3-319-99241-9_18
  47. Transferring Performance Prediction Models Across Different Hardware Platforms. In Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering, ICPE 2017, L’Aquila, Italy, April 22-26, 2017, Walter Binder, Vittorio Cortellessa, Anne Koziolek, Evgenia Smirni, and Meikel Poess (Eds.). ACM, 39–50. https://doi.org/10.1145/3030207.3030216
  48. András Vargha and Harold D. Delaney. 2000. A Critique and Improvement of the CL Common Language Effect Size Statistics of McGraw and Wong.
  49. Frank Wilcoxon. 1945. Individual Comparisons by Ranking Methods.
  50. A Grid-Based Evolutionary Algorithm for Many-Objective Optimization. IEEE Trans. Evol. Comput. 17, 5 (2013), 721–736. https://doi.org/10.1109/TEVC.2012.2227145
  51. Yuan Yuan and Wolfgang Banzhaf. 2020. ARJA: Automated Repair of Java Programs via Multi-Objective Genetic Programming. IEEE Trans. Software Eng. 46, 10 (2020), 1040–1067. https://doi.org/10.1109/TSE.2018.2874648
  52. BestConfig: tapping the performance potential of systems via automatic configuration tuning. In Proceedings of the 2017 Symposium on Cloud Computing, SoCC 2017, Santa Clara, CA, USA, September 24-27, 2017. ACM, 338–350. https://doi.org/10.1145/3127479.3128605
  53. Eckart Zitzler and Simon Künzli. 2004. Indicator-Based Selection in Multiobjective Search. In Parallel Problem Solving from Nature - PPSN VIII, 8th International Conference, Birmingham, UK, September 18-22, 2004, Proceedings (Lecture Notes in Computer Science, Vol. 3242), Xin Yao, Edmund K. Burke, José Antonio Lozano, Jim Smith, Juan Julián Merelo Guervós, John A. Bullinaria, Jonathan E. Rowe, Peter Tiño, Ata Kabán, and Hans-Paul Schwefel (Eds.). Springer, 832–842. https://doi.org/10.1007/978-3-540-30217-9_84
  54. e-PAL: An Active Learning Approach to the Multi-Objective Optimization Problem. J. Mach. Learn. Res. 17 (2016), 104:1–104:32. http://jmlr.org/papers/v17/15-047.html
Citations (6)

Summary

We haven't generated a summary for this paper yet.

X Twitter Logo Streamline Icon: https://streamlinehq.com