HackerPapers

arXiv:2103.10891cs.LG

Accelerating SLIDE Deep Learning on Modern CPUs: Vectorization, Quantizations, Memory Optimizations, and More

Shabnam Daghaghi, Nicholas Meisburger, Mengnan Zhao, Yong Wu, Sameh Gobriel, Charlie Tai, Anshumali Shrivastava

Abstract

Deep learning implementations on CPUs (Central Processing Units) are gaining more traction. Enhanced AI capabilities on commodity x86 architectures are commercially appealing due to the reuse of existing hardware and virtualization ease. A notable work in this direction is the SLIDE system. SLIDE is a C++ implementation of a sparse hash table based back-propagation, which was shown to be significantly faster than GPUs in training hundreds of million parameter neural models. In this paper, we argue that SLIDE's current implementation is sub-optimal and does not exploit several opportunities available in modern CPUs. In particular, we show how SLIDE's computations allow for a unique possibility of vectorization via AVX (Advanced Vector Extensions)-512. Furthermore, we highlight opportunities for different kinds of memory optimization and quantizations. Combining all of them, we obtain up to 7x speedup in the computations on the same hardware. Our experiments are focused on large (hundreds of millions of parameters) recommendation and NLP models. Our work highlights several novel perspectives and opportunities for implementing randomized algorithms for deep learning on modern CPUs. We provide the code and benchmark scripts at https://github.com/RUSH-LAB/SLIDE

arXiv comments
Journal reference
DOI
Subjects
cs.LGMachine Learning cs.DCDistributed, Parallel, and Cluster Computing cs.PFPerformance

On Hacker News

Linked by 2 identifiable commenters in 2 comments across 1 thread, from Apr 2021 to Apr 2021.

Comments linking this paper, per year.

Discussed in comments1 thread

    • Paper: https://arxiv.org/abs/1903.03129 Code: https://github.com/keroro824/HashingDeepLearning Edit: Here is the new paper referred to https://arxiv.org/abs/2103.10891 Here is the new code: https://github.com/RUSH-LAB/SLIDE The paper I linked above was the first paper of which…

      exegeteView on HNParent context

    • Here's the new paper referred to in the article: https://arxiv.org/abs/2103.10891

      gumbyView on HNParent context

Submitted to Hacker News

Connected through shared HN threads, not inferred similarity or a recommendation.