#!/bin/bash export HSA_FORCE_FINE_GRAIN_PCIE=1 export MIOPEN_FIND_MODE=3 export MIOPEN_COMPILE_PARALLEL_LEVEL=1 export NCCL_PLUGIN_P2P=ucx export NCCL_SOCKET_IFNAME=ib0 export NCCL_P2P_LEVEL=5 export NCCL_IB_HCA=mlx5_0 export NCCL_DEBUG=INFO export NCCL_NET_PLUGIN=none lrank=$OMPI_COMM_WORLD_LOCAL_RANK echo "LRANK===============================$lrank" RANK=$OMPI_COMM_WORLD_RANK WORLD_SIZE=$OMPI_COMM_WORLD_SIZE export HIP_VISIBLE_DEVICES=0,1,2,3 LR=1e-5 APP="python3 ../main.py \ --deepspeed ../deepspeed.json \ --do_train \ --train_file AdvertiseGen/train.json \ --prompt_column content \ --response_column summary \ --model_name_or_path THUDM/chatglm-6b \ --output_dir ./output_ft/pretrain \ --overwrite_output_dir \ --max_source_length 64 \ --max_target_length 64 \ --per_device_train_batch_size 1 \ --per_device_eval_batch_size 1 \ --gradient_accumulation_steps 1 \ --predict_with_generate \ --max_steps 2000 \ --logging_steps 5 \ --save_steps 1000 \ --learning_rate $LR \ --fp16 \ --local_rank $lrank " case ${lrank} in [0]) export HIP_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 export UCX_NET_DEVICES=mlx5_0:1 export UCX_IB_PCI_BW=mlx5_0:50Gbs numactl --cpunodebind=0 --membind=0 ${APP} ;; [1]) export HIP_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 export UCX_NET_DEVICES=mlx5_1:1 export UCX_IB_PCI_BW=mlx5_1:50Gbs numactl --cpunodebind=0 --membind=0 ${APP} ;; [2]) export HIP_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 export UCX_NET_DEVICES=mlx5_2:1 export UCX_IB_PCI_BW=mlx5_2:50Gbs numactl --cpunodebind=0 --membind=0 ${APP} ;; [3]) export HIP_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 export UCX_NET_DEVICES=mlx5_3:1 export UCX_IB_PCI_BW=mlx5_3:50Gbs numactl --cpunodebind=0 --membind=0 ${APP} ;; [4]) export HIP_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 export UCX_NET_DEVICES=mlx5_4:1 export UCX_IB_PCI_BW=mlx5_4:50Gbs numactl --cpunodebind=3 --membind=3 ${APP} ;; [5]) export HIP_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 export UCX_NET_DEVICES=mlx5_5:1 export UCX_IB_PCI_BW=mlx5_5:50Gbs numactl --cpunodebind=3 --membind=3 ${APP} ;; [6]) export HIP_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 export UCX_NET_DEVICES=mlx5_6:1 export UCX_IB_PCI_BW=mlx5_6:50Gbs numactl --cpunodebind=3 --membind=3 ${APP} ;; [7]) export HIP_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 export UCX_NET_DEVICES=mlx5_7:1 export UCX_IB_PCI_BW=mlx5_7:50Gbs numactl --cpunodebind=3 --membind=3 ${APP} ;; esac