IEEE Transactions on Parallel and Distributed Systems · 2018 · 26 citations · 40 references
ComputingComputer EngineeringComputer ScienceHardware-software Co-designParallel ComputingVirtualizationCompute Resource ManagementCpu SchedulingResource ProvisioningResource SchedulingResource-constrained SchedulingGpu ArchitectureGpu Runtime SystemsInterferencePerformance InterferenceResource ContentionResource Contention AnalysisResource Contention ManagementThread Block Scheduling
GPUs have been becoming an indispensable computing platform in data centers, and co-locating multiple applications on the same GPU is widely used to improve resource utilization. However, performance interference due to uncontrolled resource contention severely degrades the performance of co-locating applications and fails to deliver satisfactory user experience. In this paper, we present SMGuard, a software approach to flexibly manage the GPU resource usage of multiple applications under co-location. We also propose a capacity based GPU resource model CapSM, which provisions the GPU resources in a fine-grained granularity among co-locating applications. When co-locating latency-sensitive applications with batch applications, SMGuard can prevent batch applications from occupying resources without constraint using quota based mechanism, and guarantee the resource usage of latency-sensitive applications with reservation based mechanism. In addition, SMGuard supports dynamic resource adjustment through evicting the running thread blocks of batch applications to release the occupied resources and remapping the uncompleted thread blocks to the remaining resources, which avoids the relaunch of the preempted kernel. The SMGuard is a pure software solution that does not rely on special GPU hardware or programming model, which is easy to adopt on commodity GPUs in data centers. Our evaluation shows that SMGuard improves the average performance of latency-sensitive applications by 9.8× when co-located with batch applications. In the meanwhile, the GPU utilization can be improved by 35 percent on average.
40
Rodinia: A benchmark suite for heterogeneous computing
Shuai Che, Michael Boyer, Jiayuan Meng et al. · 2009 · 3K citations
Analyzing CUDA workloads using a detailed GPU simulator
Ali Bakhoda, George L. Yuan, Wilson Wai Lun Fung et al. · 2009 · 1.7K citations
Christina Delimitrou, Christos Kozyrakis · 2014 · 698 citations
The Scalable Heterogeneous Computing (SHOC) benchmark suite
Anthony Danalis, Gabriel Marin, Collin McCurdy et al. · 2010 · 668 citations
Jason Mars, Lingjia Tang, Robert Hundt et al. · 2011 · 604 citations