- 显卡3080(两块)和2080ti(四块)
- ubuntu18.04
- cuda11.1
- cudnn8.1.0
- nvidia-docker2.x
- Nvidia-NGC nvcr.io/nvidia/tensorflow:21.02-tf2-py3/nvcr.io/nvidia/pytorch:20.06-py3
- anaconda:4.7.10
- NCCL
- horovod
- 深度学习框架(tensorflow2.4.x、pytorch1.8.0和paddllepaddle2.1.0)
- APEX 是NVIDIA提供的一个PyTorch的扩展插件,用于帮助PyTorch实现自动混合精度以及分布式训练。
- DALI - NVIDIA Data Loading Library (DALI) 是一个高效的数据读取引擎,用于给深度学习框架加速输入数据的读取速度。
- Horovod 是一个帮助TensorFlow、PyTorch、MXNet等框架支持分布式训练的框架。
- XLA (Accelerated Linear Algebra) 是一种深度学习编译器,可以在不改变源码的情况下进行线性代数加速
- NCCL 多机多卡的分布式训练
XLA (Accelerated Linear Algebra)是一种深度学习编译器,可以在不改变源码的情况下进行线性代数加速。针对支持XLA的深度学习框架我们也会测试其开启或关闭状态下的性能表现。
AMP(Automatic Mixed Precision) 自动混合精度,在GPU上可以加速训练过程,与float32精度相比,AMP在某些GPU上可以做到3倍左右的速度提升。我们对支持AMP的深度学习框架会测试其开启或关闭AMP的性能表现。
- 单机多卡还是多机多卡分布使用tf.distribute.Strategy和MultiWorkerMirroredStrategy 两个API 函数
- pytorch分布式训练API,参考torch.distributed
- PaddlePaddle Fluid
lyhue1991/eat_tensorflow2_in_30_days