在 NVIDIA V100 GPU 上通过 8 步达到 3.7 TFLOP/s:Roofline 分析与其他技巧
分布式、并行与集群计算
2020-09-24 v4 硬件体系结构
性能
摘要
性能优化可能是一项艰巨的任务,尤其是当硬件架构变得越来越复杂时。本文取自材料科学代码 BerkeleyGW 中的一个核函数,并展示若干性能分析与优化技术。尽管面临高寄存器用量、低占用率、复杂数据访问模式以及若干长延迟指令等挑战,我们通过在 NVIDIA V100 GPU 上采用 8 个优化步骤,实现了 3.7 TFLOP/s 的双精度性能。这相当于标称频率 1312 MHz 下理论峰值 6.7 TFLOP/s 的 55%,以及基于我们 58% FMA 比率的更定制化峰值 5.3 TFLOP/s 的 70%。文中展示了一系列用于分析此 OpenACC 核函数并优化其性能的技术,包括使用分层 Roofline 性能模型和性能工具 Nsight Compute。该核函数展现出的计算特征在许多高性能计算(HPC)应用中常见,预计对广大 HPC 开发者和计算科学家在 NVIDIA GPU 上追求更高性能时非常有帮助。
引用
@article{arxiv.2008.11326,
title = {8 Steps to 3.7 TFLOP/s on NVIDIA V100 GPU: Roofline Analysis and Other Tricks},
author = {Charlene Yang},
journal= {arXiv preprint arXiv:2008.11326},
year = {2020}
}
备注
5 pages, 8 figures