# Optimization of Heterogeneous Systems with AI Planning Heuristics and Machine Learning: A Performance and Energy Aware Approach

arXiv: https://arxiv.org/abs/2106.01441 · HTML: https://mlsanity.com/paper/2106.01441/

## Key facts

- Cited by 2 papers in the map (data through 14 Oct 2026).
- Builds on 6 of its 47 references that are in the map.
- First posted on arXiv 2 Jun 2021.

## Builds on (most cited first, 6 of 6)

- [NVIDIA Tensor Core Programmability, Performance & Precision](https://mlsanity.com/paper/1803.04014/) (2018)
- [Accelerating DNA Sequence Analysis using Intel Xeon Phi](https://mlsanity.com/paper/1506.08612/) (2015)
- [Benchmarking OpenCL, OpenACC, OpenMP, and CUDA: programming productivity, performance, and energy consumption](https://mlsanity.com/paper/1704.05316/) (2017)
- [Using Meta-heuristics and Machine Learning for Software Optimization of Parallel Computing Systems: A Systematic Literature Review](https://mlsanity.com/paper/1801.09444/) (2018)
- [PaREM: A Novel Approach for Parallel Regular Expression Matching](https://mlsanity.com/paper/1412.1741/) (2014)
- [Combinatorial Optimization of Work Distribution on Heterogeneous Systems](https://mlsanity.com/paper/1606.05134/) (2016)

## Built on by (most cited first, 2 of 2)

- [Data-driven Real-time Short-term Prediction of Air Quality: Comparison of ES, ARIMA, and LSTM](https://mlsanity.com/paper/2211.09814/) (2022)
- [DECICE: Device-Edge-Cloud Intelligent Collaboration Framework](https://mlsanity.com/paper/2305.02697/) (2023)

## Abstract (arXiv)

Heterogeneous computing systems provide high performance and energy efficiency. However, to optimally utilize such systems, solutions that distribute the work across host CPUs and accelerating devices are needed. In this paper, we present a performance and energy aware approach that combines AI planning heuristics for parameter space exploration with a machine learning model for performance and energy evaluation to determine a near-optimal system configuration. For data-parallel applications our approach determines a near-optimal host-device distribution of work, number of processing units required and the corresponding scheduling strategy. We evaluate our approach for various heterogeneous systems accelerated with GPU or the Intel Xeon Phi. The experimental results demonstrate that our approach finds a near-optimal system configuration by evaluating only about 7% of reasonable configurations. Furthermore, the performance per Joule estimation of system configurations using our machine learning model is more than 1000x faster compared to the system evaluation by program execution.
