CNNLab:一种利用 GPU 和 FPGA 的神经网络新型并行框架——基于权衡分析的实践研究
机器学习
2016-06-21 v1 分布式、并行与集群计算
摘要
设计和实现高效且可证明正确的并行神经网络处理具有挑战性。现有的 MapReduce 等高级并行抽象表达能力不足,而 MPI 和 Pthreads 等低级工具则使机器学习专家反复解决相同的设计难题。然而,数据的多样性和大规模数据量对构建灵活且高性能的深度学习神经网络实现构成了重大挑战。为了提高性能并保持可扩展性,我们提出了 CNNLab,一种利用 GPU 和基于 FPGA 的加速器的新型深度学习框架。CNNLab 为用户提供统一的编程模型,使得硬件实现和调度对程序员不可见。在运行时,CNNLab 在将任务卸载到加速器之前,利用 GPU 和 FPGA 之间的权衡。在最先进的 Nvidia K40 GPU 和 Altera DE5 FPGA 板上的实验结果表明,CNNLab 能够提供一个通用框架,对各种应用提供高效支持,而不会增加程序员的负担。此外,我们分析了两种方法的详细定量性能、吞吐量、功耗、能耗和性能密度。实验结果利用了 GPU 和 FPGA 之间的权衡,为深度学习研究社区提供了有用的实践经验。
引用
@article{arxiv.1606.06234,
title = {CNNLab: a Novel Parallel Framework for Neural Networks using GPU and FPGA-a Practical Study with Trade-off Analysis},
author = {Maohua Zhu and Liu Liu and Chao Wang and Yuan Xie},
journal= {arXiv preprint arXiv:1606.06234},
year = {2016}
}