STen:PyTorch 中高效且易用的稀疏性支持
机器学习
2023-04-18 v1
摘要
随着深度学习模型规模增长,稀疏性正成为深度神经网络日益关键的部分,可带来性能提升与存储缩减。然而,现有框架对稀疏性的支持较差。专门的稀疏性引擎仅关注稀疏推理,而通用框架主要关注经典格式的稀疏张量,忽视了使用稀疏模型(尤其在训练期间)所需的更广义稀疏化流程。此外,现有框架不易扩展:新增稀疏张量格式或算子既困难又耗时。为此,我们提出 STen,一种面向 PyTorch 的稀疏性编程模型与接口,它将稀疏布局、算子与稀疏化器纳入高效、可定制且可扩展的框架中,几乎支持所有稀疏化方法。我们通过为 CPU 推理在中等稀疏度下开发高性能分组 n:m 稀疏布局来展示这一点。STen 为机器学习社区带来高性能与易用性,使稀疏性易于获取。
引用
@article{arxiv.2304.07613,
title = {STen: Productive and Efficient Sparsity in PyTorch},
author = {Andrei Ivanov and Nikoli Dryden and Tal Ben-Nun and Saleh Ashkboos and Torsten Hoefler},
journal= {arXiv preprint arXiv:2304.07613},
year = {2023}
}