快速开始#
这份指南将帮助您在十分钟内快速安装并尝鲜 GeoMX。😁
备注
前提条件:我们提供了预先构建的 Docker 镜像以供快速试用 GeoMX。为此,我们需要按照 Docker 官方指南 (Guide) 安装好 Docker。
拉取 Docker 镜像#
如果想在 CPU 上体验,请使用:
sudo docker pull lizonghango00o1/geomx:cpu-only
如果想在 GPU 上运行,且宿主机的 CUDA 版本高于 8.0,请使用:
sudo docker pull lizonghango00o1/geomx:cu80
如果想在 GPU 上运行,且宿主机的 CUDA 版本高于 10.1,请使用:
sudo docker pull lizonghango00o1/geomx:cu101
运行 Docker 容器#
如果您使用的是带有 cpu-only
标签的镜像,请使用以下命令来启动容器:
sudo docker run -it --rm --name geomx lizonghango00o1/geomx:cpu-only bash
对于 GPU 版本的 cu80
和 cu101
镜像,使用方法类似,但我们需要添加 --gpus all
选项:
sudo docker run -it --rm --name geomx --gpus all lizonghango00o1/geomx:cu101 bash
运行示例脚本#
我们在 scripts
和 examples
文件夹中提供了一些使用 GeoMX 训练深度学习模型的示例脚本。
要体验 GeoMX 的初始版本(仅使用分层参数服务器),请运行:
# If run on CPUs
cd GeoMX/scripts/cpu && bash run_vanilla_hips.sh
# If run on GPUs
cd GeoMX/scripts/gpu && bash run_vanilla_hips.sh
我们也提供了几种其他优化技术的快捷运行脚本,它们是:
双向梯度稀疏化 (Bi-Sparse):
bash run_bisparse_compression.sh
.低精度量化 (FP16):
bash run_fp16.sh
.混合精度量化 (MPQ):
bash run_mixed_precision.sh
.差异梯度传输 (DGT):
bash run_dgt.sh
.TSEngine:
bash run_tsengine.sh
.优先级参数传播 (P3):
bash run_p3.sh
.多全局参数服务器负载均衡 (MultiGPS):
bash run_multi_gps.sh
.复合同步算法 (MixedSync):
bash run_mixed_sync.sh
.混合频率聚合 (HFA):
bash run_hfa_sync.sh
.
警告
注意:如果您使用的是带有 cu80
和 cu101
标签的镜像,GeoMX 的首次初始化可能需要几分钟的时间。但是,后续的运行将会恢复正常,除非您重新编译了 GeoMX。这个初始化延迟是正常的,它也发生在 PyTorch 和 MXNET 等其他框架上。