常用的深度学习计算框架都需要支持分布式计算,一般采用parameter s...
发布于 2022-03-02 17:06:47
常用的深度学习计算框架都需要支持分布式计算,一般采用parameter server架构实现多机数据并行,请尝试设计一个高性能的分布式parameter server架构?
1)在数据并行训练系统中,parameter server主要作用是什么? 除深度学习领域外,它能否用于加速传统机器学习分布式训练效率?
2)对于有N个并行计算的worker节点(worker节点定义为进行神经网络forward和backward的完整执行单元),你会如何设计paramter server架构,有哪些因素会影响到parameter server的对整体分布式训练效率?
3)什么是Amdahl's law? 基于分布式parameter server架构的多机并行神经网络训练框架中,如何利用amdahl's law指导多机并行加速效率的优化?
4)spin lock和pthread mutex lock有什么区别? 假定一个parameter server主要完成对神经网络parameter weight的向量求和操作。如果同时有100个worker向parameter server推送weight数据,即同时需要在parameter server上实现100组weight向量的向量求和操作,给定56个Cpu物理核来完成求和操作,请设计一个并行计算逻辑最大程度提高整个求和操作的效率,请用伪代码描述。
5)计算机架构中,哪些设计中使用了pipeline技术?它的作用是啥? 你设计的parameter server架构中,你觉得有些地方可以用pipeline技术来优化效率,具体如何实现pipeline?
关注者
0
被浏览
42