[论文解读] SLIDE : In Defense of Smart Algorithms over Hardware Acceleration for Large-Scale Deep Learning Systems
SLIDE 提供一种基于 CPU 的稀疏、局部敏感哈希方法,支持多核并行,在大规模全连接网络上超过 GPU 加速的 TensorFlow,在相近精度下实现墙钟时间提升达 3.5x–10x。
Deep Learning (DL) algorithms are the central focus of modern machine learning systems. As data volumes keep growing, it has become customary to train large neural networks with hundreds of millions of parameters to maintain enough capacity to memorize these volumes and obtain state-of-the-art accuracy. To get around the costly computations associated with large models and data, the community is increasingly investing in specialized hardware for model training. However, specialized hardware is expensive and hard to generalize to a multitude of tasks. The progress on the algorithmic front has failed to demonstrate a direct advantage over powerful hardware such as NVIDIA-V100 GPUs. This paper provides an exception. We propose SLIDE (Sub-LInear Deep learning Engine) that uniquely blends smart randomized algorithms, with multi-core parallelism and workload optimization. Using just a CPU, SLIDE drastically reduces the computations during both training and inference outperforming an optimized implementation of Tensorflow (TF) on the best available GPU. Our evaluations on industry-scale recommendation datasets, with large fully connected architectures, show that training with SLIDE on a 44 core CPU is more than 3.5 times (1 hour vs. 3.5 hours) faster than the same network trained using TF on Tesla V100 at any given accuracy level. On the same CPU hardware, SLIDE is over 10x faster than TF. We provide codes and scripts for reproducibility.
研究动机与目标
- 在大规模深度学习中,激发对硬件加速的算法替代方案的探索。
- 提出一个实用的基于 CPU 的系统(SLIDE),利用自适应稀疏性来降低计算量。
- 证明智能算法在行业规模数据集上能超越基于 GPU 加速的基线。
- 提供可重复的代码和基准以验证该方法。
- 分析所提出系统的性能特性与瓶颈。
提出的方法
- 部署局部敏感哈希 (LSH) 以稀疏化神经元激活并实现子线性候选集选择。
- 每层使用 K 个 LSH 哈希来生成前向传播的稀疏神经元子集。
- 通过仅更新活跃连接并采用异步 SGD(HOGWILD 式)进行稀疏反向传播。
- 利用多核 OpenMP 并行性及批量级独立性实现近线性扩展。
- 结合内存和缓存感知的优化(如 HugePages、SIMD)以提速 CPU 执行。
- 在大型全连接网络和数据集 Delicious-200K、Amazon-670K 上将 SLIDE 与 TF-GPU 与 TF-CPU 进行比较。
实验结果
研究问题
- RQ1在 CPU 核上通过 LSH 的算法稀疏化是否能在大型神经网络训练上超越硬件加速?
- RQ2自适应神经元采样对收敛性和精度相对于全量或采样 Softmax 基线有何影响?
- RQ3随着 CPU 核数和数据集规模的增加,SLIDE 在墙钟时间和核心利用率方面的表现如何扩展?
- RQ4在基于 CPU 的 DL 系统中,实际瓶颈(内存、带宽)是什么,如何缓解?
主要发现
- 在 44-core CPU 上,SLIDE 在等效精度下的墙钟时间超越 TF-Tesla V100 GPU。
- 在 Delicious-200K 上,SLIDE 比 TF-GPU 快约 1.8x;在 Amazon-670K 上,快约 2.7x。
- SLIDE 的速度比 TF-CPU 高出超过 10 倍,并且在迭代到精度的行为上与之相近。
- 随着核心数增加,SLIDE 的内存瓶颈低效性下降,而 TF-CPU 的瓶颈上升,从而实现更高的 CPU 利用率。
- 通过 LSH 的自适应采样显著减少活跃神经元和更新量,在精度损失极小的情况下带来大幅加速。
- SLIDE 在 8–32 线程上实现近峰值的核心利用率(约 80–85%),在效率上优于 TF-CPU。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。