使用PAI-DLC进行深度学习训练时,您可以使用gRPC++分布式训练,从而加速模型训练。本文介绍如何开启分布式通信框架gRPC++。
gRPC++通过Sharing Nothing架构、BusyPolling机制、用户态零拷贝及Send/Recv融合等多种优化技术,降低了E2E的通信延时,提高了Server的吞吐能力,从而可以支持更大的训练规模和训练性能。针对典型业务场景,其训练性能比原生TensorFlow提升了数倍。
开启gRPC++分布式训练
使用gRPC++进行分布式训练,需要在tf.train.Server中添加
protocol="grpc++"
。 cluster = tf.train.ClusterSpec({"ps": ps_hosts, "worker": worker_hosts})
server = tf.train.Server(cluster,
job_name=FLAGS.job_name,
task_index=FLAGS.task_index,
protocol="grpc++")