GPU加速与非加速的深度学习张量计算对比Demo,使用PyTorch展示关键差异
import torch
import time
# 创建大型随机张量 (10000x10000)
tensor_size = 10000
x_cpu = torch.randn(tensor_size, tensor_size)
x_gpu = x_cpu.cuda() # 转移到GPU
# CPU矩阵乘法
start = time.time()
result_cpu = torch.mm(x_cpu, x_cpu.t())
cpu_time = time.time() - start
# GPU矩阵乘法
torch.cuda.synchronize() # 确保GPU计时准确
start = time.time()
result_gpu = torch.mm(x_gpu, x_gpu.t())
torch.cuda.synchronize()
gpu_time = time.time() - start
print(f"CPU计算时间: {cpu_time:.4f}秒")
print(f"GPU计算时间: {gpu_time:.4f}秒")
print(f"加速比: {cpu_time/gpu_time:.1f}倍")