定期分享机器学习领域原创文章,公众号内容涵盖了机器学习算法和python数据分析等文章,目前监督学习方法的文章应有尽有,非监督学习的原创文章一直在更新,欢迎机器学习爱好者和从业者的加入,互相学习,共同成长。
目录
相关文章推荐
今天看啥  ›  专栏  ›  机器学习算法那些事

一文读懂 PyTorch 显存管理机制

机器学习算法那些事  · 公众号  ·  · 2024-08-04 08:59

文章预览

作者丨米阿罗@知乎(已授权转载) 来源丨https://zhuanlan.zhihu.com/p/486360176 编辑丨小书童,集智书童 1、背景介绍 剖析 PyTorch 显存管理机制主要是为了减少 「显存碎片化」 带来的影响。一个简单示例为: 如上图所示,假设当前想分配 800MB 显存,虽然空闲的总显存有 1000MB,但是上方图的空闲显存由地址不连续的两个 500MB 的块组成,不够分配这 800MB 显存;而下方的图中,如果两个 500MB 的空闲块地址连续,就可以通过显存碎片的整理组成一个 1000MB 的整块,足够分配 800MB。上方图的这种情况就被称为 「显存碎片化」 。 「解决方法」 :当有多个 Tensor 可以被释放时,可以优先释放那些在内存空间上前后有空闲内存的 Tensor。这样便于 PyTorch 整理这些空闲块组成的碎片,让三个块组成一整个更大的块。 「核心问题/前提」 :能否以非常小的代价( O(1) 或 O(lo ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览
推荐文章