一句话:首次刻画多核 CPU 上训练 CNN 的性能优化机会,分析卷积算术强度、并行可扩展性与稀疏性。
卷积神经网络在语音识别、物体识别和自然语言处理等模式识别任务中表现高效,但训练计算密集。本文首次系统刻画了在 CPU 上训练 CNN 时可利用的性能优化机会。其分析既涵盖网络结构本身的性质,包括卷积的内在算术强度及其在并行执行下的可扩展性,也涵盖执行过程中的动态特性,即计算稀疏性。通过这些刻画,作者为在多核 CPU 上提升 CNN 训练的可扩展性、性能和有效吞吐量(goodput)提供了依据。
Convolutional Neural Networks (CNN) are a class of Ar- tificial Neural Networks (ANN) that are highly efficient at the pattern recognition tasks that underlie difficult AI prob- lems in a variety of domains, such as speech recognition, object recognition, and natural language processing. CNNs are, however, computationally intensive to train. This paper presents the first characterization of the per- formance optimization opportunities for training CNNs on CPUs. Our characterization includes insights based on the structure of the network itself (i.e., intrinsic arithmetic inten- sity of the convolution and its scalability under parallelism) as well as dynamic properties of its execution (i.e., sparsity of the computation).
@inproceedings{RajbhandariHRCC17,
title = {Optimizing CNNs on Multicores for Scalability, Performance and Goodput},
author = {Samyam Rajbhandari and Yuxiong He and Olatunji Ruwase and Michael Carbin and Trishul Chilimbi},
booktitle = {ASPLOS},
year = {2017},
doi = {10.1145/3037697.3037745}
}