当前位置:
X-MOL 学术
›
arXiv.cs.DC
›
论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Characterizing Optimizations to Memory Access Patterns using Architecture-Independent Program Features
arXiv - CS - Distributed, Parallel, and Cluster Computing Pub Date : 2020-03-12 , DOI: arxiv-2003.06064 Aditya Chilukuri, Josh Milthorpe, Beau Johnston
arXiv - CS - Distributed, Parallel, and Cluster Computing Pub Date : 2020-03-12 , DOI: arxiv-2003.06064 Aditya Chilukuri, Josh Milthorpe, Beau Johnston
High-performance computing developers are faced with the challenge of
optimizing the performance of OpenCL workloads on diverse architectures. The
Architecture-Independent Workload Characterization (AIWC) tool is a plugin for
the Oclgrind OpenCL simulator that gathers metrics of OpenCL programs that can
be used to understand and predict program performance on an arbitrary given
hardware architecture. However, AIWC metrics are not always easily interpreted
and do not reflect some important memory access patterns affecting efficiency
across architectures. We propose a new metric of parallel spatial locality --
the closeness of memory accesses simultaneously issued by OpenCL work-items
(threads). We implement the parallel spatial locality metric in the AIWC
framework, and analyse gathered results on matrix multiply and the Extended
OpenDwarfs OpenCL benchmarks. The differences in the observed parallel spatial
locality metric across implementations of matrix multiply reflect the
optimizations performed. The new metric can be used to distinguish between the
OpenDwarfs benchmarks based on the memory access patterns affecting their
performance on various architectures. The improvements suggested to AIWC will
help HPC developers better understand memory access patterns of complex codes
and guide optimization of codes for arbitrary hardware targets.
中文翻译:
使用与体系结构无关的程序功能表征对内存访问模式的优化
高性能计算开发人员面临着优化 OpenCL 工作负载在不同架构上的性能的挑战。与架构无关的工作负载表征 (AIWC) 工具是 Oclgrind OpenCL 模拟器的插件,它收集 OpenCL 程序的指标,可用于理解和预测任意给定硬件架构上的程序性能。然而,AIWC 指标并不总是很容易解释,并且不反映影响跨架构效率的一些重要内存访问模式。我们提出了一种新的并行空间局部性度量——OpenCL 工作项(线程)同时发出的内存访问的接近度。我们在 AIWC 框架中实现了并行空间局部性度量,并分析矩阵乘法和扩展 OpenDwarfs OpenCL 基准的收集结果。矩阵乘法实现中观察到的并行空间局部性度量的差异反映了执行的优化。新指标可用于根据影响其在各种架构上的性能的内存访问模式来区分 OpenDwarfs 基准测试。向 AIWC 提出的改进将帮助 HPC 开发人员更好地了解复杂代码的内存访问模式,并指导针对任意硬件目标优化代码。新指标可用于根据影响其在各种架构上的性能的内存访问模式来区分 OpenDwarfs 基准测试。向 AIWC 提出的改进将帮助 HPC 开发人员更好地了解复杂代码的内存访问模式,并指导针对任意硬件目标优化代码。新指标可用于根据影响其在各种架构上的性能的内存访问模式来区分 OpenDwarfs 基准测试。向 AIWC 提出的改进将帮助 HPC 开发人员更好地了解复杂代码的内存访问模式,并指导针对任意硬件目标优化代码。
更新日期:2020-03-16
中文翻译:
使用与体系结构无关的程序功能表征对内存访问模式的优化
高性能计算开发人员面临着优化 OpenCL 工作负载在不同架构上的性能的挑战。与架构无关的工作负载表征 (AIWC) 工具是 Oclgrind OpenCL 模拟器的插件,它收集 OpenCL 程序的指标,可用于理解和预测任意给定硬件架构上的程序性能。然而,AIWC 指标并不总是很容易解释,并且不反映影响跨架构效率的一些重要内存访问模式。我们提出了一种新的并行空间局部性度量——OpenCL 工作项(线程)同时发出的内存访问的接近度。我们在 AIWC 框架中实现了并行空间局部性度量,并分析矩阵乘法和扩展 OpenDwarfs OpenCL 基准的收集结果。矩阵乘法实现中观察到的并行空间局部性度量的差异反映了执行的优化。新指标可用于根据影响其在各种架构上的性能的内存访问模式来区分 OpenDwarfs 基准测试。向 AIWC 提出的改进将帮助 HPC 开发人员更好地了解复杂代码的内存访问模式,并指导针对任意硬件目标优化代码。新指标可用于根据影响其在各种架构上的性能的内存访问模式来区分 OpenDwarfs 基准测试。向 AIWC 提出的改进将帮助 HPC 开发人员更好地了解复杂代码的内存访问模式,并指导针对任意硬件目标优化代码。新指标可用于根据影响其在各种架构上的性能的内存访问模式来区分 OpenDwarfs 基准测试。向 AIWC 提出的改进将帮助 HPC 开发人员更好地了解复杂代码的内存访问模式,并指导针对任意硬件目标优化代码。