LIKWID:面向性能的轻量级工具套件,适用于x86多核环境
LIKWID: A lightweight performance-oriented tool suite for x86 multicore environments
摘要:
要充分利用当今处理器的性能,需要深入了解微体系结构,并了解线程和缓存拓扑中不断增长的复杂性。LIKWID是一组命令行实用程序,解决了四个关键问题:探测共享内存节点的线程和缓存拓扑,在程序上强制执行线程-核心亲和性,测量性能计数器指标,以及切换硬件预取器。还包括一个用于从用户代码中使用性能计数功能的API。我们清楚地说明了与广泛使用的PAPI接口的差异。为了展示工具集的功能,我们使用著名的OpenMP STREAM triad基准测试来展示线程固定对性能的影响,并使用亲和性和硬件计数器工具来研究专门优化以利用多核芯片上的共享缓存的模板代码的性能。
英文摘要:
Exploiting the performance of today's processors requires intimate knowledge of the microarchitecture as well as an awareness of the ever-growing complexity in thread and cache topology. LIKWID is a set of command-line utilities that addresses four key problems: Probing the thread and cache topology of a shared-memory node, enforcing thread-core affinity on a program, measuring performance counter metrics, and toggling hardware prefetchers. An API for using the performance counting features from user code is also included. We clearly state the differences to the widely used PAPI interface. To demonstrate the capabilities of the tool set we show the influence of thread pinning on performance using the well-known OpenMP STREAM triad benchmark, and use the affinity and hardware counter tools to study the performance of a stencil code specifically optimized to utilize shared caches on multicore chips.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。