Search NASA⌕ Search

DOE OSTI · 1605686

ParaOpt: Automated Application Parameterization and Optimization for the Cloud

Abstract

The variety of instance types available on cloud platforms offers enormous flexibility to match the requirements of applications with available resources. However, selecting the most suitable instance type and configuring an application to optimally execute on that instance type can be complicated and time-consuming. For example, application parallelism flags must match available cores and problem sizes must be tuned to match available memory. As the search space of application configurations can be enormous, we propose an automated approach, called ParaOpt, to automatically explore and tune application configurations on arbitrary cloud instances. ParaOpt supports arbitrary applications, enables use of custom optimization methods, and can be configured with different optimization targets such as runtime and cost. We evaluate ParaOpt by optimizing genomics, molecular dynamics, and machine learning applications with four types of optimizers. We show with as few as 15 parameterized executions of an application, representing between 1.2%-26.7% of the search space, that ParaOpt is able to identify the optimal configuration in 32.7% of experiments and a near-optimal configuration in 83.2% of cases. As a result of using near-optimal configurations, ParaOpt reduces overall execution time by up to 85.8% when compared with using the default configuration.

Keep this discovery

Explore connections, maps & timelines

BibTeXRIS

Wu, Chaofeng, Summer, Ted, Li, Zhuozhao, Woodard, Anna, Chard, Ryan, Baughman, Matt, Babuji, Yadu, Chard, Kyle, Pitt, Jason, Foster, Ian. 2019-01-01. ParaOpt: Automated Application Parameterization and Optimization for the Cloud. https://doi.org/10.1109/cloudcom.2019.00045

Cite the original work for its findings. Save a collection to share your selection of sources.