解决方法:
设置“ACCELERATE_TORCH_DEVICE”变量至指定显卡
import os
os.environ["ACCELERATE_TORCH_DEVICE"] = "cuda:2"
源码内容如下:
问题描述:
代码中使用Accelerator 时发现,显卡总会指向一个默认的卡号。
尝试多种方式未果:
- 修改系统检测显卡
import os
os.environ['CUDA_VISIBLE_DEVICES']
- 设置Accelerator参数
self.accelerator = Accelerator(
device_placement=False,
split_batches=args.split_batches,
mixed_precision='fp16' if args.fp16 else 'no'
)
- 设置Accelerator Config内容
# 控制台操作:
accelerate config
# 按指示输入
NO
NO
NO
2 # 2号卡