A Survey of Deep Learning on CPUs: Opportunities and Co-Optimizations
Sparsh Mittal, Poonam Rajput, Sreenivas Subramoney
Abstract
CPU is a powerful, pervasive, and indispensable platform for running deep learning (DL) workloads in systems ranging from mobile to extreme-end servers. In this article, we present a survey of techniques for optimizing DL applications on CPUs. We include the methods proposed for both inference and training and those offered in the context of mobile, desktop/server, and distributed systems. We identify the areas of strength and weaknesses of CPUs in the field of DL. This article will interest practitioners and researchers in the area of artificial intelligence, computer architecture, mobile systems, and parallel computing.
Topics & Concepts
Computer scienceServerDeep learningContext (archaeology)ArchitectureMobile deviceField (mathematics)Mobile computingInferenceComputer architectureArtificial intelligenceOperating systemPure mathematicsMathematicsBiologyPaleontologyVisual artsArtParallel Computing and Optimization TechniquesAdvanced Neural Network ApplicationsLow-power high-performance VLSI design