2023 · 12 citations · 30 references
ComputingComputer ScienceHigh-performance ComputingComputer ArchitectureComputer GraphicsParallel ComputingData Movement OptimizationGraphics Processing Unit ArchitectureGraphics Processing Unit ComputingGraphics Processing UnitsMemory Hierarchy OptimizationParallel Performance AnalysisCorrelationGpu ArchitectureGpu Programming ModelsPerformance PortabilityPortabilityPortability AssessmentPortability EvaluationProgramming Models
In this new era where multiple GPU vendors are leading the supercomputing landscape, and multiple programming models are available to users, the drive to achieve performance portability across platforms faces new challenges. Consider stencil algorithms, where architecture-specific solutions are required to optimize for the parallelism hierarchy and memory hierarchy of emerging systems. In this work, we analyze performance portability of the BrickLib domain-specific library and vector code generator for stencils. BrickLib employs fine-grain data blocking to reduce the large amount of data movement associated with stencils. We compare different GPUs (NVIDIA, AMD and Intel) and their associated programming models (CUDA, HIP and SYCL). By testing a wide range of stencil configurations, we show that overall, BrickLib achieves good performance independent of machine or programming model. Moreover, we introduce correlation models as a new tool for comparing architectures and programming models from Roofline model data.
30
Samuel Williams, Andrew Waterman, David A. Patterson · Communications of the ACM · 2009 · 2.4K citations · Full text
3D finite difference computation on GPUs using CUDA
Paulius Micikevicius · 2009 · 518 citations
Yuan Tang, Rezaul Chowdhury, Bradley C. Kuszmaul et al. · 2011 · 338 citations · Full text
3.5-D Blocking Optimization for Stencil Computations on Modern CPUs and GPUs
Anthony D. Nguyen, Nadathur Satish, Jatin Chhugani et al. · 2010 · 293 citations