【pytorch】pytorch的缓存策略——计算机分层理论的另一大例证

笔者在pytorch论坛看到一段代码,源代码中调用了两次model,在测试时笔者发现调用多次model的结果仍然如此。

经过ptrblck大神的解答,似乎是pytorch中有缓存的策略,可以将变量使用到的内存留在缓存池中重复使用。

PyTorch 会在后台管理内存池(memory pool)。当你删除或覆盖一个变量时,PyTorch 并不会立即将这块内存归还给操作系统,而是将其加入到缓存中,以便后续再分配给其他变量。这样,后续的内存分配可以直接从缓存中拿到空闲内存,从而避免了频繁的内存分配和释放,提升了程序的性能。

这就相当于在内存上加了一层pytorch的内存池,原来使用完直接释放的模式变为了使用后通过内存池再释放的模式。

相关推荐
没有不重的名么5 分钟前
在Pytorch中使用Tensorboard可视化训练过程
人工智能·pytorch·python
程序媛徐师姐6 分钟前
Python基于Django的全国二手房可视化分析系统【附源码】
python·django·全国二手房可视化分析系统·二手房可视化分析系统·二手房房价可视化·二手房可视化·二手房房价可视化分析系统
小lo想吃棒棒糖8 分钟前
当自动驾驶遇上“安全驾校”:NVIDIA如何用技术给无人驾驶赋能?
人工智能·安全·自动驾驶
余弦的倒数9 分钟前
计算机视觉各类任务评价指标详解
人工智能·计算机视觉
东木月24 分钟前
Python解析地址中省市区街道
开发语言·python
小彭律师31 分钟前
SinSR模型剪枝实验报告
人工智能·算法·剪枝
何双新37 分钟前
L2-1、打造稳定可控的 AI 输出 —— Prompt 模板与格式控制
人工智能·prompt
意.远38 分钟前
PyTorch卷积层填充(Padding)与步幅(Stride)详解及代码示例
人工智能·pytorch·python·深度学习
玩电脑的辣条哥2 小时前
一台服务器已经有个python3.11版本了,如何手动安装 Python 3.10,两个版本共存
服务器·python·python3.11
weixin_307779132 小时前
PySpark实现ABC_manage_channel逻辑
开发语言·python·spark