当前位置: X-MOL 学术Comput. Graph. Forum › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
EGGS: Sparsity‐Specific Code Generation
Computer Graphics Forum ( IF 2.7 ) Pub Date : 2020-08-01 , DOI: 10.1111/cgf.14080
Xuan Tang 1 , Teseo Schneider 1 , Shoaib Kamil 2 , Aurojit Panda 1 , Jinyang Li 1 , Daniele Panozzo 1
Affiliation  

Sparse matrix computations are among the most important computational patterns, commonly used in geometry processing, physical simulation, graph algorithms, and other situations where sparse data arises. In many cases, the structure of a sparse matrix is known a priori, but the values may change or depend on inputs to the algorithm. We propose a new methodology for compile‐time specialization of algorithms relying on mixing sparse and dense linear algebra operations, using an extension to the widely‐used open source Eigen package. In contrast to library approaches optimizing individual building blocks of a computation (such as sparse matrix product), we generate reusable sparsity‐specific implementations for a given algorithm, utilizing vector intrinsics and reducing unnecessary scanning through matrix structures. We demonstrate the effectiveness of our technique on a benchmark of artificial expressions to quantitatively evaluate the benefit of our approach over the state‐of‐the‐art library Intel MKL. To further demonstrate the practical applicability of our technique we show that our technique can improve performance, with minimal code changes, for mesh smoothing, mesh parametrization, volumetric deformation, optical flow, and computation of the Laplace operator.

中文翻译:

EGGS:稀疏特定代码生成

稀疏矩阵计算是最重要的计算模式之一,常用于几何处理、物理模拟、图形算法和其他出现稀疏数据的情况。在许多情况下,稀疏矩阵的结构是先验已知的,但值可能会改变或取决于算法的输入。我们提出了一种新的算法编译时专业化方法,该方法依赖于混合稀疏和密集线性代数运算,使用对广泛使用的开源 Eigen 包的扩展。与优化计算的单个构建块(例如稀疏矩阵乘积)的库方法相比,我们为给定算法生成可重用的稀疏特定实现,利用向量内在函数并减少对矩阵结构的不必要扫描。我们证明了我们的技术在人工表达式基准上的有效性,以定量评估我们的方法相对于最先进的库英特尔 MKL 的优势。为了进一步证明我们的技术的实际适用性,我们表明我们的技术可以通过最小的代码更改来提高性能,用于网格平滑、网格参数化、体积变形、光流和拉普拉斯算子的计算。
更新日期:2020-08-01
down
wechat
bug