Pytorch 获取当前模型占用的 GPU显存的大小

1. 背景

AI 训练模型时需要知道模型占用显存的大小,以及剩余显存大小

2. 代码

bash 复制代码
import torch


# 检查GPU是否可用
if torch.cuda.is_available():
    # 获取当前设备
    device = torch.cuda.current_device()
    # 创建一个虚拟model
    model = torch.nn.Linear(25600, 20000, 20000).cuda()

    # 获取当前模型占用的显存大小
    model_memory = torch.cuda.memory_allocated()
    # 获取PyTorch预留的显存大小
    pytorch_memory = torch.cuda.max_memory_allocated() - model_memory
    # 打印模型占用的显存大小和PyTorch预留的显存大小
    print(f"Model memory usage: {model_memory / (1024 ** 3):.2f} GB")
    print(f"PyTorch memory usage: {pytorch_memory / (1024 ** 3):.2f} GB")

    # 获取已使用的显存大小
    total_memory = torch.cuda.get_device_properties(device=device).total_memory
    # 获取剩余的显存大小
    free_memory = total_memory - model_memory
    print(f"剩余的显存大小:{free_memory / (1024 ** 3):.2f} GB")

    # 释放虚拟张量占用的显存
    del model
    torch.cuda.empty_cache()
else:
    print("GPU is not available.")

运行结果:

bash 复制代码
Model memory usage: 1.91 GB
PyTorch memory usage: 0.00 GB
剩余的显存大小:3.89 GB
相关推荐
xsd202411182 分钟前
AI去除图像中logo技术全解析:街舞拍摄场景的服饰与背景logo消除实战
人工智能
leoZ2313 分钟前
第 8 篇:与 AI 协作的工作流 + 完整案例
前端·人工智能·神经网络·自然语言处理·性能优化·c#·php
GEO实战经验分享9 分钟前
GEO三核心要素实战解析:如何用数据驱动内容投放策略
人工智能
制造数字化方案研究院11 分钟前
AI驱动的组织重构与业务范式重构:AI 是“革命性的新生产力“,不是插件而是重构
人工智能·重构
sanjiaomao33316 分钟前
硕士论文长篇写作工作流:五阶段输入输出与验收
人工智能
等一朵映山红21 分钟前
网格搜索、随机搜索与贝叶斯优化:超参数优化方法的系统性比较
人工智能·机器学习
大模型码小白23 分钟前
ChatGPT 的回答也能被结构化抓取?AI Bot Scraper 对比测评
服务器·开发语言·数据库·人工智能·spring·chatgpt
LearnYard25 分钟前
AI生成周报的技术原理与工具实践:2026年实用方案对比
人工智能
梦想不只是梦与想26 分钟前
大模型系列(二):技术基础与核心能力
python·大模型·token
AC赳赳老秦33 分钟前
农产品公开数据应用:OpenClaw 抓取农产品价格、产销公开数据,实现农产品行情动态监测
java·c语言·javascript·python·php·deepseek·openclaw