UWA内存管理篇_常识(三)
内存管理-内存占用:
一般来说内存占用大小有如下规律:VSS >= RSS >= PSS >= USS
VSS - Virtual Set Size 虚拟耗用内存(包含共享库占用的内存)是单个进程全部可访问的地址空间
RSS - Resident Set Size 实际使用物理内存(包含共享库占用的内存)是单个进程实际占用的内存大小,对于单个共享库, 尽管无论多少个进程使用,实际该共享库只会被装入内存一次。
PSS - Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存)
USS - Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)USS 是一个非常非常有用的数字, 因为它揭示了运行一个特定进程的真实的内存增量大小。如果进程被终止, USS 就是实际被返还给系统的内存大小。
USS 是针对某个进程开始有可疑内存泄露的情况,进行检测的最佳数字。怀疑某个程序有内存泄露可以查看这个值是否一直有增加
总内存为Unity引擎所统计的真实物理内存分配,并不包含系统缓存和第三方库的自身分配内存; 堆内存所指的是 Mono 管理和分配的托管堆内存; GFX内存为用于渲染的资源所占用的内存,主要包括纹理资源、网格资源、Shader资源等;
泄露风险其判断依据主要为检测总内存的分配、各资源的内存占用是否存在逐步增高的趋势。
托管堆内存 :
表示项目运行时代码分配的托管堆内存分配量。对于使用Mono进行代码编译的项目,其托管堆内存主要由Mono分配和管理;对于使用IL2CPP进行代码编译的项目,其托管堆内存主要由Unity自身分配和管理。目前,除iOS平台外,其他平台的绝大多数项目还在使用Mono来进行代码编译。
对于Mono堆内存来说,由于Mono自身的限制,其堆内存分配是 “只升不降” 的,即内存一旦分配给Mono,不论以后该内存是否继续被使用,都不会再归还给系统。因此,建议您对于代码的堆内存分配进行严格的控制,避免不必要的Mono堆内存分配。
Reserved Total 和 Used Total 为Unity引擎在内存方面的总体分配量和总体使用量
Android平台:在客户端最低配置以上,均需满足以下内存消耗指标(PSS):
1)内存1G以下机型:最高PSS<=150MB
2)内存2G的机型:最高PSS<=200MB
iOS平台:在iPhone4S下运行,消耗内存(real mem)不大于150MB
UWA内存管理篇_常识(三)相关推荐
- 操作系统(三十二)内存的基础常识
3.1 内存的基础常识 目录 3.1 内存的基础常识 3.1.1 计算机的多级存储结构 3.1.2 程序的装入和链接 3.1.1 计算机的多级存储结构 对于计算机的存储结构而言一般可以分为三层:最高层 ...
- jvm大局观之内存管理篇: 理解jvm安全点,写出更高效的代码
jvm大局观之内存管理篇: 理解jvm安全点,写出更高效的代码 - 知乎 前言 本篇是java内存区域管理系列教程之一 - 在得知GC Root的组成之后,如何在垃圾回收发生的时刻,找到GC Root ...
- 管理系统中计算机应用课件,管理系统中计算机应用_第三章课件.ppt
<管理系统中计算机应用_第三章课件.ppt>由会员分享,提供在线免费全文阅读可下载,此文档格式为ppt,更多相关<管理系统中计算机应用_第三章课件.ppt>文档请在天天文库搜索 ...
- python笔记_第三周
python笔记_第三周 第十天 回调函数 回调函数就是一个被作为参数传递的函数把函数a当做一个值 赋值给函数b的形参, 在调用函数b的时候 在函数体内 适当的实际调用函数a, 这个函数a就是回调函数 ...
- ArcGIS for Desktop入门教程_第三章_Desktop软件安装 - ArcGIS知乎-新一代ArcGIS问答社区...
原文:ArcGIS for Desktop入门教程_第三章_Desktop软件安装 - ArcGIS知乎-新一代ArcGIS问答社区 1 软件安装 1.1 安装前准备 请确认已经收到来自Esri中国( ...
- 程序员期末试卷_第三部分复习提纲.doc下载
程序员期末试卷_第三部分复习提纲.doc下载 转载于:https://www.cnblogs.com/dtdnh520/archive/2007/01/20/625390.html
- linux 内存占用_分享Linux内存占用几个案例
案例一 问题 最近一台 CentOS 服务器,发现内存无端损失了许多,free 和 ps 统计的结果相差十几个G,非常奇怪,后来Google了许久才搞明白. 分析 1.linux系统内存消耗主要有三个 ...
- JVM - 结合代码示例彻底搞懂Java内存区域_对象在堆-栈-方法区(元空间)之间的关系
文章目录 Pre 示例demo 总体关系 代码示例论证 反汇编 Pre JVM - 结合代码示例彻底搞懂Java内存区域_线程栈 | 本地方法栈 | 程序计数器 中我们探讨了线程栈中的内部结构 ,大家 ...
- Lync Server 2010的部署系列_第三章 证书、架构、DNS规划
Lync Server 2010的部署系列_第三章 证书.架构.DNS规划 一.证书规划 组件 使用者名称 使用者备用名称条目/顺序 证书颁发机构 (CA) 备注 边缘外部接口 Sip.Giantha ...
最新文章
- mysql select time,MySql查询时间段的方法
- Github上的资源清单
- 把日志文件从Linux服务器拷贝到Windows上
- CRM管理系统、教育后台、赠品管理、优惠管理、预约管理、试听课、教师、学生、客户、学员、商品管理、科目、优惠券、完课回访、客户管理系统、收费、退费、回访、账号权限、订单流水、审批、转账、rp原型
- visual studio 2012 密钥记录
- 机器人动力学-牛顿-欧拉方程
- 【Unity3D开发小游戏】Unity3D开发《3D迷宫》小游戏
- C语言输出三位数的水仙花数
- Angular2 Directive讲解
- 深入浅出 RxJS 核心原理(源码实现)
- 扫码签到突破100000用户
- 专利代理机构代理专利流程
- 视频压缩后大小没变怎么办?视频压缩后大小没变是为什么?
- dubbo简单测试---折腾许久成功
- python 自动记录时间_python记录程序运行时间的几种方法
- spring cloud 之 Ribbon
- vuejs 传参 向 子组件 父组件_VUe.js 父组件向子组件中传值及方法
- 安全测试:xss,cookie,xst注入攻防
- 「游戏」c++ 炸弹人2.0(新增人机)
- python不可以中文注释的解决办法
热门文章
- window10 python 3.6 安装tensorflow的坑
- 最安全的门禁系统来了,贝迪特掌静脉引领“刷手进门”新浪潮
- Android : Resource is not a Drawable (color or path)
- 利用Floyd-Steinberg方法(dithering),将灰度图转换为二值图
- codeforces泛做
- USACO比赛题泛刷
- 微信公众号语音信息自动回复语音信息
- React Native 之createDrawerNavigator和createSwitchNavigator
- 公众号运营感悟与心得分享,建议收藏
- 模仿电影院座位预定效果