如何高效地处理大规模的图网络越来越广泛地引起科研和产业界的兴趣。一个顶点的副本点在现存的分布式图计算编程框架中扮演着重要的角色。它使得单个顶点同时在多台机器上并行地计算,同时使得在本地就可以访问远程的邻居顶点,而不用通过远程操作。然而,副本点的存在也引发了许多问题。现存的分布式图计算编程框架都将同一个顶点的所有副本点当作是一个原子的且不可分割的顶点,并且使用急切数据一致性(eager data coherency)的方式来保证副本点数据的一致性。在这种方式下,任何一个副本点发生变化,都需要立即将变化信息发送给其它的副本点,因此,导致了频繁的全局数据同步和通信问题。\n 在本文中,我们提出了一种延迟数据一致性(lazy data coherency)的方法,称为LazyAsync。在LazyAsync的执行模式下,一个顶点的不同副本点被视为相互独立的顶点,并且可以迭代更新自己的数据,最后通过计算来达到数据一致性。首先,我们可以根据输入图和算法特征自动地选择数据一致性点。不同副本点在相邻两个数据一致性点之间可以维护不同的本地视图,仅在数据一致性点的时候保证一致的全局视图。随后,基于PowerGraph,我们开发了一个分布式图计算编程框架LazyGraph。LazyGraph实现了LazyAsync方法,并且探索了graph-aware的优化方案。最后,在48个虚拟机的EC2的集群环境下,LazyGraph相比于PowerGraph在4种不同的图算法和不同种类的真实图上,获得了1.25倍到10.69倍的加速比。
DSP是一种低功耗专用处理器,同时也是区别于通用微处理器进行复杂算法加速的新型硬件平台,基于DSP平台的深度学习算法优化技术对具有小型化、低功耗特点的一体化智能设备的发展具有重要的推动作用。本文基于高性能多核DSP平台,研究深度学习算法的体系结构适配和并行优化技术,以实现其在多核DSP上的硬件加速。首先,本文研究了基于多核DSP的高性能并行处理系统的体系结构技术,提出了具有三级并行结构的低功耗DSP系统结构,设计了基于DMA的存算并行机制并实现了相应的系统函数。其次,针对深度信念网络,本文研究了在多级并行DSP结构下的算法并行技术,提出了基于大矩阵运算和多核并行机制的DBN并行算法,并给出了具体实现。实验结果表明,DSP上进行DBN预训练过程的吞吐量为989.22幅/s,性能功耗比是主流通用微处理器平台的6.00倍。紧接着,针对卷积神经网络,本文探讨了卷积操作分别使用FFT转化和矩阵乘法转化在DSP上的实现方案,提出了基于卷积矩阵展开的多核DSP并行加速算法。实验结果表明,粗粒度并行、逐通道计算的卷积计算方法的性能最高。最后,针对典型的深度学习编程框架Caffe,本文研究了面向DSP系统的深度学习编程框架DSP for Caffe,设计并实现了支持Caffe主要操作的DSP函数,并针对图像识别领域的Cifar-10、AlexNet和VGG-s三种最主要的大型卷积神经网络并行应用进行了功能验证。实验结果表明,基于该框架的Cifar-10、AlexNet、VGG-s三种并行算法的吞吐率分别达到404.86幅/s、6.35幅/s和2.37幅/s,性能功耗比是主流通用微处理器平台的4.77倍、2.60倍和1.97倍。该框架能支持主要的Caffe表达到DSP实现的自动映射,扩展了DSP在深度学习领域的适用性。
暂无评论