Performance and Energy Prediction of OpenMP and CUDA Applications using Machine Learning and Pre-execution Features

  • Fellipe Queiroz UFPA
  • Luan Siqueira UFPA
  • Erick Damasceno UFPA
  • Thiago Rodrigues UFPA
  • Marcos Amaris UFPA

Resumo


Este estudo investiga como técnicas de aprendizado de máquina podem prever o desempenho de aplicações CUDA em GPUs e o consumo de energia de aplicações OpenMP em máquinas multi-core. Modelos como regressão ridge e floresta aleatória são aplicados usando dados de pré-execução. A análise, baseada nos benchmarks Rodinia (GPU) e PolyBench (CPU), busca entender como essas técnicas de ML podem prever o desempenho e a eficiência energética desses hardwares. Os resultados indicam que a otimização de tarefas pode reduzir o consumo de energia sem afetar o desempenho.

Referências

Amaris, M., Camargo, R., Cordeiro, D., Goldman, A., and Trystram, D. (2023). Evaluating execution time predictions on gpu kernels using an analytical model and machine learning techniques. JPDC, 171:66–78.

Amaris, M., de Camargo, R. Y., Dyab, M., Goldman, A., and Trystram, D. (2016). A comparison of gpu execution time prediction using machine learning and analytical modeling. In 2016 IEEE 15th International Symposium on Network Computing and Applications (NCA), pages 326–333. IEEE.

Benedict, S., Rejitha, R., Gschwandtner, P., Prodan, R., and Fahringer, T. (2015). Energy prediction of openmp applications using random forest modeling approach. In 2015 IEEE International Parallel and Distributed Processing Symposium Workshop, pages 1251–1260.

Breiman, L. (2001). Random forests. Machine Learning, 45(1):5–32.

Caripán Uribe, D. (2022). Plataforma para medir el consumo energético de algoritmos. Universidad de Concepción.

Chein, F. (2019). Introdução aos modelos de regressão linear: um passo inicial para compreensão da econometria como uma ferramenta de avaliação de políticas públicas. ENAP, Brasília.

Cordeiro, D., Francesquini, E., Amarís, M., Castro, M., Baldassin, A., and Lima, J. (2023). Green cloud computing: Challenges and opportunities. In Anais do XIX SBSI, pages 129–131, Maceió/AL. SBC.

Hastie, T., Tibshirani, R., and Friedman, J. H. (2009). The Elements of Statistical Learning: Data Mining, Inference, and Prediction. Springer Series in Statistics. Springer, 2nd edition.

IEA (2023). Tracking clean energy progress. [link]. Licença: CC BY 4.0.

Kim, S. and Kim, H. (2020). A new metric of absolute percentage error for intermittent demand forecasts. International Journal of Forecasting, 36(3):1115–1127.

Lewis, C. D. (1982). Industrial and Business Forecasting Methods. Butter-worths.

Mittal, S. and Vetter, J. S. (2016). A survey of methods for analyzing and improving gpu energy efficiency. ACM Computing Surveys (CSUR), 49(3):41.

NVIDIA (2024). Gpu accelerated solutions for data science. NVIDIA Newsroom.

NVIDIA, C. C. and CUDA, C. (2015). Programming guide, version 7.

Penha, D., Corrêa, J., and Martins, C. (2002). Análise comparativa do uso de multi-thread e openmp aplicados a operações de convolução de imagem. In Anais do III Workshop em Sistemas Computacionais de Alto Desempenho, pages 118–125, Porto Alegre, RS, Brasil. SBC.

Saurav, S. K. and Benedict, S. (2021). A taxonomy and survey on energy-aware scientific workflows scheduling in large-scale heterogeneous architecture. In 2021 6th International Conference on Inventive Computation Technologies (ICICT), pages 820–826.

Shahid, A., Fahad, M., Manumachu, R. R., and Lastovetsky, A. (2021). Energy predictive models of computing: Theory, practical implications and experimental analysis on multicore processors. IEEE Access, 9:63149–63172.

Susto, G. A., Schirru, A., Pampuri, S., McLoone, S., and Beghi, A. (2014). Machine learning for predictive maintenance: A multiple classifier approach. IEEE Transactions on Industrial Informatics, 11(3):812–820.

Wang, X., Huang, K., Knoll, A., and Qian, X. (2019). A hybrid framework for fast and accurate gpu performance estimation through source-level analysis and trace-based simulation. In 2019 IEEE International Symposium on High Performance Computer Architecture (HPCA), pages 201–214. IEEE.

Williams, J. and Curtis, L. (2008). Green: The new computing coat of arms? IT Professional Magazine, 10(1):12.

yan Song, Y. (2015). Decision tree methods: applications for classification and prediction. International Journal of Data Analysis Techniques and Strategies, 7(2):228–243.

Zhang, Y., Wang, S., and Chen, G. (2020). Deep learning-based performance prediction for gpu-accelerated applications. Journal of Parallel and Distributed Computing, 144(3):12–23.
Publicado
23/10/2024
QUEIROZ, Fellipe; SIQUEIRA, Luan; DAMASCENO, Erick; RODRIGUES, Thiago; AMARIS, Marcos. Performance and Energy Prediction of OpenMP and CUDA Applications using Machine Learning and Pre-execution Features. In: SIMPÓSIO EM SISTEMAS COMPUTACIONAIS DE ALTO DESEMPENHO (SSCAD), 25. , 2024, São Carlos/SP. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2024 . p. 228-239. DOI: https://doi.org/10.5753/sscad.2024.244787.