From fcab049886efc5f96959fa41a64c2a4ac443bbf8 Mon Sep 17 00:00:00 2001 From: Qinlong Wang Date: Sun, 31 Dec 2023 11:42:44 +0800 Subject: [PATCH] A tutorial to find slow/fault nodes. (#922) * A tutorial to find slow/fault nodes. * polish * Format markdown. --- README.md | 8 +- docs/blogs/stabilize_llm_training_cn.md | 2 +- docs/design/async-checkpoint.md | 6 +- .../ft_llm_training/node_health_check.jpg | Bin 0 -> 145600 bytes .../ft_llm_training/node_healthy_check.jpg | Bin 139750 -> 0 bytes docs/tech_report/fault_tolerance_exps.md | 492 ++++++++++++++++++ docs/tutorial/check_node_health.md | 115 ++++ examples/pytorch/nanogpt/README.md | 6 +- examples/pytorch/nanogpt/ds_train.py | 3 +- 9 files changed, 619 insertions(+), 13 deletions(-) create mode 100644 docs/figures/ft_llm_training/node_health_check.jpg delete mode 100644 docs/figures/ft_llm_training/node_healthy_check.jpg create mode 100644 docs/tech_report/fault_tolerance_exps.md create mode 100644 docs/tutorial/check_node_health.md diff --git a/README.md b/README.md index 23e948813..4ceafdea9 100644 --- a/README.md +++ b/README.md @@ -212,10 +212,10 @@ Please refer to the [DEVELOPMENT](docs/developer_guide.md) ## Quick Start -[Train a TensorFlow Estimator on Kubernetes](docs/tutorial/tf_elasticjob_on_k8s.md) +[Train a PyTorch Model on Kubernetes.](docs/tutorial/torch_on_cloud.md) -[Train a PyTorch Model on Kubernetes](docs/tutorial/torch_elasticjob_on_k8s.md) +[Train a GPT Model on Kubernetes.](docs/tutorial/torch_ddp_nanogpt.md) -[Train a GPT Model.](docs/tutorial/torch_nanogpt.md) +[Use DLRover to find slow/fault nodes.](docs/tutorial/check_node_health.md) -[Train a llama2 model.](examples/pytorch/llama2/README.md) +[Train a TensorFlow Estimator on Kubernetes.](docs/tutorial/tf_ps_on_cloud.md) diff --git a/docs/blogs/stabilize_llm_training_cn.md b/docs/blogs/stabilize_llm_training_cn.md index 6054c31d0..f931b30b6 100644 --- a/docs/blogs/stabilize_llm_training_cn.md +++ b/docs/blogs/stabilize_llm_training_cn.md @@ -128,7 +128,7 @@ world,每个 world 内的节点上执行 allgather 任务并将成功与否上 说明节点6 就是故障节点。然后,DLRover 会重新拉起一个 Pod,替换节点6。
-Editor +Editor
### DLRover 错误日志收集 diff --git a/docs/design/async-checkpoint.md b/docs/design/async-checkpoint.md index 553dd6e07..05d7636a9 100644 --- a/docs/design/async-checkpoint.md +++ b/docs/design/async-checkpoint.md @@ -44,7 +44,7 @@ will block the training to save checkpoint with a little time. ## A daemon Subprocess of the Training Process Asynchronously Saves Checkpoint to the Storage -We can start a daemon subprocess in the training process to save checkpoint to the storage. +We can start a daemon subprocess in the training process to save checkpoint to the storage. - Start a thread to save states from GPU to CPU memory. - Make the memory buffer to place Torch tensors of states. @@ -149,7 +149,9 @@ finish the writing. ## Checkpoint APIs Design -The engine synchronously saves the checkpointing state dict into the CPU memory buffer and notifies the checkpoint saver to save the checkpoint from CPU memory buffer to the storage. +The engine synchronously saves the checkpointing state dict into the CPU memory +buffer and notifies the checkpoint saver to save the checkpoint from CPU memory +buffer to the storage. ```Python diff --git a/docs/figures/ft_llm_training/node_health_check.jpg b/docs/figures/ft_llm_training/node_health_check.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f267afe4b2c72a7c3a7d7364ce4979ba4df61015 GIT binary patch literal 145600 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 literal 0 HcmV?d00001 diff --git a/docs/figures/ft_llm_training/node_healthy_check.jpg b/docs/figures/ft_llm_training/node_healthy_check.jpg deleted file mode 100644 index 519bc0cf24a6e441c01c1af2e1d00af7b6afa091..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 139750 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 diff --git a/docs/tech_report/fault_tolerance_exps.md b/docs/tech_report/fault_tolerance_exps.md new file mode 100644 index 000000000..f32d8d1ec --- /dev/null +++ b/docs/tech_report/fault_tolerance_exps.md @@ -0,0 +1,492 @@ +# Fault-tolerance and Elasticity Experiments of DLRover ElasticJob + +The tutorial shows experiments to test the fault-tolerance and elasticity +of DLRover ElasticJob. In the experiments, we use the chaos enginerring toolkit +[chaosblade](https://github.com/chaosblade-io/chaosblade) to simulate fault scenarios. + +## Preliminary + +- Create a k8s cluster and configure cluster credentials on your local computer. +- Deploy DLRover ElasticJob on the k8s cluster with the [tutorial](torch_on_cloud.md). +- Build the image with chaosblade like the [example](../../examples/pytorch/mnist/mnist_chaos.dockerfile). + +## Experiments of PyTorch Distributed Job + +We conduct experiments to simulate the following scenarios: + +- The Pod is preempted. +- The Pod is a straggler. +- The Pod is placed on a fualt node. +- The Pod network breaks down during training. +- The training process corrupts in the Pod. + +### Pod is Preempted + +In the experiment, we submit a job with the [example](../../examples/pytorch/mnist/choas_test_job.yaml) +and the command in the worker spec is + +```yaml + command: + - /bin/bash + - -c + - "dlrover-run --network-check --exclude-straggler --nnodes=3:$WORKER_NUM \ + --nproc_per_node=2 --max_restarts=3 --rdzv_conf pend_timeout=600 \ + examples/pytorch/mnist/cnn_train.py --num_epochs 5 \ + --training_data /data/mnist_png/training/ \ + --validation_data /data/mnist_png/testing/" +``` + +The Pods of the job are: + +```text +chaos-test-edljob-worker-0 1/1 Running 0 85s +chaos-test-edljob-worker-1 1/1 Running 0 85s +chaos-test-edljob-worker-2 1/1 Running 0 85s +chaos-test-edljob-worker-3 1/1 Running 0 85s +elasticjob-chaos-test-dlrover-master 1/1 Running 0 89s +``` + +We kill the worker-0 to simulate that the Pod is preempted by the command + +```bash +kubectl -n dlrover delete pod chaos-test-edljob-worker-0 +``` + +After killing worker-0, job Pods are + +```text +chaos-test-edljob-worker-1 1/1 Running 0 2m3s +chaos-test-edljob-worker-2 1/1 Running 0 2m3s +chaos-test-edljob-worker-3 1/1 Running 0 2m3s +chaos-test-edljob-worker-4 1/1 Running 0 30s +elasticjob-chaos-test-dlrover-master 1/1 Running 0 2m7s +``` + +Then, we can see the log of worker to check whether the training restores. + +```bash +kubectl -n dlrover logs chaos-test-edljob-worker-1 +``` + +```text +loss = 2.298487901687622, step = 0 +INFO:torch.nn.parallel.distributed:Reducer buckets have been rebuilt in this iteration. +INFO:torch.nn.parallel.distributed:Reducer buckets have been rebuilt in this iteration. +loss = 2.195965051651001, step = 20 +loss = 1.2307546138763428, step = 40 +loss = 0.6579511761665344, step = 60 +loss = 1.0608341693878174, step = 80 +loss = 0.7761049270629883, step = 100 +``` + +### Straggler Pod + +In the experiment, we set replicas of worker to 4 in a job and +use chaosblade to perform a CPU full load 90% on the `worker-1` with the command + +```bash +chaosblade-1.7.2/blade create cpu load --cpu-percent 90 +``` + +If you use the image `registry.cn-hangzhou.aliyuncs.com/intell-ai/dlrover:torch201-mnist`, +you can use chaosblade to create a chaos experiment by + +```bash +sh examples/pytorch/mnist/start_chaos.sh cpu-overload +``` + +and set the command in the yaml of elasticjob like the [example](../../examples/pytorch/mnist/choas_test_job.yaml). + +```yaml + command: + - /bin/bash + - -c + - "(bash examples/pytorch/mnist/start_chaos.sh cpu-overload &) && \ + dlrover-run --network-check --exclude-straggler --nnodes=3:$WORKER_NUM \ + --nproc_per_node=2 --max_restarts=3 --rdzv_conf pend_timeout=600 \ + examples/pytorch/mnist/cnn_train.py --num_epochs 5 \ + --training_data /data/mnist_png/training/ \ + --validation_data /data/mnist_png/testing/" +``` + +After submitting an ElasticJob to the k8s cluster by +`kubectl -n dlrover apply -f examples/pytorch/mnist/choas_test_job.yaml`, +We can see the `worker-1` exits with errors like + +```text +elasticjob-torch-mnist-debug-dlrover-master 0/1 Completed 0 3h17m +torch-mnist-debug-edljob-worker-0 0/1 Completed 0 3h17m +torch-mnist-debug-edljob-worker-1 0/1 Error 0 3h17m +torch-mnist-debug-edljob-worker-2 0/1 Completed 0 3h17m +torch-mnist-debug-edljob-worker-3 0/1 Completed 0 3h17m +torch-mnist-debug-edljob-worker-4 0/1 Completed 0 3h10m +``` + +From the log of worker-1 by `kubectl -n dlrover logs torch-mnist-debug-edljob-worker-1`, +worker-1 fails because it is a straggler. If we don't want to the worker-1 fails due to +straggler, we can remove the config `dlrover-run --network-check --exclude-straggler` +from the command like `dlrover-run --network-check`. + +```text +[2023-09-26 03:52:20,235] [INFO] [training.py:707:run] Fault nodes are: [] and stragglers are: [1]. +Traceback (most recent call last): + File "/usr/local/bin/dlrover-run", line 8, in + sys.exit(main()) + ... + File "/usr/local/lib/python3.8/site-packages/dlrover/python/elastic_agent/torch/training.py", line 733, in run + raise RuntimeError("The node is a straggler and exits.") +RuntimeError: The node is a straggler and exits. + +``` + +We can see the elapsed time of each node to run the task to check straggler in the master log. + +```bash +kubectl -n dlrover logs elasticjob-torch-mnist-debug-dlrover-master | grep elapsed +``` + +```text +Round 0: The node elapsed time are {2: 20.307, 3: 20.265, 0: 206.872, 1: 151.752} +Round 1: The node elapsed time are {2: 20.307, 3: 20.265, 0: 23.174, 1: 135.961} +Round 2: The node elapsed time aree {2: 21.491, 0: 22.685, 3: 20.889, 1: 23.097} +``` + +From the log, The worker-1 the elapsed time is much bigger than others in the first 2 rounds. +After the worker-1 fails, the ElasticJob relaunch a new Pod worker-4 to restore the failed Pod. +The elapsed times of all nodes have not significant differenct. Note. the index is the +`WOKRER_RANK` of node. The `WORKER_RANK` of worker-4 is the same as worker-1. + +### Fault Node + +In the experiment, we set replicas of worker to 4 in a job and +use chaosblade to kill the process to run `run_network_check.py` +to simulate the fault node. + +and set the command in the yaml of elasticjob like the [example](../../examples/pytorch/mnist/choas_test_job.yaml). + +```yaml +command: + - /bin/bash + - -c + - "(bash examples/pytorch/mnist/start_chaos.sh kill-process &) && \ + dlrover-run --network-check --exclude-straggler --nnodes=3:$WORKER_NUM \ + --nproc_per_node=2 --max_restarts=3 --rdzv_conf pend_timeout=600 \ + examples/pytorch/mnist/cnn_train.py --num_epochs 5 \ + --training_data /data/mnist_png/training/ \ + --validation_data /data/mnist_png/testing/" +``` + +```text +chaos-test-edljob-worker-0 1/1 Running 0 12m +chaos-test-edljob-worker-1 0/1 Error 0 12m +chaos-test-edljob-worker-2 1/1 Running 0 12m +chaos-test-edljob-worker-3 1/1 Running 0 12m +chaos-test-edljob-worker-4 1/1 Running 0 3m59s +elasticjob-chaos-test-dlrover-master 1/1 Running 0 12m +``` + +The worker-1 fails with the message + +```text +Traceback (most recent call last): + .... + File "/usr/local/lib/python3.8/site-packages/dlrover/python/elastic_agent/torch/training.py", line 732, in run + raise RuntimeError("The node network is breakdown.") +RuntimeError: The node network is breakdown. +``` + +From the master log by `kubectl -n dlrover logs elasticjob-chaos-test-dlrover-master | grep "The node status"`, +the worker-1 fails in the first 2 round check. Afther worker-4 starts to replace worker-1, +all nodes are noraml. + +```text +Round 1: The node status are {1: False, 2: True, 3: True, 0: False}. +Round 2: The node status are {1: False, 2: True, 3: True, 0: True}. +Round 3: The node status are {3: True, 0: True, 1: True, 2: True}. +``` + +### Network Breakdown + +In the experiment, we set replicas of worker to 4 in a job and +use chaosblade to set the network loss rate to 100% to simulate +that the network of the node is breakdown. + +We watch the log of worker-1 to check whether the training starts. +The training starts if `loss=..., step=...` in the log. +After the training starts, we perform a network loadd rate 100% +in the worker-1 to simulate the networker of worker-1 is breakdown. + +```bash +kubectl -n dlrover exec -it chaos-test-edljob-worker-1 bash +./chaosblade-1.7.2/blade create network loss --percent 100 --interface eth0 +``` + +Then, the worker-1 fails and a new worker-4 starts to replace the worker-1. + +```text +chaos-test-edljob-worker-0 1/1 Running 0 4m39s +chaos-test-edljob-worker-1 0/1 Error 0 4m39s +chaos-test-edljob-worker-2 1/1 Running 0 4m39s +chaos-test-edljob-worker-3 1/1 Running 0 4m39s +chaos-test-edljob-worker-4 1/1 Running 0 17s +elasticjob-chaos-test-dlrover-master 1/1 Running 0 4m43s +``` + +The training also restores after the worker-4 starts by the log of worker-0. + +```text +loss = 0.24101698398590088, step = 0 +INFO:torch.nn.parallel.distributed:Reducer buckets have been rebuilt in this iteration. +INFO:torch.nn.parallel.distributed:Reducer buckets have been rebuilt in this iteration. +loss = 0.4646361768245697, step = 20 +``` + +### Training Process Corruption + +In the experiment, we set replicas of worker to 4 in a job and +use chaosblade to kill a training process to simulate the GPU error. + +We watch the log of worker-1 to check whether the training starts. +The training starts if `loss=..., step=...` in the log. +After the training starts, we kill a process in the worker-1. + +```bash +kubectl -n dlrover exec -it chaos-test-edljob-worker-1 bash +ps -aux | grep cnn_train.py +``` + +Then, we can kill a training process by `kill -9 ${PID}`. The all workers +are still running and we can see that the training restarts from the log. + +```text +chaos-test-edljob-worker-0 1/1 Running 0 3m4s +chaos-test-edljob-worker-1 1/1 Running 0 3m4s +chaos-test-edljob-worker-2 1/1 Running 0 3m4s +chaos-test-edljob-worker-3 1/1 Running 0 3m4s +elasticjob-chaos-test-dlrover-master 1/1 Running 0 3m9s +``` + +### Scale Up Nodes + +In the experiment, we use the [example](../../examples/pytorch/mnist/elastic_job.yaml) +to submit an elastic training job. In the job, we set the `min_node=3` and +`max_node=$WORKER_NUM` as the number of replicas. The ElasticJob will set the replicas +into the environment `WORKER_NUM`. + +At first, there are 3 running workers and 1 pending worker due to the insufficient resource. + +```text +elasticjob-torch-mnist-dxlrover-master 1/1 Running 0 57s +torch-mnist-edljob-worker-0 1/1 Running 0 47s +torch-mnist-edljob-worker-1 1/1 Running 0 47s +torch-mnist-edljob-worker-2 1/1 Running 0 47s +torch-mnist-edljob-worker-3 0/1 Pending 0 47s +``` + +After about 2 min, we can see the training starts in 3 running workers with the log. + +```text +[2023-09-27 02:23:21,097] [INFO] [training.py:344:_rendezvous] [default] Rendezvous complete for workers. Result: + restart_count=0 + master_addr=192.168.0.71 + master_port=36725 + group_rank=0 + group_world_size=3 + local_ranks=[0, 1] + role_ranks=[0, 1] + global_ranks=[0, 1] + role_world_sizes=[6, 6] + global_world_sizes=[6, 6] + +rank 1 is initialized local_rank = 1 +loss = 2.3198373317718506, step = 0 +loss = 2.2946105003356934, step = 0 +loss = 1.7543025016784668, step = 20 +``` + +Then, we kill another job to release resource and the worker-3 will start. + +```text +elasticjob-torch-mnist-dlrover-master 1/1 Running 0 5m39s +torch-mnist-edljob-worker-0 1/1 Running 0 5m34s +torch-mnist-edljob-worker-1 1/1 Running 0 5m34s +torch-mnist-edljob-worker-2 1/1 Running 0 5m34s +torch-mnist-edljob-worker-3 1/1 Running 0 5m34s +``` + +From the log of worker-0, we can see the training starts with `group_world_size=4`. + +```text +[2023-09-27 02:25:43,362] [INFO] [training.py:344:_rendezvous] [default] Rendezvous complete for workers. Result: + restart_count=1 + master_addr=192.168.0.71 + master_port=58241 + group_rank=0 + group_world_size=4 + local_ranks=[0, 1] + role_ranks=[0, 1] + global_ranks=[0, 1] + role_world_sizes=[8, 8] + global_world_sizes=[8, 8] + +rank 1 is initialized local_rank = 1rank 0 is initialized local_rank = 0 + +loss = 2.2984073162078857, step = 0 +loss = 2.1407980918884277, step = 20 +loss = 1.1324385404586792, step = 40 +loss = 0.4783979058265686, step = 60 +loss = 0.5714012384414673, step = 80 +loss = 0.6941334009170532, step = 100 +``` + +### Scale Down Nodes + +In the experiment, we use the [example](../../examples/pytorch/mnist/elastic_job.yaml) +to submit an elastic training job. In the job, we set the `min_node=3` and +`max_node=$WORKER_NUM` as the number of replicas. The ElasticJob will set the replicas +into the environment `WORKER_NUM`. + +At first, there are 4 running workers. + +```text +elasticjob-torch-mnist-dlrover-master 1/1 Running 0 2m43s +torch-mnist-edljob-worker-0 1/1 Running 0 2m38s +torch-mnist-edljob-worker-1 1/1 Running 0 2m38s +torch-mnist-edljob-worker-2 1/1 Running 0 2m38s +torch-mnist-edljob-worker-3 0/1 Running 0 2m38s +``` + +Then, we use the chaosblade to make worker-1 failed. + +```bash +kubectl -n dlrover exec -it torch-mnist-edljob-worker-1 bash +./chaosblade-1.7.2/blade create process kill --process dlrover-run --signal 1 +``` + +```text +elasticjob-torch-mnist-dlrover-master 1/1 Running 0 4m43s +torch-mnist-edljob-worker-0 1/1 Running 0 4m38s +torch-mnist-edljob-worker-1 0/1 Error 0 4m38s +torch-mnist-edljob-worker-2 1/1 Running 0 4m38s +torch-mnist-edljob-worker-3 1/1 Running 0 4m38s +``` + +From the log of worker-0, we can see the training restores the model and data sampler +from the checkpoint and starts with `group_world_size=3`. + +```text +[2023-09-27 03:18:00,815] [INFO] [training.py:344:_rendezvous] [default] Rendezvous complete for workers. Result: + restart_count=1 + master_addr=192.168.0.66 + master_port=39705 + group_rank=0 + group_world_size=3 + local_ranks=[0, 1] + role_ranks=[0, 1] + global_ranks=[0, 1] + role_world_sizes=[6, 6] + global_world_sizes=[6, 6] + +[2023-09-27 03:18:05,957] [INFO] [sampler.py:153:load_state_dict] Load epoch = 0, completed num = 51200, num_samples = 1467 +[2023-09-27 03:18:05,958] [INFO] [sampler.py:153:load_state_dict] Load epoch = 0, completed num = 51200, num_samples = 1467 +loss = 0.2617453336715698, step = 0 +loss = 0.2548859417438507, step = 20 +``` + +## Experiments of TensorFlow PS Distributed Job + +We conduct experiments with the TF distributed job using PS to +test the fault-tolerance of worker and PS. + +### Fault-tolerance of Worker + +We can sumit a TensorFlow PS job using the [example](../../examples/tensorflow/criteo_deeprec/manual_job.yaml). +The job will launch 1 chief, 1 worker and 1 PS. + +```bash +kubectl -n dlrover apply -f examples/tensorflow/criteo_deeprec/manual_job.yaml +``` + +```text +deepctr-manual-scale-edljob-chief-0 1/1 Running 0 88s +deepctr-manual-scale-edljob-ps-0 1/1 Running 0 88s +deepctr-manual-scale-edljob-worker-0 1/1 Running 0 88s +elasticjob-deepctr-manual-scale-dlrover-master 1/1 Running 0 99s +``` + +We use `kubectl` to kill a worker. + +```bash +kubectl -n dlrover delete pod deepctr-manual-scale-edljob-worker-0 +``` + +After the worker-0 is killed, the job relaunch the worker-1 to restore the failed node. + +```text +NAME READY STATUS RESTARTS AGE +deepctr-manual-scale-edljob-chief-0 1/1 Running 0 2m57s +deepctr-manual-scale-edljob-ps-0 1/1 Running 0 2m57s +deepctr-manual-scale-edljob-worker-1 1/1 Running 0 60s +elasticjob-deepctr-manual-scale-dlrover-master 1/1 Running 0 3m8s +``` + +After the job runs about 4min, the chief-0 fails with OOM due to the insufficient memory +configuration. The job relaunches the chief-1 with more memory to restore it. + +```text +deepctr-manual-scale-edljob-chief-0 0/1 OOMKilled 0 4m53s +deepctr-manual-scale-edljob-chief-1 1/1 Running 0 64s +deepctr-manual-scale-edljob-ps-0 1/1 Running 0 4m53s +deepctr-manual-scale-edljob-worker-1 1/1 Running 0 2m56s +``` + +We can view the memory of chief-0 and chief-1 by + +```bash +kubectl -n dlrover get pod deepctr-manual-scale-edljob-chief-0 -o yaml | grep memory + +>>> + memory: 4Gi + memory: 4Gi +``` + +```bash +kubectl -n dlrover get pod deepctr-manual-scale-edljob-chief-1 -o yaml | grep memory + +>>> + memory: 8Gi + memory: 8Gi +``` + +We can view the log of chief-1 to check whether the training restores. + +```shell +[2023-03-20 11:51:10,774] [INFO][session_manager.py:511:_try_run_local_init_op] Running local_init_op. +[2023-03-20 11:51:11,302] [INFO][session_manager.py:513:_try_run_local_init_op] Done running local_init_op. +[2023-03-20 11:51:14,279] [INFO][global_step_hook.py:39:before_run] global_step: 126 +``` + +### Fault-tolerance of PS + +We kill the ps-0 by `kubectl -n dlrover delete pod deepctr-manual-scale-edljob-ps-0`. +The job relaunches the ps-1 to restore the killed ps-0> + +```text +deepctr-manual-scale-edljob-chief-0 0/1 OOMKilled 0 10m +deepctr-manual-scale-edljob-chief-1 1/1 Running 0 7m1s +deepctr-manual-scale-edljob-ps-1 1/1 Running 0 109s +deepctr-manual-scale-edljob-worker-1 0/1 OOMKilled 0 8m53s +deepctr-manual-scale-edljob-worker-2 1/1 Running 0 4m13s +elasticjob-deepctr-manual-scale-dlrover-master 1/1 Running 0 11m +``` + +From the log of chief, the training job restore the model from the latest checkpoint +and contiune training the model. + +```text +[2023-09-26 19:24:00,861] [INFO][saver.py:1531:restore] Restoring parameters from /nas/deepctr/model.ckpt-126 +[2023-09-26 19:24:03,473] [INFO][session_manager.py:511:_try_run_local_init_op] Running local_init_op. +[2023-09-26 19:24:03,580] [INFO] [resource.py:164:report_resource] Report Resource CPU : 0.98, Memory 7146, GPU [] +[2023-09-26 19:24:03,670] [INFO][session_manager.py:513:_try_run_local_init_op] Done running local_init_op. +[2023-09-26 19:24:07,665] [INFO][basic_session_run_hooks.py:627:_save] Saving checkpoints for 126 into /nas/deepctr/model.ckpt. +``` diff --git a/docs/tutorial/check_node_health.md b/docs/tutorial/check_node_health.md new file mode 100644 index 000000000..ebc0e4ccd --- /dev/null +++ b/docs/tutorial/check_node_health.md @@ -0,0 +1,115 @@ +# Introduction to Check the Node Healthy using DLRover + +The document introduces how to use DLRover to check the slow or fault node +in a distributed job on a k8s cluster. + +## System Design + +In a distributed job, DLRover will launch a job master process to group the nodes. +Before starting the training subprocess, The job master initially divides all nodes +into multiple worlds in pairs. The two nodes in each world execute an allgather task +and a matmul task. After tasks are completed, each node will reports the execution time +to the job master. If the timeout happens in the allgather task, the execution time +will be 3600s. If the execution times of all nodes are not 3600s, the job master will +print the execution time in the log. Users can find the slow node with the execution +time. + +If the execution times of some nodes are 3600s, there may be fault node in the distributed +job. However, we cannot disagnose which node are fault. Because, the execution times +of two nodes in group both are 3600s to execute the allgather task if anyone is faulty. +Now, the job master will sort nodes by the execution time and +group together the node with the longest execution time and the one with +the shortest execution time. All nodes will execute the check task again. According to +the execution time of two rounds check, the job master can diagnose the node is faulty +whose execution time in two rounds both are 3600s. + +For example, if there are 6 nodes in a job, the 1st round of division results might be +[{1,2}, {3,4}, {5,6}]. If allgather fails in the group {5, 6}, the node 5 and 6 are the +potential faulty nodes. Therefore, the 2nd round of division would be [{1,2}, {3,5}, {4,6}]. +If {4,6} fails, it indicates that node 6 is the faulty node. The node 6 will exit with +an exception. + +

+ +## Check Node Healthy in Distributed Job with dlrover-run + +We can use `dlrover-run` to replace the `torchrun` to check the node health in +a distributed PyTorch job. The `dlrover-run` is developed based `torchrun` and +`dlrover-run` support all arguments of `torchrun`. + +### Check Node Healthy in a DLRover ElasticJob + +The DLRover ElasticJob can relaunch a new Pod to replace the fault Pod and can +scale up/down Pods to train if the number of available nodes changes during +the training. If you can develop a k8s CRD on a cluster, we strongly suggest you deploy the +ElasticJob CRD on the cluster by the following steps. + +```bash +git clone git@github.com:intelligent-machine-learning/dlrover.git +cd dlrover/go/operator/ +make deploy IMG=easydl/elasticjob-controller:master +# Grant permission for the DLRover master to Access CRDs. +kubectl -n dlrover apply -f config/manifests/bases/default-role.yaml +``` + +After deploying the ElasticJob, we can submit a distributed job with +the `dlrover-run --network-check` in the job yaml like + +```yaml +command: + - /bin/bash + - -c + - "dlrover-run --network-check --nnodes=3:$NODE_NUM --nproc_per_node=2 --max_restarts=3 \ + examples/pytorch/mnist/cnn_train.py --num_epochs 5 \ + --training_data /data/mnist_png/training/ \ + --validation_data /data/mnist_png/testing/" +``` + +Then, we submit the job yaml to the cluster like + +```bash +kubectl -n dlrover apply -f examples/pytorch/mnist/elastic_job.yaml +``` + +After the job starts, we can check the execution time of nodes to execute the check +task in the log of job master. The name of job master is like "elasticjob-{JOB-NAME}-dlrover-master". +We can find the execution time of each node by the command + +```bash +kubectl -n dlrover logs elasticjob-torch-mnist-debug-dlrover-master | grep elapsed +``` + +```text +Round 0: The node elapsed time are {2: 20.307, 3: 20.265, 0: 206.872, 1: 151.752} +Round 1: The node elapsed time are {2: 20.307, 3: 20.265, 0: 23.174, 1: 135.961} +Round 2: The node elapsed time aree {2: 21.491, 0: 22.685, 3: 20.889, 1: 23.097} +``` + +In the [experiment](../tech_report/fault_tolerance_exps.md) to find thestraggler node, +the execution time of Node 1 is much bigger than others, so the node 1 is probably a slow node. + +### Check Node Healthy in a Kubeflow/PyTorch Job + +If you cannot deploy an ElasticJob CRD on the k8s cluster, you also can use +`dlrover-run` in a [Kubeflow/PyTorch](https://www.kubeflow.org/docs/components/training/pytorch/) +job to check the node health. The Kubeflow/PyTorch job +is commonly used on the k8s cluster to manage a PyTorch distributed job. We only need to set +the `NODE_RANK` and `DLROVER_MASTER_ADDR` before `dlrover-run`. `dlrover-run` will +launch a job master process in the master Pod of the PyTorch job. +For example, the `PyTorchJob` has set the `RANK`, `MASTER_ADDR` and `MASTER_PORT` +into environments. We can run `dlrover-run` like + +```bash +NODE_RANK=$RANK DLROVER_MASTER_ADDR=$MASTER_ADDR:$MASTER_PORT \ +dlrover-run --standalone --network-check --nnodes=$NODE_NUM --nproc_per_node=$NUM_TRAINERS train_script.py +``` + +Then, we can search the execution time on the master Pod of PyTorchJob. + +```bash +kubectl -n dlrover logs elasticjob-torch-mnist-debug-dlrover-master | grep elapsed +``` + +We can find the slow of fault node by the execution time. diff --git a/examples/pytorch/nanogpt/README.md b/examples/pytorch/nanogpt/README.md index 947b8d0fc..a94377b39 100644 --- a/examples/pytorch/nanogpt/README.md +++ b/examples/pytorch/nanogpt/README.md @@ -62,8 +62,6 @@ use the command in the containers of worker. ```bash dlrover-run --nnodes=$WORKER_NUM \ --nproc_per_node=${GPU_NUM_PER_NODE} --max_restarts=1 \ - ./examples/pytorch/nanogpt/train.py \ - --data_dir '/data/nanogpt/' \ - --gradient_accumulation_steps $((WORKER_NUM * 1)) \ - --use_fsdp + ./examples/pytorch/nanogpt/fsdp_train.py \ + --data_dir '/data/nanogpt/' --epochs 50 --checkpoint_step 50 \ ``` diff --git a/examples/pytorch/nanogpt/ds_train.py b/examples/pytorch/nanogpt/ds_train.py index 3b37bbfc8..1f0c3703c 100644 --- a/examples/pytorch/nanogpt/ds_train.py +++ b/examples/pytorch/nanogpt/ds_train.py @@ -17,8 +17,7 @@ dlrover-run --nnodes=1 --max_restarts=2 --nproc_per_node=2 \ ds_train.py --n_layer 36 --n_head 20 --n_embd 1280 \ - --data_dir './' \ - --device cuda --ds_config ./ds_config.json \ + --data_dir './' --ds_config ./ds_config.json \ --epochs 50 --checkpoint_step 50 """