scheduler
DeepX框架的scheduler,是front和excuter之间的桥梁。
front只负责搭建抽象计算图,excuter负责执行算子,而scheduler负责将抽象计算图转换为执行计算图,并发送给excuter。
算子注册器
算子注册器,接收excuter的算子及精度列表。
调度器
scheduler将实现以下能力:
根据计算图的依赖关系,确定算子的执行顺序。
算子融合。抽象计算图都是由最基础的算子组成,而执行计算图可以由多个基础算子融合而成。
算子消除。根据数学链式法则,有些算子可以相互抵消,如log和exp,mul和div,add和sub。
TP:tensor 并行,tensor自动拆分计算
PP:pipeline 并行,包括 dual-mode:前向和后向
MP:model 并行,模型自动拆分计算
DP:data 并行,多路batch并行训练