Multiprovision: a Design Space Exploration tool for multi-tenant resource provisioning in CPU–GPU environments

Michael G. Jordan,Julio Costella Vicenzi,Tiago Knorst,Guilherme Korol,Antonio Carlos Schneider Beck,Mateus Beck Rutzig
DOI: https://doi.org/10.1007/s10617-023-09279-3
2023-12-23
Design Automation for Embedded Systems
Abstract:Cloud warehouses are increasingly adopting CPU–GPU collaborative systems to leverage diverse types and levels of parallelism in applications. These environments are shared among multiple clients to achieve maximum resource utilization with energyf efficiency and scalability. While OpenCL simplifies resource provisioning in such heterogeneous systems, ensuring the effective distribution of tasks remains challenging as CPU–GPU available architectures and workload characteristics can vary significantly. This study addresses the challenge of efficiently provisioning resources in OpenCL-based CPU–GPU cloud environments. To tackle this challenge, we introduce MultiProvision, a Design Space Exploration tool for multi-tenant resource provisioning in CPU–GPU environments. MultiProvision facilitates the identification of the most suitable provisioning strategy for a given workload and architecture scenario in a transparent manner. Through comprehensive evaluations encompassing various architecture combinations and workloads, we demonstrate that the choice of the most efficient provisioning strategy depends on the target architecture, workload characteristics, and optimization objectives, such as makespan or energy. We show that the appropriate strategy can achieve remarkable gains of up to 13.15 in makespan and 4.52 in energy compared to a GPU-only execution.
computer science, software engineering, hardware & architecture
What problem does this paper attempt to address?