tuoheng_AIPlatform/yolov5-th/gpu_check.py

46 lines
1.7 KiB
Python
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import torch
def check_gpu_availability():
"""检查GPU可用性并打印详细信息"""
print("="*50)
print("GPU/CUDA 可用性检查")
print("="*50)
# 1. 检查PyTorch是否支持CUDA
if not torch.cuda.is_available():
print("❌ 错误: PyTorch未编译CUDA支持或未检测到NVIDIA驱动")
return False
# 2. 检查GPU数量
gpu_count = torch.cuda.device_count()
print(f"✅ 找到 {gpu_count} 个GPU设备")
# 3. 打印每个GPU的详细信息
for i in range(gpu_count):
print(f"\nGPU {i} 详细信息:")
print(f" 名称: {torch.cuda.get_device_name(i)}")
print(f" CUDA计算能力: {torch.cuda.get_device_capability(i)}")
print(f" 总显存: {torch.cuda.get_device_properties(i).total_memory/1024**3:.2f} GB")
# 检查当前是否被选中
current_device = torch.cuda.current_device()
print(f" {'' if i == current_device else ' '} 当前使用设备: {'' if i == current_device else ''}")
# 4. 执行实际GPU计算测试
try:
print("\n正在执行GPU计算测试...")
x = torch.randn(1000, 1000).cuda()
y = torch.randn(1000, 1000).cuda()
z = (x @ y).mean() # 矩阵乘法
print(f"✅ GPU计算测试成功完成! 结果: {z.item():.4f}")
return True
except Exception as e:
print(f"❌ GPU计算测试失败! 错误信息:")
print(str(e))
return False
if __name__ == "__main__":
if check_gpu_availability():
print("\n🎉 您的GPU已准备好用于PyTorch训练!")
else:
print("\n⚠️ 您的GPU不可用请检查以上错误信息")