python - 在执行期间跟踪python脚本中的内存消耗
问题描述
我有大量先前获得的数据(> 500 GByte),并希望使用 Python(或其他语言,如有必要)对其进行处理。我不能一次将所有数据加载到内存中(由于显而易见的原因),因此只能加载小块。我已经尝试通过显式清除每个块之间所有生成的列表和数组来尽可能优化内存消耗,但我仍然可以看到内存消耗稳步增加。
有没有办法跟踪我在什么时候没有释放内存,以及我的内存在什么时候积累?这里最好的策略是什么?
解决方案
从 python3.4 开始,可以使用 tracemalloc 模块。
推荐阅读
- python - 绘制 pandas 列的直方图
- json - 如果我已经从 API 调用 (flutter/dart) 进行了 Json 反序列化,如何从 Firebase Cloud Firestore 反序列化数组
- maven - Azure 工件提要仅显示 pom 文件,即使 jar 打包
- html - 在导航栏中移动链接位置
- fastlane - Fastlane:如何将lane_context传递到另一个车道
- c - 如何从 libcouchbase 编译示例代码
- python-3.x - 谷歌云功能在流数据到大查询时达到 10MB 速率限制,而不管使用块?
- php - PHP pdo 仅在查询被硬编码时获得结果
- angular - 动画时垫步内容消失 - mat-horizontal-stepper
- mapbox - Mapbox - 如何在 Mapbox 中添加 .pbf 文件作为图层?