[论文解读] CPU and/or GPU: Revisiting the GPU Vs. CPU Myth
本文通过提出一种混合计算模型,挑战了CPU与GPU之间的二元对立,该模型在13种不同工作负载中同时利用CPU和GPU。使用两种混合平台——Intel i7-980X + Tesla T10 和 Intel E7400 + GT520——的结果表明,混合解决方案平均实现了90%的资源效率,并优于独立的CPU或GPU实现,证明在现代异构系统中,协同处理可最大化性能与效率。
Parallel computing using accelerators has gained widespread research attention in the past few years. In particular, using GPUs for general purpose computing has brought forth several success stories with respect to time taken, cost, power, and other metrics. However, accelerator based computing has signifi- cantly relegated the role of CPUs in computation. As CPUs evolve and also offer matching computational resources, it is important to also include CPUs in the computation. We call this the hybrid computing model. Indeed, most computer systems of the present age offer a degree of heterogeneity and therefore such a model is quite natural. We reevaluate the claim of a recent paper by Lee et al.(ISCA 2010). We argue that the right question arising out of Lee et al. (ISCA 2010) should be how to use a CPU+GPU platform efficiently, instead of whether one should use a CPU or a GPU exclusively. To this end, we experiment with a set of 13 diverse workloads ranging from databases, image processing, sparse matrix kernels, and graphs. We experiment with two different hybrid platforms: one consisting of a 6-core Intel i7-980X CPU and an NVidia Tesla T10 GPU, and another consisting of an Intel E7400 dual core CPU with an NVidia GT520 GPU. On both these platforms, we show that hybrid solutions offer good advantage over CPU or GPU alone solutions. On both these platforms, we also show that our solutions are 90% resource efficient on average. Our work therefore suggests that hybrid computing can offer tremendous advantages at not only research-scale platforms but also the more realistic scale systems with significant performance gains and resource efficiency to the large scale user community.
研究动机与目标
- 挑战当前认为仅使用GPU计算可提供更优性能的普遍观念,主张采用CPU+GPU的集成利用方式。
- 评估在具有多样工作负载的真实、通用规模平台上,混合计算的可行性与优势。
- 证明CPU与GPU可被并行主动使用,避免加速器单用模型中常见的资源闲置问题。
- 探索算法设计模式——工作分担与任务划分——以实现在异构架构上的高效混合执行。
- 提供实证证据表明,混合解决方案在性能与资源效率方面均优于仅使用CPU或仅使用GPU的方法。
提出的方法
- 选取13种涵盖数据库、图像处理、稀疏矩阵核函数和图算法的多样化工作负载,以在不同领域测试混合计算。
- 在两种平台上实现混合解决方案:高端配置(6核i7 + Tesla T10)和低端配置(双核E7400 + GT520)。
- 采用两种算法策略:工作分担(将问题分解并分配给CPU与GPU)和任务划分(将算法的不同部分分配给不同设备)。
- 通过对比独立的CPU与GPU实现,测量性能与资源效率。
- 使用执行时间、加速比和资源利用率等性能指标,评估效率与可扩展性。
- 分析工作负载特征(如内存访问模式、SIMD并行性),以指导CPU与GPU之间最优的任务映射。
实验结果
研究问题
- RQ1在广泛多样的工作负载范围内,混合CPU+GPU计算是否能优于独立的CPU或GPU解决方案?
- RQ2并行使用CPU与GPU相较于仅依赖单一加速器,能带来多大的性能与效率提升?
- RQ3CPU与GPU组合的选择如何影响在通用平台上的混合计算可行性与性能表现?
- RQ4哪些算法策略(如工作分担、任务划分)能够实现CPU与GPU资源的高效且均衡利用?
- RQ5在具有异构架构的真实系统中,混合计算在多大程度上可实现高资源效率(如90%的利用率)?
主要发现
- 在两种平台上的全部13项测试工作负载中,混合解决方案始终优于仅使用CPU或仅使用GPU的实现。
- 平均而言,混合解决方案实现了90%的资源效率,表明对可用计算资源的近乎最优利用。
- 高端平台(i7-980X + Tesla T10)和低端平台(E7400 + GT520)均通过混合执行显著提升了性能。
- 具有不规则内存访问或低SIMD并行性的工作负载——传统上对GPU不友好——因CPU的参与而获得显著收益。
- 本研究证实,混合计算不仅适用于高端系统,也适用于低成本、通用平台,具有可行性与有效性。
- 结果支持从“CPU对GPU”的思维模式转向“CPU与GPU并用”的范式,协同处理可释放更高的性能与效率。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。