鹰潭市网站建设_网站建设公司_SSL证书_seo优化
2025/12/24 18:23:34 网站建设 项目流程

在 CUDA 12.4 环境下,要结合 torch.set_sync_debug_mode() 测试 GPU 使用情况,需先明确该函数的作用:它用于开启 CUDA 同步调试模式,检测异步操作中的错误,搭配现有的设备和线程配置,具体代码如下:
import torch

1. 定义 GPU 设备 ID

dev_id = 0

2. 设置使用的 GPU 设备(两种写法等价,推荐显式指定设备对象)

torch.cuda.set_device(f’cuda:{dev_id}')

或更推荐的写法:device = torch.device(f’cuda:{dev_id}')

3. 设置 CPU 线程数(仅影响 CPU 侧运算/数据传输的并行度,与 GPU 无关)

torch.set_num_threads(10)

4. 开启 CUDA 同步调试模式(核心新增代码)

mode=1:开启严格同步检查,捕获所有异步 CUDA 错误

mode=0:关闭(默认);mode=2:开启但仅警告不抛出异常

torch.set_sync_debug_mode(1)

---------------- 测试 GPU 使用情况的示例代码 ----------------

验证设备是否可用

if torch.cuda.is_available():
print(f"当前使用 GPU: {torch.cuda.get_device_name(dev_id)}“)
print(f"CUDA 版本: {torch.version.cuda}”)

# 创建测试张量并移至 GPU x = torch.randn(1000, 1000, device=f'cuda:{dev_id}') y = torch.matmul(x, x.T) # 执行 GPU 矩阵运算 print(f"GPU 运算结果形状: {y.shape}") # 强制同步 GPU 操作(配合调试模式,确保错误及时捕获) torch.cuda.synchronize(dev_id)

else:
print(“CUDA 不可用,请检查 GPU 驱动和 PyTorch 安装”)
CUDA 12.4 额外注意点
确保 PyTorch 安装时匹配 CUDA 12.4,例如使用命令安装:
bash
运行
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124
调试时可搭配 torch.cuda.synchronize() 强制 GPU 同步,确保所有异步操作完成后再检查结果。
测试 GPU 使用率的补充建议
设备设置的等价写法
torch.cuda.set_device(‘cuda:0’) 是合法的,但更推荐使用 torch.device 对象进行后续操作,例如:device = torch.device(f’cuda:{dev_id}')
x = torch.randn(1000, 1000, device=device)

set_num_threads 的作用范围
该函数设置的是 CPU 线程数,用于 PyTorch 的 CPU 运算(如张量初始化、数据预处理),不会影响 GPU 的并行计算。
若要测试 GPU 本身的算力,可通过 torch.backends.cudnn.benchmark = True 开启 cuDNN 自动调优(可选)。

如果需要监控 GPU 实时使用率 / 显存占用(而非仅调试错误),可以在运行代码时搭配 nvidia-smi 命令:
新建终端,执行 watch -n 1 nvidia-smi(每秒刷新一次 GPU 状态)。
运行上述 Python 代码,观察终端中 GPU 使用率、显存占用的变化。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询