• 语料库ID:10027015

BLISlab:优化GEMM的沙盒

@第{条黄2016BLISlabAS,title={BLISlab:优化GEMM}的沙盒,author={黄建宇和Robert A.Geijn},日志={ArXiv},年份={2016年},体积={abs/1609.0076},网址={https://api.semanticscholar.org/CorpusID:10027015}}
一组练习使用矩阵-矩阵乘法,通过构建类似BLAS的库实例化软件(BLIS)框架下的洞察力,说明如何在具有分层内存(多缓存)的现代CPU上实现高性能。

本文中的数字

询问这篇论文
AI供电

优化矩阵乘法的学习

经过精心设计和搭建的一组练习将引导学习者从一个幼稚的实现转向在多个级别提取并行性的实现,从指令级并行到通过OpenMP的多线程并行,再到使用MPI的分布式内存并行。

Triton:一种用于分片神经网络计算的中间语言和编译器

Triton是一种以tile概念为中心的语言和编译器,即静态形状的多维子数组,用于根据参数tile变量的操作来表示张量程序,以及一组新颖的tile级优化过程,用于将这些程序编译为高效的GPU代码。

Intel、AMD和Fujitsu处理器上成批、小型和矩形矩阵乘法的缓存优化和性能建模

这项工作表明,通过仔细分析缓存利用率、使用SIMD寄存器的寄存器累加以及重新设计实现,可以在很大的块和批大小范围内为这些类型的批处理低秩矩阵实现更高的吞吐量。

设计面向矢量的紧凑BLAS和LAPACK内核

提出了一种新的紧凑型数据布局,该布局根据SIMD向量长度将矩阵交错在块中,从而在Intel Knights Landing体系结构上针对分别围绕优化的DGEMM、DTRSM和DGETRF内核的OpenMP循环提供加速。

内核FaRer

介绍了Kernel Find&Replacer,这是一个完全在现有LLVM编译器框架中实现的习惯用法识别器,它用BLAS、Eigen、MKL和BLIS执行的计算替换现有的GEMM和SYR2K习惯用法。

并行和分布式大型深度学习训练系统

本次调查将探索大型培训系统的前景,重点介绍关键挑战以及用于解决这些挑战的各种技术。

基于ARM处理器的大规模并行Winograd卷积优化

本文重新设计了基于Winograd的卷积并行算法,以实现多核CPU的更高效实现,并根据输入形状调整数据布局,并针对ARM处理器的特点进行了优化,从而减少了矩阵变换开销,实现了高算法强度。

一种新的分块矩阵乘法容错结构

这种方法有两个优点:可以在分片级别同时检测错误,这是对仅在执行全矩阵乘法后才能发现此类错误的改进;事实证明,在硬件级别执行ABFT不会对性能产生影响,而且只会带来较小的面积、延迟和功耗开销。

用于有效学习排名的提取神经网络

本文利用知识蒸馏从回归树集合中学习浅层神经网络,并利用一种高效的面向剪枝技术,对神经网络中计算最密集的层进行稀疏化,然后用优化的稀疏矩阵乘法进行打分。

使用二值化和少量全精度权重的神经网络压缩

自动剪枝二值化(APB)是一种将量化与剪枝相结合的新型压缩技术,在精度/效率权衡方面优于量化,比2位量化模型快2倍,且精度没有损失。

分析建模足以实现高性能BLIS

我们展示了类BLAS的库实例化软件(BLIS)框架是如何提供GotoBLAS(现在维护为OpenBLAS)实现的更详细分层的,它允许用户

BLIS:快速实例化BLAS功能的框架

二级和三级操作的初步性能与两个成熟的开源库(OpenBLAS和ATLAS)以及一个成熟的商业产品(英特尔MKL)相比具有竞争力。

一类高性能矩阵乘法算法

使用一个简单的分层存储器模型,利用数学方法来确定分块矩阵的局部最优策略,由此产生的一系列算法产生的性能优于自动调整此类内核的方法。

BLIS框架

它显示了BLIS框架如何轻而易举地生成与ATLAS、OpenBLAS和商业供应商实现(如AMD的ACML、IBM的ESSL和Intel的MKL库)的性能相竞争的顺序和并行实现。

高性能多线程矩阵乘法剖析

这项工作描述了BLIS如何将“GotoBLAS方法”扩展到实现矩阵乘法(GEMM),并表明随着IBM PowerPC A2处理器和Intel Xeon Phi处理器等多核体系结构的出现,BLIS方法支持的内部内核内部和周围的并行化不仅方便,而且对于可伸缩性也是必要的。

自动调谐线性代数软件

使用被广泛使用的线性代数内核(称为基本线性代数子程序(BLAS)),为具有深层内存层次结构和流水线功能单元的处理器自动生成和优化数值软件的方法。

使用PHiPAC优化矩阵乘法:一种便携式、高性能的ANSI C编码方法

报告了一种BLAS GEMM兼容的多级缓存块矩阵乘法生成器,该生成器在Sparcstation-20/61、IBM RS/6000-590、HP 712/80i和SGI Indigo R4k上产生的代码的性能达到峰值的90%以上。

基于GEMM的3级BLAS:高性能模型实施和性能评估基准

这项工作表明,主要依靠高度优化的GEMM,即通用矩阵乘法和加法运算的例程,可以开发一个便携式、高性能的3级BLAS库。

利用POWER2的函数并行性设计高性能数值算法

本文给出了两个示例,说明了算法和体系结构特性如何相互作用以生成高性能代码,并将其包含在ESSL(Engineering and Scientific Subroutine Library)中;还对ESSL进行了概述。