从十一种神经网络模型横向比较七种深度学习硬件的性能

近年来,人工智能领域发展飞速,无论是在工业界还是学术界,有关人工智能的各种新技术层出不穷,各个科技巨头也在持续发力,在产品和技术上都取得的巨大突破。人工智能(Artificial Intelligence,AI)是一种知识信息处理系统,它的发展可以追述到60年前,但中间因为技术的原因几次沉寂,直到深度神经网络(Deep Neural Networks,DNN)或者称之为深度学习的出现,并伴随着近几年硬件计算能力的增强、技术的发展,再次掀起人们对人工智能领域研究的热潮。深度学习是人工智能的一个重要分支,其概念源于机器学习中的人工神经网络(Artificial Neural Network,ANN),深度学习已被证明是一种可成功用于许多任务的机器学习方法,而它的广泛流行也使其获得了各个硬件厂商的支持,许多科技公司都推出了各自支持深度学习的硬件产品。

这篇文章中,我们选择了七种来自四家厂商的有代表性的深度学习硬件产片,对它们在运行神经网络任务时的性能就行了横向比较,它们分别是:

华为(Huawei):华为麒麟970芯片

英特尔(Intel ):英特尔Movidius神经计算棒英特尔至强处理器 E5-2630

英伟达(NVIDIA):英伟达Jetson Tegra x1英伟达GeForce GTX 1080

苹果(Apple):苹果A10X Fusion、A11 Bionic

之前我们已经对以上设备进行了单独的介绍,并分别使用NPUbench进行了测试,测试结果可以通过点击上面设备名称中的链接进行查看。

我们选择了十一种有代表性的卷积神经网络来对这七种深度学习硬件硬件的实际性能进行测试,分别是LeNet、Network in Network、SqueezeNet、GooLeNet、AlexNet、Inception-BN、ResNet50、ResNet101、ResNet151、VGG16、VGG19。

在对麒麟970芯片的测试中,我们编写了专门的测试程序,程序使用了华为提供的HiAI移动计算平台,我们把十一种神经网络的Caffe格式模型转换成HiAI SDK支持的离线模型,最后在搭载麒麟970芯片的华为Mate 10上运行测试程序来获得测试结果。对苹果A10X Fusion、A11 Bionic的测试中,我们为搭载了这两款芯片的硬件设备iPhone 8 Plus(苹果A11 Bionic),iPad Pro 10.5(苹果A10X Fusion)编写了专门的测试程序,程序使用了苹果的Core ML机器学习框架,我们把十一种神经网络的Caffe格式模型转换成Core ML支持的离线模型,最后在设备上运行测试程序来获得其测试结果。英特尔Movidius神经计算棒的测试数据通过使用英特尔公司提供的Intel Movidius Neural Compute SDK (NCSDK)测得。英伟达Jetson Tegra x1、英伟达GeForce GTX 1080以及英特尔至强处理器 E5-2630的测试数据是使用Caffe神经网络框架测得。

从我们所测得的数据来看,在执行神经网络任务的性能方面,毫无疑问英伟达GeForce GTX 1080显然是这几种硬件中最强的,而表现较差的则是英特尔的志强E5处理器,可以看出,在进行大规模数据运算的时候,相较于CPU平台来说GPU还是有相当大的优势。而在其余硬件中,麒麟970的表现要更好一些,但相比英伟达GeForce GTX 1080来看依然要逊色不少。苹果A10X Fusion、A11 Bionic与英伟达Jetson Tegra x1表现比较接近,英特尔Movidius神经计算棒的表现次之。