A Performance Study of the 2D Ising Model on GPUs
二维伊辛模型的模拟被用作基准,以显示图形处理单元(GPU)的计算能力。GPU上现在提供的丰富编程环境和灵活的硬件功能使我们能够快速试验几种实现思路:一种简单的基于模板的算法,将模板操作重新转换为矩阵乘法,以利用NVIDIA GPU上提供的Tensor Core,以及高度优化的多自旋编码方法。使用CUDA中提供的托管内存API,可以在多GPU NVIDIA DGX-2服务器上简单高效地分发这些实现。我们表明,即使是一个基本的GPU实现可以优于目前的结果发表在TPU和优化的多GPU实现可以模拟非常大的晶格比自定义FPGA解决方案更快。
2019-06-14 cs.DC
Hierarchical Roofline Analysis: How to Collect Data using Performance Tools on Intel CPUs and NVIDIA GPUs
本文概述了一系列收集英特尔CPU和NVIDIA GPU上必要性能数据的方法,以进行分层Roofline分析。截至2020年年中,英特尔Advisor和NVIDIA Nsight Compute这两个供应商性能工具已将Roofline分析集成到其支持的功能集中。本文填补了当这些工具不可用时,或者当用户希望为某些分析提供更定制的工作流程时的空白。具体来说,我们将讨论如何在英特尔架构上使用英特尔Advisor、RRZE LIKWID、英特尔Intel Processor和英特尔Amplifier,以及如何在NVIDIA架构上使用nvprof、Nsight Compute指标和Nsight Compute部分文件。这些工具将用于收集存储层次结构中尽可能多的存储器/高速缓存级别的信息,以便深入了解应用程序的数据重用和高速缓存位置特性。
2020-10-04 cs.AR cs.DC cs.PF
Accelerating Radiation Therapy Dose Calculation with Nvidia GPUs
放射治疗计划(RTP)是计划适当的外部射束放射治疗以对抗人类患者癌症的过程。RTP是一项复杂且计算密集型的任务,通常需要很长时间(几个小时)来计算。减少这一时间可以提高诊所的生产力和更复杂的治疗计划,这可以实现更好的治疗。最先进的医疗设施使用通用处理器(CPU)来执行RTP过程中的许多步骤。在本文中,我们探索使用加速器,以减少RTP计算时间。我们专注于使用图形处理单元(GPU)计算剂量的步骤,我们认为GPU是这种计算类型的绝佳候选者。接下来,我们为自定义稀疏矩阵向量乘法(SpMV)创建了一个高度优化的实现,该实现对最先进的SpMV库中不可用的数值格式进行操作(例如,Ginkgo和cuSPARSE)。我们表明,我们的实现是几倍的速度比基线(高达4倍),并具有更高的操作强度比类似(但不同)的版本,如银杏和cuSPARSE。
2021-09-19 cs.DC
Optimization and Portability of a Fusion OpenACC-based FORTRAN HPC Code from NVIDIA to AMD GPUs
本文介绍了将基于 FORTRAN 和 OpenACC 的融合模拟工具 CGYRO 从 NVIDIA 移植到 AMD GPU 的经验,通过针对 AMD 的代码优化使其达到预期性能,并在 NVIDIA GPU 上获得了意外的速度提升。
2023-05-17 cs.DC cs.PF physics.plasm-ph
HISQ inverter on Intel Xeon Phi and NVIDIA GPUs
格点QCD模拟的运行时间由一个小内核控制,它计算一个向量与一个稀疏矩阵的乘积,称为“Dslash”算子。因此,该内核经常针对各种HPC架构进行优化。在本文中,我们比较了英特尔至强融核与当前基于开普勒的NVIDIA Tesla GPU运行共轭梯度求解器的性能。通过同时反转多个向量,将更多的并行性暴露给加速器,我们在两种架构上都获得了250 GFlop/s的性能。这使反演的性能提高了一倍多。我们给出了一个简短的概述这两种架构,讨论了一些细节的实施和所需的努力,以获得所取得的性能。
2014-09-04 cs.DC hep-lat
Characterizing Concurrency Mechanisms for NVIDIA GPUs under Deep Learning Workloads
Worcester Polytechnic Institute(伍斯特理工学院)
我们研究了NVIDIA新的Ampere GPU微架构在深度学习训练和推理工作负载下可用的并发机制的性能。与以前的研究,把GPU作为一个黑盒子,我们研究调度在微架构的水平。我们发现,缺乏细粒度的抢占机制,强大的任务优先级选项,竞争意识线程块放置策略限制了NVIDIA的并发机制的有效性。总之,深度学习工作负载的顺序性及其波动的资源需求和内核运行时,使得在当前NVIDIA硬件上执行此类工作负载,同时保持一致的高利用率和较低的可预测周转时间变得困难。
2021-10-01 cs.AR cs.DC cs.LG
Metrics and Design of an Instruction Roofline Model for AMD GPUs
由于Frontier超级计算机最近的发布,许多科学应用程序开发人员正在努力使他们的应用程序与AMD架构(CPU-GPU)兼容,这意味着远离传统的CPU和NVIDIA-GPU系统。由于目前针对AMD GPU的分析工具的局限性,这一转变在如何衡量AMD GPU上的应用程序性能方面留下了空白。在本文中,我们使用AMD的ROCProfiler和基准测试工具BabelStream(HIP实现)为AMD GPU设计了一个指令屋顶模型,作为一种测量应用程序在新AMD硬件上的指令和内存事务性能的方法。具体来说,我们为一个案例研究科学应用程序PIConGPU创建了指令屋顶模型,PIConGPU是一个开源的粒子模拟应用程序,用于在NVIDIA V100、AMD Radeon Instinct MI60和AMD Instinct MI 100 GPU上进行等离子体和激光等离子体物理模拟。在查看PIConGPU中感兴趣的多个内核的性能时,我们发现,尽管AMD MI 100 GPU与NVIDIA V100 GPU相比实现了相似或更好的执行时间,但分析工具的差异使得很难比较这两种架构的性能。当查看执行时间,GIPS和指令强度时,AMD MI60在这项工作中使用的三个GPU中表现最差。
2021-11-10 cs.DC
Benchmarking the Nvidia GPU Lineage: From Early K80 to Modern A100 with Asynchronous Memory Transfers
对于许多人来说,图形处理单元(GPU)提供了可靠的计算能力来源。最近,Nvidia推出了其第9代HPC级GPU Ampere 100,声称比前几代GPU有显著的性能改进,特别是对于AI工作负载,并引入了新的架构功能,如异步数据移动。但是,A100在非AI基准测试中的表现如何?我们能否期望A100提供我们已经习惯于使用前几代GPU的应用程序改进?在本文中,我们对A100 GPU进行了基准测试,并将其与前四代GPU进行了比较,特别关注于实证量化我们得出的性能预期,以及-如果这些预期无法实现-调查引入的数据移动功能是否可以抵消任何最终的性能损失?我们发现,A100提供的性能提高比前几代的著名的Rodinia基准套件少;我们表明,这些性能异常可以通过巧妙地使用新的数据移动功能,我们微基准测试,并证明在哪里(更重要的是,如何),他们应该使用补救。
2021-07-03 cs.DC
AnySeq/GPU: A Novel Approach for Faster Sequence Alignment on GPUs
近年来,由下一代测序(NGS)技术产生的快速增加的读段数量已经推动了对生物信息学中的序列比对的有效实施的需求。然而,当前最先进的方法不能利用具有接近峰值性能的现代GPU的大规模并行处理能力。我们提出了AnySeq/GPU-一个序列比对库,该库通过使用经线重排和半精度算法最小化存储器访问来增强AnySeq 1库,并采用一种新的方法来加速GPU上的动态规划(DP)比对。我们的实现基于AnyDSL编译器框架,该框架允许通过保证部分评估进行方便的零成本抽象。我们表明,我们的方法在NVIDIA和AMD GPU上实现了超过80%的峰值性能,从而超过了基于GPU的比对库AnySeq 1,GASAL 2,ADEPT和NVBIO至少3.6倍,同时在相同硬件上运行时,在不同的比对场景和序列长度中,这些工具的平均加速比为19.2倍。这使得NVIDIA GV 100的吞吐量高达1.7 TCUPS(每秒万亿次单元更新),单台NVIDIA A100的半精度运算吞吐量高达3.3 TCUPS,AMD MI 100的吞吐量高达3.8 TCUPS。
2022-05-16 cs.DC
Part-time Power Measurements: nvidia-smi's Lack of Attention
本研究揭示nvidia-smi功率测量存在采样占比低等机制缺陷,通过微基准测试在多代GPU上验证问题,提出优化方案使能耗测量误差平均降低35%、最高达65%。
2024-12-12 cs.AR cs.DC
Confidential Computing on NVIDIA Hopper GPUs: A Performance Benchmark Study
Phala Network;Fudan University(复旦大学)
本研究评估了NVIDIA Hopper GPU上启用TEE对LLM推理的性能影响,发现GPU内计算开销极小,主要瓶颈为PCIe数据传输,典型查询开销低于7%。
2024-11-05 cs.AI cs.DC cs.PF
Optimizing Bloom Filters on Modern GPUs
NVIDIA Corporation(英伟达);University of Wisconsin-Madison(威斯康星大学麦迪逊分校);Johannes Gutenberg University(约翰内斯·古腾堡大学)
为现代GPU架构优化布洛赫滤波器,通过向量化、线程合作和计算延迟的优化,提升吞吐量并平衡速度与精度。
2026-08-12 cs.DC
Memory transfer optimization for a lattice Boltzmann solver on Kepler architecture nVidia GPUs
求解流体流动的Lattice Boltzmann方法(LBM)由于局部操作在算法中的普遍性,自然非常适合于大规模并行计算的有效实现。本文介绍并分析了一个三维格子玻尔兹曼求解器的性能,优化第三代nVidia GPU硬件,也被称为“开普勒”。我们提供了一个审查以前的优化策略和分析数据读/写时间为不同的内存类型。在LBM中,时间传播步骤(称为流式传输)涉及将数据转移到相邻位置,并且是并行性能的核心;在这里,我们将研究三种使用不同硬件选项的方法。其中两个利用了GPU的“性能增强”功能;共享内存和基于开普勒的GPU中的新洗牌指令。这些与标准的数据传输相比,后者依赖于优化的存储来增加合并访问。结果表明,更简单的方法是最有效的,因为需要大量的寄存器,每个线程在LBM限制了块的大小,从而降低了这些特殊功能的效率。详细的结果,获得了D3 Q19 LBM求解器,这是基准上的nVidia K5000 M和K20 C GPU。在后一种情况下,探索了只读数据缓存的使用,并实现了每秒超过1036百万次晶格更新(MLUPS)的峰值性能。还报告了求解器性能中出现的周期性瓶颈,据信与硬件相关;迭代时间的峰值发生在两个GPU的频率约为11 Hz,与问题的大小无关。
2013-09-08 cs.DC cs.PF
MT4G: A Tool for Reliable Auto-Discovery of NVIDIA and AMD GPU Compute and Memory Topologies
Technical University of Munich(慕尼黑工业大学)
本文提出开源供应商无关工具MT4G,结合现有API与50余个微基准测试及统计方法,自动可靠地发现NVIDIA和AMD GPU的计算与内存拓扑,并在性能建模、瓶颈分析和动态资源划分三个工作流中验证其通用性与实用性。
2025-11-08 cs.DC
Low Overhead Instruction Latency Characterization for NVIDIA GPGPUs
在过去的十年中,计算机系统行业发生了转变,其中异构计算变得普遍。图形处理单元(GPU)现在存在于超级计算机到手机和平板电脑中。GPU用于图形操作以及通用计算(GPGPU),以提高计算密集型应用程序的性能。然而,超出供应商提供的未披露特性的百分比并不小。在本文中,我们介绍了一个非常低的开销和便携式的分析,揭示在GPU流水线中执行的每个指令的延迟(S)和各种存储层次结构的访问开销在微架构级别的GPU中发现。此外,我们还展示了CUDA编译器可以在各种不同的语言上执行的各种优化的影响。我们对来自五个不同代/架构的七种不同高端NVIDIA GPU进行了评估:Kepler,Maxwell,Pascal,Volta和Turing。本文的结果可以帮助架构师对这些GPU的性能有一个准确的描述,这将有助于对硬件进行准确的建模。此外,软件开发人员可以对其应用程序进行明智的优化。
2019-09-01 cs.DC cs.PF
A GEMM interface and implementation on NVIDIA GPUs for multiple small matrices
Tech-X Corporation(Tech-X公司)
本文提出一种在NVIDIA GPU上处理多个小矩阵的GEMM接口与实现,针对小于16的矩阵尺寸,实现速度比CUDA Toolkit 5.0的批量cuBLAS快30%至600%,适用于有限元计算等应用。
2013-04-26 cs.DC cs.MS cs.NA
Benchmarking Confidential Computing Performance on NVIDIA Blackwell GPUs
本文在NVIDIA B200 GPU上结合Intel TDX机密VM与NVIDIA Blackwell GPU的CC技术,测试大语言模型推理/训练在TEE中的性能,得出正确配置下机密推理吞吐量仅增1%-3%等结果并给出部署指南。
2026-09-02 cs.CR cs.DC
Performance of Kepler GTX Titan GPUs and Xeon Phi System
NVIDIA的新架构Kepler通过新的流式多处理器SMX显著提高了GPU的性能。除了性能,NVIDIA还推出了许多新技术,如直接并行,hyper-Q和GPU Direct with RDMA。除了其他常见的GPU,英伟达还发布了另一个开普勒'GeForce' GPU命名为GTX泰坦。GeForce GTX Titan不仅适用于游戏,还适用于CUDA的高性能计算。尽管如此,它还是比Kepler Tesla GPU便宜得多。同时,Intel推出了新的多集成核(MIC)系统Xeon Phi。理论上,Xeon Phi协处理器可以提供与NVIDIA Kepler GPU相似的性能,但实际上,它的性能明显不如GTX Titan。
2013-11-04 cs.DC hep-lat physics.comp-ph
Serving LLMs in HPC Clusters: A Comparative Study of Qualcomm Cloud AI 100 Ultra and NVIDIA Data Center GPUs
University of California, San Diego(加州大学圣地亚哥分校)
本研究在国家研究平台中对比高通Cloud AI 100 Ultra与英伟达A100 GPU的大语言模型推理表现,发现前者能效更优、硬件分配更细粒度,为能源受限的高性能计算大模型部署提供参考。
2025-10-28 cs.AI cs.DC
Batched Kronecker product for 2-D matrices and 3-D arrays on NVIDIA GPUs
Tech-X Corporation(Tech-X公司)
本文提出一种在NVIDIA GPU上高效计算批量克罗内克积的方法,适用于相同克罗内克积矩阵但批量运算中操作数变化的场景,通过优化内存使用和计算速度提升性能。
2013-04-26 cs.DC cs.MS cs.NA
PortLBM: A Portable Lattice Boltzmann Tool Leveraging SYCL on AMD, NVIDIA, and Intel GPUs
University of Stuttgart(斯图加特大学)
研究针对GPU加速下LBM的跨平台可移植性问题,提出基于SYCL的PortLBM框架,评估其在不同GPU架构上多种数据布局和算法变体对模拟吞吐量的影响,强调在异构计算环境中便携式LBM软件的必要性。
2026-07-24 cs.DC cs.PF
SGDRC: Software-Defined Dynamic Resource Control for Concurrent DNN Inference on NVIDIA GPUs
针对GPU上并发DNN推理的资源分配难题,提出软件定义的SGDRC,通过逆向工程与缓存着色消除VRAM冲突,动态分配带宽和计算单元,提升SLO达标率与吞吐量。
2025-03-26 cs.AR cs.DC cs.PF
Combining Performance and Productivity: Accelerating the Network Sensing Graph Challenge with GPUs and Commodity Data Science Software
针对匿名网络感知图挑战赛的端到端复杂工作负载,研究用数据科学语言解读GraphBLAS公式,基于NVIDIA RAPIDS生态的现成ETL工具实现GPU加速,在多款NVIDIA GPU上较CPU版Pandas代码获百倍至千倍以上加速。
2025-09-03 cs.DC
Performance Assessment of OpenMP Compilers Targeting NVIDIA V100 GPUs
异构系统正变得越来越普遍。为了利用这些系统的丰富计算资源,应用程序开发人员需要健壮的编程模型,以便将遗留代码从今天的系统无缝迁移到明天的系统。在过去十多年中,指令已被确立为解决新兴系统的方案挑战的有希望的途径之一。这项工作的重点是在五个代理应用程序上应用和演示OpenMP卸载指令。我们观察到,性能差异很大,从一个编译器到另一个,我们的工作的一个重要方面是报告最佳实践的应用程序开发人员使用的OpenMP卸载编译器。虽然有些问题可以由开发人员解决,但还有一些问题必须报告给编译器供应商。通过重构OpenMP卸载指令,当使用Clang编译器时,我们在NERSC的Cori系统上获得了su 3代理应用程序的18倍加速,当使用Cori上的Cray-llvm编译器时,通过在拉普拉斯迷你应用程序中切换最大缩减以添加缩减,获得了15.7倍加速。
2020-12-02 cs.DC cs.PF
Porting and optimizing UniFrac for GPUs
UniFrac是微生物组研究中常用的指标,用于相互比较微生物组概况(“β多样性”)。最近实施的条纹UniFrac添加的能力,分裂成许多独立的子问题,并表现出近线性缩放的问题。在本文中,我们描述了将Striped Unifrac移植和优化到GPU的步骤。我们将在已发布的地球微生物组项目数据集上计算UniFrac的运行时间从英特尔至强E5-2680 v4 CPU上的13小时减少到NVIDIA Tesla V100 GPU上的12分钟,以及配备NVIDIA GTX 1050的笔记本电脑上的约1小时(精度略有损失)。在包含113 k个样本的较大数据集上计算UniFrac,将CPU上的运行时间从一个多月减少到V100上的不到2小时,以及NVIDIA RTX 2080 TI GPU上的9小时(精度略有损失)。这是通过使用OpenACC生成GPU卸载代码和改进内存访问模式来实现的。一个BSD许可的实现是可用的,它产生一个由任何程序设计语言支持的C共享库。
2020-05-12 cs.DC q-bio.QM
Analyzing the Performance Portability of SYCL across CPUs, GPUs, and Hybrid Systems with SW Sequence Alignment
本研究通过SW序列比对案例,系统评估了SYCL在NVIDIA、Intel和AMD的CPU、GPU及混合架构上的性能可移植性,证明其可作为异构计算环境中可行的统一编程模型。
2025-04-14 cs.DC
HetCCL: Accelerating LLM Training with Heterogeneous GPUs
snu-cse(首尔国立大学计算机科学与工程系);snu-ds(首尔国立大学数据科学研究院);moreh(Moreh公司);samsung(三星研究)
HetCCL通过统一异构GPU的集体通信库,实现跨供应商的高效训练,提升异构环境下的大语言模型训练性能。
2026-01-30 cs.DC cs.LG
Effective Extensible Programming: Unleashing Julia on GPUs
GPU和其他加速器是用于加速计算密集型可并行化应用的流行设备。然而,对这些设备进行编程是一项艰巨的任务。编写高效的设备代码是具有挑战性的,并且通常是用低级程序设计语言来完成的。高级语言很少得到支持,或者不与高级语言生态系统的其余部分集成。为了克服这一点,我们提出了编译器的基础设施,有效地增加了对新的硬件或环境的支持,现有的程序设计语言。我们通过在Julia程序设计语言中添加对NVIDIA GPU的支持来评估我们的方法。通过与现有编译器的集成,我们大大降低了实现和维护新编译器的成本,并促进了现有应用程序代码的重用。此外,使用高级Julia程序设计语言可以实现GPU编程的新的动态方法。这大大提高了程序员的工作效率,同时保持与官方NVIDIA CUDA工具包相似的应用程序性能。
2017-12-08 cs.DC cs.PL
VUDA: Enabling Controlled Spatial Sharing of Graphics and Compute on NVIDIA GPUs
Shanghai Jiao Tong University(上海交通大学)
VUDA通过打破CUDA与Vulkan的执行隔离,实现计算与图形任务的空间并行,提升GPU利用率并减少端到端延迟。
2026-09-29 cs.AI cs.DC cs.OS
FlashMLA-ETAP: Efficient Transpose Attention Pipeline for Accelerating MLA Inference on NVIDIA H20 GPUs
Tencent(腾讯);College of Computer Science and Software Engineering, Shenzhen University(深圳大学计算机科学与软件工程学院);College of Artificial Intelligence, Shenzhen Polytechnic University(深圳职业技术学院人工智能学院)
针对单多GPU服务器部署DeepSeek-R1 671B模型时多头潜在注意力(MLA)推理效率低的问题,提出FlashMLA-ETAP框架,通过高效转置注意力流水线(ETAP)重配置注意力计算,在NVIDIA H20 GPU上实现2.78倍加速,并保持数值稳定性。
2026-06-02 cs.AI cs.DC cs.LG
Block-Relaxation Methods for 3D Constant-Coefficient Stencils on GPUs and Multicore CPUs
块迭代法作为多重网格法的光滑器、Krylov方法的预处理器和对角占优线性方程组的求解器是非常重要的。开发适用于当前和不断发展的GPU和多核CPU系统的强大而高效的算法是一项重大挑战。我们解决这个问题的情况下,常系数的stenestransom结构的三维均匀和自适应细化网格上的椭圆型偏微分方程的解决方案中产生的。鲁棒性,高度并行实现块雅可比和混沌块高斯-赛德尔算法的块精确反演开发使用不同的并行化技术。NVIDIA费米GPU和AMD多核系统的实验结果。
2019-07-15 cs.DC
Efficient Synchronization Primitives for GPUs
在本文中,我们将重新审视同步原语的设计-特别是屏障、互斥和信号量-以及它们如何应用于GPU。由于GPU和CPU的硬件和编程模型的差异,以前的实现是不够的。我们在CUDA中创建了新的实现,并通过在两种最常用的GPU(NVIDIA的Tesla和Fermi级GPU)上运行一组内存系统基准测试,分析了GPU上的旋转性能以及GPU上的休眠方法。从我们的研究结果,我们定义了更高层次的原则,是有效的通用众核处理器,其中最重要的是限制同步操作所需的原子访问的数量,因为原子访问比常规的内存访问慢。我们使用基准测试的结果来批判现有的同步算法并指导我们的新实现,然后定义GPU的抽象,以根据内存系统的行为对任何GPU进行分类。我们使用这种抽象来创建适当的实现的原语专门针对GPU,并分析这些算法的性能特斯拉和费米。然后,我们根据抽象的特征预测未来GPU的性能。我们还研究了自旋等待和睡眠等待在每个原语中的作用,以及它们的性能如何根据机器抽象而变化,然后根据GPU的特性和预期的争用给出了一组指导方针。
2011-10-20 cs.DC cs.DS cs.GR
Multi-GPU Acceleration of the iPIC3D Implicit Particle-in-Cell Code
iPIC3D是一个广泛使用的大规模并行Particle-in-Cell代码,用于模拟空间等离子体。但是,它目前的实现不支持在多个GPU上执行。本文描述了iPIC3D粒子移动器到GPU的移植以及在多个GPU上提高性能和并行扩展的优化步骤。我们分析了两个GPU集群上的移动器的强大的可伸缩性,并评估其性能和加速。优化的GPU版本使用固定内存和异步数据预取,在配备NVIDIA K80和V100 GPU的两种不同系统上的性能优于相应的CPU版本5 - 10倍。
2019-04-07 cs.DC
Static Batching of Irregular Workloads on GPUs: Framework and Application to Efficient MoE Model Inference
Alibaba Group(阿里巴巴集团)
针对GPU上不规则工作负载难以安排和执行的问题,提出将其静态批处理为单kernel的通用框架,并应用于MoE模型推理,实现的CUDA kernel在H800和H20 GPU上分别达到91%和95%的峰值Tensor Core吞吐量。
2025-01-27 cs.DC cs.LG
A Symbolic Emulator for Shuffle Synthesis on the NVIDIA PTX Code
各种应用程序通过自动化工具利用GPU,这些工具试图自动利用GPU并行架构的可用性能。基于指令的编程模型(如OpenACC)就是这样一种方法,它只需将代码注释粘附到代码循环即可轻松实现并行计算。然而,这种抽象模型通常会阻止程序员进行额外的低级优化以利用GPU的高级架构特性,因为实际生成的计算对应用程序开发人员是隐藏的。本文描述并实现了一种新的灵活的优化技术,通过插入一个代码仿真器阶段的尾端编译管道。我们的工具通过替换动态信息来模拟使用符号分析生成的代码,从而允许应用进一步的低级代码优化。我们实现了我们的工具,以支持CUDA和OpenACC指令作为编译管道的前端,从而实现了以前不可能实现的OpenACC的低级GPU优化。我们展示了我们的工具的能力,通过自动化扭曲级洗牌指令,即使是先进的GPU程序员很难使用。最后,通过基准测试套件和复杂的应用程序代码评估我们的工具,我们提供了一个详细的研究,以评估在四代GPU架构中shuffle指令的好处。
2023-01-26 cs.DC
A Metaprogramming and Autotuning Framework for Deploying Deep Learning Applications
近年来,深度神经网络(DNN)在广泛的应用中取得了很好的效果。图形处理单元(GPU)是导致DNN当前流行的一个关键因素。然而,尽管硬件灵活性和软件编程工具链日益成熟,但高效率的GPU编程仍然很困难:它具有高复杂性、低生产力和低便携性的缺点。像NVIDIA这样的GPU供应商已经花费了大量的精力来编写专用DNN库。然而,在其他硬件目标上,特别是移动GPU,这样的供应商库通常不可用。因此,开发用于DNN操作的可移植、开放、高性能、高能效的GPU代码将使基于DNN的算法得到更广泛的部署。为此,这项工作提出了一个框架,以实现跨硬件平台和编程模型的DNN计算的高效GPU编程。特别是,该框架提供了对元编程、自动调优和DNN定制的数据类型的特定支持。使用我们的框架,我们探索在三个不同的硬件目标上实现DNN操作:NVIDIA,AMD和Qualcomm GPU。在NVIDIA GPU上,我们展示了OpenCL和CUDA之间的可移植性以及与供应商库相比的竞争性能。在Qualcomm GPU上,我们证明了我们的框架能够有效地开发特定于目标的优化,并实现合理的绝对性能。最后,在AMD GPU上,我们展示了初步结果,表明我们的框架可以在新平台上以最小的努力产生合理的性能。
2016-11-21 cs.DC cs.MS cs.NE
Efficient and High-quality Sparse Graph Coloring on the GPU
图着色已被广泛用于并行计算中的并发发现。为了加速大规模数据集的图着色,已经提出了利用现代GPU的并行算法。现有的GPU实现要么具有有限的性能,要么产生不令人满意的着色质量(分配的颜色太多)。我们提出了一个工作效率高的并行图着色的GPU上实现具有良好的着色质量。我们的方法采用了投机贪婪计划,内在地产生更好的质量比找到最大独立集的方法。为了在GPU上实现高性能,我们改进了算法,以利用有效的运算符和减少冲突。我们还结合了常见的优化技术,以进一步提高性能。我们的方法进行评估与合成和现实世界的稀疏图形的NVIDIA GPU。实验结果表明,我们提出的实现实现平均4.1倍(高达8.9倍)的串行实现的加速比。它的性能也优于现有的GPU实现从NVIDIA ® SPARSE库(2.2倍的平均加速),同时产生更好的着色质量比SPARSE。
2020-01-17 cs.DC
Comparison of HPC Architectures for Computing All-Pairs Shortest Paths. Intel Xeon Phi KNL vs NVIDIA Pascal
如今,高性能计算系统的主要挑战之一是通过将能耗保持在可接受的水平来提高其性能。在这种情况下,整合策略包括使用GPU或众核英特尔至强融核处理器等加速器。在这项工作中,NVIDIA Pascal和英特尔至强融核骑士登陆架构的设备进行了描述和比较。选择Floor-Warshall算法作为图形和内存受限应用的代表案例,开发了优化的实现,以分析和比较两种设备的性能和能效。正如预期的那样,Xeon Phi在考虑双精度数据时表现出优越性。然而,与我们初步分析中所考虑的相反,我们发现使用单精度数据类型时,两种设备的性能和能效相当。
2021-05-15 cs.DC
GPU-Accelerated Discontinuous Galerkin Methods: 30x Speedup on 345 Billion Unknowns
本文提出了一种在笛卡尔网格上离散无粘流体动力学控制方程--可压缩欧拉方程的间断Galerkin方法,并通过OCCA(一种统一的多线程硬件结构性能移植方法)将其应用于图形处理单元。与使用非CUDA感知MPI通信的仅CPU实现相比,在多达1,536个NVIDIA V100 GPU上实现了30倍的求解时间加速,并且在多达6,144个NVIDIA V100 GPU上实现了并行强大的可扩展性,解决了包含3,450亿个未知数的问题。CUDA-Aware MPI通信与非GPUDirect通信的比较表明,在由32个NVIDIA V100 GPU组成的8个节点上,速度提高了24%。
2020-08-31 cs.DC cs.NA cs.PF
SiFAR: Synchronization-Free All-Reduce for Low-Latency LLM Inference
NVIDIA(英伟达)
研究针对大语言模型推理中令牌生成延迟瓶颈,提出无同步全规约算法SiFAR。通过消除一次性算法写后写依赖、利用交换机片上规约等方法,减少全规约延迟,提升端到端吞吐量,在特定条件下取得显著性能提升。
2026-07-13 cs.DC
Optimization of Tensor-product Operations in Nekbone on GPUs
在CFD求解器Nek 5000中,计算主要由小张量运算的评估决定。Nekbone是Nek 5000的代理应用程序,之前已经通过混合OpenACC和CUDA方法移植到GPU上。在这项工作中,我们继续这项工作,并进一步优化Nekbone中的主张量积运算。我们的优化是在CUDA中完成的,并使用不同的2D线程结构逐层进行计算。这使我们能够使用循环展开以及有效地利用寄存器和共享内存。我们的实现,然后比较Pascal和Volta GPU架构上以前的GPU版本的Nekbone以及测量的车顶。结果表明,我们的实现优于以前的GPU Nekbone实现6- 10%。与实测的车顶相比,我们获得了Nvidia P100和V100 GPU在1024 - 4096个元素和多项式次数为9的输入下峰值性能的77 - 92%。
2020-05-27 cs.DC
A single-tree algorithm to compute the Euclidean minimum spanning tree on GPUs
本文提出了一种基于 Borůvka 的单树 GPU 算法来计算欧几里得最小生成树,通过高效最近邻算法减少距离计算,在多种硬件上展现出可移植性与可扩展性,并实现 4-24 倍加速。
2022-07-01 cs.DC
Decomposing Runtime, Kernel, and Quantization Speedups via a Matched FP16 Intermediate: A Hardware-Conditioned Case Study on Four NVIDIA RTX A5000 GPUs
University of Washington(华盛顿大学)
研究通过匹配的 FP16 中间层分解运行时、内核和量化加速,以四块 NVIDIA RTX A5000 GPU 为案例,分析加速各部分占比、分片影响因素等,得出运行时占主要加速比例,量化可扩展并发用户,还探讨了实例选择及有效性威胁。
2026-07-14 cs.DC cs.LG cs.PF
DARIS: An Oversubscribed Spatio-Temporal Scheduler for Real-Time DNN Inference on GPUs
DARIS通过空间共享、时间划分和超额订阅GPU资源,实现高吞吐、低延迟的实时DNN调度,并支持零延迟任务迁移,显著优于现有方法。
2025-04-08 cs.DC
GE-SpMM: General-purpose Sparse Matrix-Matrix Multiplication on GPUs for Graph Neural Networks
图神经网络(GNN)在各个领域都取得了显著的进步。稀疏矩阵-矩阵乘法(SpMM)是GNN中的基本运算符,它执行稀疏矩阵和稠密矩阵之间的乘法。在GPU等并行硬件上加速SpMM可能面临以下挑战:从GNN应用程序的角度来看,需要考虑兼容性。一般的GNN算法需要类似于SpMM的操作(例如,池化),这在当前高性能GPU库中不支持(例如,Nvidia cuSPARSE)。此外,在以前的实现中的复杂的预处理将导致沉重的数据格式转换开销在GNN框架。从GPU硬件的角度来看,GPU上的SpMV(稀疏矩阵向量)设计中的优化并不适用于SpMM。SpMM暴露了密集输出矩阵中的列并行性,但是从SpMV直接泛化导致对全局内存中的稀疏矩阵的低效的、未合并的访问。稀疏行数据可以在GPU线程之间重用,这在从SpMV继承的SpMM设计中是不可能的。为了应对这些挑战,我们提出了GE-SpMM。GE-SpMM对以最常见的压缩稀疏行(CSR)格式表示的稀疏矩阵执行类似于SpMM的操作,因此它可以嵌入到GNN框架中,无需预处理开销,并支持通用GNN算法。我们引入了合并行缓存方法来并行处理列,并确保合并访问稀疏矩阵数据。我们还提出了粗粒度的Warp合并,以减少GPU warp之间的冗余数据加载。在真实世界的图数据集上的实验表明,GE-SpMM比Nvidia cuSPARSE和GraphBLAST的加速比分别高达1.41倍和1.…
2020-07-07 cs.DC
A Versatile Software Systolic Execution Model for GPU Memory-Bound Kernels
本文提出了一种通用的高性能执行模型,灵感来自脉动阵列,内存受限的规则内核运行在CUDA使能的GPU。我们制定了一个脉动模型,转移部分和CUDA翘曲原语的计算。我们还采用寄存器文件作为缓存资源,以有效地操作整个模型。我们展示了所提出的模型的有效性和通用性,用于HPC中常见的各种模板内核,以及卷积内核(在深度学习工作负载中越来越重要)。我们的算法优于最先进的模板实现,包括复杂的时间和空间阻塞技术的实现,在两个最新的Nvidia架构:特斯拉V100和P100。对于一般滤波器大小和形状的2D卷积,我们的算法在V100和P100 GPU上的平均速度比Nvidia的NPP快2.5倍。
2019-09-06 cs.DC
Architecting for Hardware Diversity: Meta's End-to-End Co-Design for High-Performance AI Training on AMD GPUs
Meta;AMD
Meta针对异构硬件集群中AMD GPU性能可移植性问题,提出三项协同设计原则,实现推荐模型训练吞吐量最高1.5倍提升,相关成果已上游至开源PyTorch等生态。
2026-10-16 cs.AR cs.DC cs.LG
Model-Based Warp Overlapped Tiling for Image Processing Programs on GPUs
在GPU上执行图像处理流水线的领域特定语言(如Halide和Forma)通过以下方式进行操作:1)将图像划分为重叠的区块,以及2)融合循环以提高内存局部性。然而,当前的方法具有局限性:1)它们需要线程内块同步,这具有不小的成本,2)它们必须在需要更多重叠计算的小区块或增加共享存储器访问(并降低占用率)的大区块之间进行选择,以及3)它们的自动调度算法使用简化的GPU模型,这可能导致低效的全局存储器访问。我们提出了一种在GPU上执行图像处理流水线的新方法,该方法解决了这些限制,如下所述。1)我们融合循环以形成重叠的瓦片,这些瓦片适合单个经线,这允许我们使用轻量级经线同步。2)我们引入混合平铺,它存储在线程本地寄存器和共享内存的组合重叠的区域。因此,混合平铺要么通过减少共享内存使用来增加占用率,要么使用更大的平铺来减少重叠计算。3)我们提出了一个自动循环融合算法,考虑了影响GPU内核性能的几个因素。我们实现了这些技术在PolyMage-GPU,这是一个新的GPU后端PolyMage。我们的方法生成的代码比Halide的手动时间表更快:在NVIDIA GTX 1080Ti上快1.65倍,在NVIDIA Tesla V100上快1.33倍。
2020-09-08 cs.DC cs.PL
CRAC: Checkpoint-Restart Architecture for CUDA with Streams and UVM
在全球500强超级计算机中,搭载NVIDIA GPU的份额已经超过25%,并且还在继续增长。虽然容错是超级计算的关键问题,但目前还没有针对NVIDIA GPU上的CUDA应用程序的高效、可扩展解决方案。CRAC(Checkpoint-Restart Architecture for CUDA)是一种新的检查点重启解决方案,支持全系列CUDA应用程序的容错。CRAC结合了:低运行时开销(约1%或更少);快速检查点重启;支持可扩展CUDA流(有效利用所有数千个GPU核心);支持统一虚拟内存的全部功能(消除程序员在设备和主机之间迁移内存的负担)。CRAC通过在单个进程的内存中隔离应用程序代码(检查点)及其外部GPU通信(通过不可重入的CUDA库(非检查点))来实现其灵活的架构。这消除了早期方法中进程间通信的高开销,并且具有更少的限制。
2020-08-24 cs.DC
m-CUBES An efficient and portable implementation of multi-dimensional integration for gpus
多维数值积分的任务在物理学和其他科学领域中经常遇到,例如,在模拟物理系统中的系统不确定性和贝叶斯参数估计的影响。多维集成在CPU上通常是时间限制性的。在众核架构上的高效实现具有挑战性,因为集成空间中的工作负载无法事先预测。我们提出了m-Cubes,著名的拉斯维加斯算法在GPU上执行的一种新的实现。Vegas变换积分变量,然后使用所得空间的自适应分区计算Monte Carlo积分估计。m-Cubes通过在处理器之间保持相对均匀的工作负载来提高GPU的性能。因此,我们为Nvidia GPU优化的Cuda实现优于过去文献中提出的并行化方法。我们进一步证明了效率的m-Cubes通过评估一个六维积分从宇宙学应用,实现显着的加速比CUBA库的CPU实现的VEGAS更高的精度。我们还评估了标准的被积函数测试套件的m-立方体。m-Cubes的性能优于Cuba和GSL库的串行实现,速度快了几个数量级,同时保持了相当的准确性。我们的方法产生的加速比至少为10时,与公开的Monte Carlo基于GPU的实现。总之,m-Cubes可以使用标准库和自定义实现来解决昂贵的积分。一个现代的C++接口头实现使m-Cubes可移植,允许它在复杂的管道中使用,易于定义有状态积分。与非Nvidia GPU的兼容性是通过我们使用Kokkos框架的m-Cubes的初始实现来实现的。
2022-06-21 cs.DC cs.PF
Dissecting the NVIDIA Volta GPU Architecture via Microbenchmarking
每年都会推出新颖的NVIDIA GPU设计。这种快速的架构和技术进步,加上制造商不愿透露低级别的细节,使得即使是最熟练的GPU软件设计师也很难在微架构级别上保持最新的技术进步。为了解决这一关于新型NVIDIA GPU的公共微架构级信息的缺乏问题,独立研究人员采用了基于微基准的分析和发现。这导致了一系列多产的出版物,揭示了指令编码,内存层次结构的几何形状和每个级别的功能。也就是说,研究描述开普勒,麦克斯韦和帕斯卡架构的性能和行为。在这份技术报告中,我们将继续这一研究方向,展示通过微基准测试和指令集反汇编发现的NVIDIA Volta架构的微架构细节。此外,我们定量地比较我们的伏特发现对它的前辈,开普勒,麦克斯韦和帕斯卡。
2018-04-18 cs.DC cs.PF
SPUMA: a minimally invasive approach to the GPU porting of OPENFOAM
Cineca Supercomputing Centre(Cineca超级计算中心);Dipartimento di Ingegneria Industriale, Università degli Studi di Napoli Federico II(那不勒斯费德里科二世大学工业工程系)
SPUMA通过最小侵入式方法实现OPENFOAM在NVIDIA和AMD GPU上的高效移植,提升了计算效率并降低了能耗。
2025-12-22 cs.DC cs.MS physics.flu-dyn
HetGPU: The pursuit of making binary compatibility towards GPUs
针对异构GPU二进制不兼容问题,提出hetGPU系统,通过编译器、运行时和抽象层实现单一二进制跨NVIDIA、AMD、Intel和Tenstorrent执行,并支持低开销实时迁移。
2025-06-19 cs.AR cs.DC
Performance Isolation for Inference Processes in Edge GPU Systems
Universitat Politècnica de València(瓦伦西亚理工大学)
研究边缘GPU系统中推理过程的性能隔离,分析MPS、MIG和绿色上下文等机制,通过性能测试等方法,发现MIG隔离性高,绿色上下文对边缘设备有潜力,同时指出局限与研究方向。
2026-07-14 cs.DC cs.OS