当前位置: 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

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
down
wechat
bug