多进程减少多个文件的内存占用
代码如下:
def memory_usage_mb(df, *args, **kwargs):"""Dataframe memory usage in MB. """return df.memory_usage(*args, **kwargs).sum() / 1024**2def reduce_memory_usage(df, deep=True, verbose=True, categories=True):# All types that we want to change for "lighter" ones.# int8 and float16 are not include because we cannot reduce# those data types.# float32 is not include because float16 has too low precision.numeric2reduce = ["int16", "int32", "int64", "float64"]start_mem = 0if verbose:start_mem = memory_usage_mb(df, deep=deep)for col, col_type in df.dtypes.iteritems():best_type = Noneif col_type == "object":df[col] = df[col].astype("category")best_type = "category"elif col_type in numeric2reduce:downcast = "integer" if "int" in str(col_type) else "float"df[col] = pd.to_numeric(df[col], downcast=downcast)best_type = df[col].dtype.name# Log the conversion performed.if verbose and best_type is not None and best_type != str(col_type):print(f"Column '{col}' converted from {col_type} to {best_type}")if verbose:end_mem = memory_usage_mb(df, deep=deep)diff_mem = start_mem - end_mempercent_mem = 100 * diff_mem / start_memprint(f"Memory usage decreased from"f" {start_mem:.2f}MB to {end_mem:.2f}MB"f" ({diff_mem:.2f}MB, {percent_mem:.2f}% reduction)")return df
%%time
import multiprocessinglists=[train,test]
with multiprocessing.Pool() as pool:train,test = pool.map(reduce_memory_usage, lists)#这里的map就是传入参数的意思
多进程减少多个文件的内存占用相关推荐
- python 保存文件 吃内存_python检测空间储存剩余大小和指定文件夹内存占用的实例...
1.检测指定路径下所有文件所占用内存 import os def check_memory(path, style='M'): i = 0 for dirpath, dirname, filename ...
- 查看服务器文件夹内存,查看服务器各文件夹内存占用
查看服务器各文件夹内存占用 内容精选 换一换 部署提供可视化.一键式部署服务,支持并行部署和流水线无缝集成,实现部署环境标准化和部署过程自动化.本节通过以下五步介绍如何使用部署服务将项目代码部署到云主 ...
- 字符串池化,减少了三分之一的内存占用
字符串池化,减少重复实例,内存降低,一切就是这样的轻松愉快. 开篇摘要 本文通过一个简单的业务场景,来描述如何通过字符串池化来减少内存中的重复字符串实例,从而减少内存的占用. 在业务中,我们假设如下: ...
- python存储数据空间最小_python检测空间储存剩余大小和指定文件夹内存占用的实例...
{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...
- python使用函数可以减少内存吗_如何将Python内存占用缩小20倍?
当程序执行过程中RAM中有大量对象处于活动状态时,可能会出现内存问题,特别是在对可用内存总量有限制的情况下. 下面概述了一些减小对象大小的方法,这些方法可以显著减少纯Python程序所需的RAM数量. ...
- UE 手游在 iOS 平台运行时内存占用太高?试试这样着手优化
性能优化,对游戏开发来说是一个需要不断钻研的课题,性能越好,游戏才会运行的更加顺畅,玩家的体验感才会更好.腾讯游戏学院专家.游戏客户端开发 Leonn,将和大家分享 UE 手游在 iOS 平台上的内存 ...
- python减小内存占用_如何将Python内存占用缩小20倍?
当程序执行过程中RAM中有大量对象处于活动状态时,可能会出现内存问题,特别是在对可用内存总量有限制的情况下. 下面概述了一些减小对象大小的方法,这些方法可以显著减少纯Python程序所需的RAM数量. ...
- redis探秘:选择合适的数据结构,减少80%的内存占用,这些点你get到了吗?
以下文章来源于京东零售技术 ,作者平台研发武伟峰 redis作为目前最流行的nosql缓存数据库,凭借其优异的性能.丰富的数据结构已成为大部分场景下首选的缓存工具. 由于redis是一个纯内存的数据库 ...
- redis value多大会影响性能_选择合适Redis数据结构,减少80%的内存占用
前言 redis作为目前最流行的nosql缓存数据库,凭借其优异的性能.丰富的数据结构已成为大部分场景下首选的缓存工具. 由于redis是一个纯内存的数据库,在存放大量数据时,内存的占用将会非常可观. ...
最新文章
- [ERR] Not all 16384 slots are covered by nodes.
- log4net 无法输出日志,跟踪发现IsErrorEnabled等,都是Flase
- Spring Cache抽象-基于XML的配置声明(基于ConcurrentMap的配置)
- 共享X轴,分成上下两图
- 阿里云数据库自研产品亮相国际顶级会议ICDE 推动云原生数据库成为行业标准
- ASP.NET页面跳转
- MySQL 5.7 忘记密码
- java+swing+教科书,java+Swing+学生事务管理系统
- 使用Screaming Frog SEO Spider 如何查找断开的链接
- WCF分布式安全开发实践(10):消息安全模式之自定义用户名密码:Message_UserNamePassword_WSHttpBinding...
- 身份证验证Java代码
- x80hd装linux,台电X80HD:双系统切换的方法演示_台电 X80HD_平板电脑评测-中关村在线...
- python打印100以内质数_python输出100以内的质数与合数实例代码
- 想下以前的CyanogenMod 源码怎么办
- 一键解决word文档样式格式问题
- 意识的世界之视觉意识
- 小红书笔记无法展示是什么原因?让我们来看看吧
- “添翼杯”人工智能创新应用大赛之垃圾分类
- 离散数学·代数结构【正规子群、商群、群的同态和同构、环与域、格、布尔代数】
- 算法工程师之劝退檄文