pytorch - 如何去除 GPU 内存中的变压器模型
问题描述
from transformers import CTRLTokenizer, TFCTRLLMHeadModel
tokenizer_ctrl = CTRLTokenizer.from_pretrained('ctrl', cache_dir='./cache', local_files_only=True)
model_ctrl = TFCTRLLMHeadModel.from_pretrained('ctrl', cache_dir='./cache', local_files_only=True)
print(tokenizer_ctrl)
gen_nlp = pipeline("text-generation", model=model_ctrl, tokenizer=tokenizer_ctrl, device=1, return_full_text=False)
你好,我的代码可以将transformer模型,例如这里的CTRL,加载到gpu内存中。如何在使用后将其从 GPU 中删除,以释放更多的 gpu 内存?
显示我使用torch.cuda.empty_cache()
?
谢谢。
解决方案
您可以简单地del tokenizer_ctrl
然后使用torch.cuda.empty_cache()
.
请参阅 pytorch 论坛中讨论它的这个线程。
推荐阅读
- sql - 在父级别的 SQL 递归查询中查找 MIN 值?
- python - 尝试在python中连接到套接字服务器,拒绝连接
- python - Flask - 获取点击的链接信息并将其传递回 python 文件
- php - Laravel 规则:基于两个请求输入的自定义验证
- c - 如何使用 fork() 在 C 中运行 3 个命令?
- html - Google reCAPTCHA v2:加载时遇到无效的“X-Frame-Options”标头
- jmeter - 当为 100 个线程执行 Jmeter 脚本时,Grafana 仪表板将“活动用户”显示为 1
- angular - 我应该为这个 Angular 组件编写哪些测试?
- amazon-web-services - 签名与 presignedUrl DigitalOCeane 上的错误不匹配
- javascript - 为什么我得到未捕获的类型错误属性值无法设置为未定义?