Mar, 2024

UniSparse: 通用稀疏格式自定义的中间语言

TL;DR硬件专业化的趋势导致在处理稀疏工作负载时越来越多地使用自定义数据格式,而现有的稀疏张量编程模型和编译器对自定义格式的支持很少或没有。为了克服这个缺陷,我们提出了 UniSparse,它是一种提供统一抽象的中间语言,用于表示和自定义稀疏格式。与现有的基于属性的框架不同,UniSparse 将稀疏张量的逻辑表示(即数据结构)与其底层内存布局解耦,从而实现了两者的自定义。通过实验,我们证明了我们的方法在多种不同的硬件目标上运行常用的稀疏线性代数操作与专门格式的有效性,包括 Intel CPU、NVIDIA GPU、AMD Xilinx FPGA 和模拟的内存中处理(PIM)设备。