手机和pc的主要如何查看电脑性能瓶颈颈是散热还是gpu

&主题:求解!我的电脑配置在后期上的主要瓶颈是在哪里?
泡网分: 1.166
注册: 2011年08月
因工作需要,用PS在一张图片上面叠加很多很多图层,但是图层增加就变得很慢很卡!我现在是笔记本i5 3337、内存4G、一般的显卡,有个64固态盘。平时一般上网什么都挺快的。请XD们不吝赐教
微信扫一扫分享
&浏览:2574&&回帖:45 &&
泡网分: 18.072
注册: 2006年05月
根据你的电脑配置,用cs4以下版本。
如果用cs5以上版本,图片保持在1000像素(长边)以下。运转还可以!!!
泡网分: 0.569
注册: 2015年05月
具体品牌型号说清楚
不说清楚 怎么分析的清
问题可能出在很多地方
1散热不好 把电脑清洗一下
2ssd留下的空间太少导致减速
3内存少了加大到8g
4换64位系统
5系统有病毒
6就算没病毒 但是有错误 需要用系统清理软件 清理并优化
7ssd属于性能很差的 那就只好换ssd
泡网分: 0.569
注册: 2015年05月
不能赞同更多
hewei807 发表于
最主要的瓶颈是rmb
泡网分: 0.954
注册: 2013年09月
有崆 发表于
同意如果想提升速度,建议直接换成苹果,同样配置,图像处理速度苹果快很多。
泡网分: 0.014
注册: 2007年04月
加内存就OK了。
泡网分: 12.463
帖子: 1687
注册: 2005年05月
有崆 发表于
就从了兄弟们i5 4590+16G+固态120固态最好500以上吧,不然每次暂时存点东西还得瞅瞅还剩多少空间要存去哪个机械硬盘,累啊
本帖由安卓客户端发布
泡网分: 1.166
注册: 2011年08月
fenyan 发表于
这配置,基本上全是瓶颈,呵呵就从了兄弟们i5 4590+16G+固态120
泡网分: 1.166
注册: 2011年08月
小樓一夜听春雨 发表于
直接说I7呗??
泡网分: 1.166
注册: 2011年08月
hewei807 发表于
最主要的瓶颈是rmb同意
泡网分: 12.463
帖子: 1687
注册: 2005年05月
这配置,基本上全是瓶颈,呵呵
本帖由安卓客户端发布
泡网分: 0.49
注册: 2014年12月
有崆 发表于
没想到有这么多回复,感谢各位XD热心指点!!!
再帮我参考下,综合大家建议结合自己做的功课。基本决定i5 4590加8G(不够再加8G)显卡暂时也不要,电源想安钛克350W,再加一个固态。看效果再决定上不上。那么, 主板有什么讲究吗?直接说I7呗??
泡网分: 0.954
注册: 2013年09月
最主要的瓶颈是rmb
泡网分: 1.166
注册: 2011年08月
没想到有这么多回复,感谢各位XD热心指点!!!
再帮我参考下,综合大家建议结合自己做的功课。基本决定i5 4590加8G(不够再加8G)显卡暂时也不要,电源想安钛克350W,再加一个固态。看效果再决定上不上。那么, 主板有什么讲究吗? 本帖最后由 有崆 于
23:44 编辑
泡网分: 4.926
帖子: 1733
注册: 2011年01月
本帖由安卓客户端发布
泡网分: 14.185
帖子: 2092
注册: 2008年04月
内存和硬盘。
PS处理多图层的时候,会大量占用临时硬盘空间。
内存建议8G以上。
另外在PS的时候,可以看一下左下角提示的图片大小。
泡网分: 14.942
帖子: 1702
注册: 2008年09月
关键是内存,图层多了,PS用作历史回滚的虚拟内存空间也急剧增加。
建议16G内存+64位系统+120G SSD。
笔记本的i5相当于台式机的i3(要看主频频率),依此类推。
本帖最后由 chncwk 于
09:30 编辑
泡网分: 1.185
帖子: 1003
注册: 2013年11月
有崆 发表于
因工作需要,用PS在一张图片上面叠加很多很多图层,但是图层增加就变得很慢很卡!我现在是笔记本i5 3337、内存4G、一般的显卡,有个64固态盘。平时一般上网什么都挺快的。请XD们不吝赐教这配置是笔记本的话,CPU和内存都存在短板。。内存4G太少了。。。至少8G。。台式机的i5没问题,PS.LR都够用。。关键是内存。。。还有。图片要放在SSD上处理。。
泡网分: 10.055
帖子: 3035
注册: 2010年06月
emca 发表于
硬件:加内存到8G(是否支持看主板);加一只廉价的256或512G的SSD替代硬盘,64G的无济于事,聊胜于无。
软件:彻底清除360、QQ管家等一切所谓的安全软件,用Windows清理助手或PUHunter手工清理后台垃圾,关闭所有不需要的服务。使用PS而不是LR提升处理速度;使用FastStoneImageViewer替代ACDSEE以及其他的看图垃圾;使用绿色版的TotalCommander替代垃圾的资源管理器;对搜狗输入法的后台驻留程序设置Everyone完全禁止访问;禁止迅雷等一切后台下载工具自动加载和驻留内存;安装显示卡的最新版本驱动程序。
通过上述努力,一般而言性能、速度可有明显提升。FastStoneImageViewer有色彩管理吗
泡网分: 0.716
注册: 2014年08月
以上全是废话
别听他们乱吹
你笔记本是N卡吗?(英伟达)
在显卡控制面板,设置全局使用GPU加速
ps就流畅了
有不懂的再问我
泡网分: 31.824
帖子: 3300
注册: 2004年11月
泡网分: 2.389
帖子: 2542
注册: 2013年01月
内存才4G,肯定要上8G啊,再来X64系统,CPU换I7
能换的就这些了
泡网分: 1.953
注册: 2012年06月
有崆 发表于
我这个处理单张图片还好,系统是64位的。就是多张图就卡了慢了很多。cdr打开也很慢。我这个是12寸带旋转屏的超极本,加内存估计不可以了吧,我问联想试试看有没有。还有我现在有点担心一直用这种小本,会不会损耗很大不合算?因为我买这个来本来只是想带出去用的,做主机是不是合适呢?你可以打开资源监视器看看,当你觉得卡的时候是内存还是cpu占用高。
除了苹果内存直接焊主板上了,其他家笔记本好像都可以换,你就百度你的笔记本型号 空格 换内存,应该就有相关教程了,老笔记本内存很便宜,二手更便宜,就看主板最高支持多大的了。
不知道你说的损耗大具体指的什么,cpu长期高温是会影响寿命,不过ps还好吧,顶多偶尔热一下。我用之前mba打魔兽世界,键盘都发烫,每天至少8小时吧,现在也没坏。电脑都该淘汰了,还没坏,这才是浪费吧。
12寸的笔记本确实不适合当主力机,不说性能,就那小屏幕我也受不了。我的mba也是出门旅游修图才会用的。
泡网分: 1.166
注册: 2011年08月
triple7 发表于
也不一定要换台式机
我11年的macbook air&&i5 2557M处理器、4GB内存、128GB SSD。正常处理a7 2400万像素的照片无压力(拉曲线,调色,液化,锐化之类),当然不能太多图层。跟我台式机比主要是打开照片和导出的速度会慢的比较明显。
如果只是图层多了才卡,加内存到8g就行,不过得查查主板是否支持,系统还得装64位的。我这个处理单张图片还好,系统是64位的。就是多张图就卡了慢了很多。cdr打开也很慢。我这个是12寸带旋转屏的超极本,加内存估计不可以了吧,我问联想试试看有没有。还有我现在有点担心一直用这种小本,会不会损耗很大不合算?因为我买这个来本来只是想带出去用的,做主机是不是合适呢?
泡网分: 1.953
注册: 2012年06月
也不一定要换台式机
我11年的macbook air&&i5 2557M处理器、4GB内存、128GB SSD。正常处理a7 2400万像素的照片无压力(拉曲线,调色,液化,锐化之类),当然不能太多图层。跟我台式机比主要是打开照片和导出的速度会慢的比较明显。
如果只是图层多了才卡,加内存到8g就行,不过得查查主板是否支持,系统还得装64位的。
泡网分: 1.166
注册: 2011年08月
多谢各位大佬们热心解答,
本子上动的太多就算了。这样看来只能重新配个台机,本子有时候就带出去用用。估计主要问题还是想各位大佬们说的一样,内存主要问题。我想i5 4590可以的话就先配个8G内存用下,看看够吧,不够到时候再加个8G估计就妥了。
泡网分: 1.166
注册: 2011年08月
多谢各位大佬们热心解答,
本子上动的太多就算了。这样看来只能重新配个台机,本子有时候就带出去用用。估计主要问题还是想各位大佬们说的一样,内存主要问题。我想i5 4590可以的话就先配个8G内存用下,看看够吧,不够到时候再加个8G估计就妥了。
泡网分: 16.09
帖子: 5597
注册: 2008年08月
有崆 发表于
主要是内存吗?CPU如果再配机子i5 4590可以吗?i5 3K和4K应该是不同接口吧,不换主板升不了,主板一般是换不了的
本帖由安卓客户端编辑于: 16:04:19
泡网分: 16.02
精华: 1帖子: 2770
注册: 2009年10月
有崆 发表于
谢谢!我会考虑。i7就高大上了,主要是买了7R和蔡司的头子,会超预算,本来想笔记本能混就混混,现在看起来有点困难。如果再配机子,I5可以的话就不i7了。几乎可以肯定,内存是主要瓶颈。多层图、大图处理更是如此。CPU的运算能力都拿来在内存、缓存盘之间来回倒数据去了,哪里还有充足资源处理图像呢。如果内存能存储所需处理的全部数据,CPU的运算能力可以充分发挥,速度肯定大幅度提升。你可以试试看,关闭系统虚拟存储、PS缓存盘,看看ps是否还能处理你的图像,如果可以(不管卡不卡),说明内存够用,需要提升CPU、图形等的速度。如果报内存不足退出ps,说明内存不足,需要增加内存容量,直至不会退出。需要注意的是,为了避免争夺内存,对于能力较低下的机器,尽量关闭其他不用的程序,确保ps能使用尽量多的内存容量。
泡网分: 30.862
帖子: 2700
注册: 2003年07月
硬件:加内存到8G(是否支持看主板);加一只廉价的256或512G的SSD替代硬盘,64G的无济于事,聊胜于无。
软件:彻底清除360、QQ管家等一切所谓的安全软件,用Windows清理助手或PUHunter手工清理后台垃圾,关闭所有不需要的服务。使用PS而不是LR提升处理速度;使用FastStoneImageViewer替代ACDSEE以及其他的看图垃圾;使用绿色版的TotalCommander替代垃圾的资源管理器;对搜狗输入法的后台驻留程序设置Everyone完全禁止访问;禁止迅雷等一切后台下载工具自动加载和驻留内存;安装显示卡的最新版本驱动程序。
通过上述努力,一般而言性能、速度可有明显提升。
泡网分: 15.671
帖子: 2898
注册: 2008年03月
有崆 发表于
看来是不行啊,7r的文件大,又要多图层,看来是要新配了。兄台呢?...我后期主力是台式机,笔记本只是临时用用,还能忍,哈哈
本帖由 iPhone 5c (GSM CDMA) 客户端发布
&版权所有:&&&&GPU爆炸式发展的背后及未来挑战趋势
14:23&来源:&ARM公众号
<font STYLE="FonT-siZe: 20px" COLOR="#FF年,图形处理器(GPU)总出货量约为1.35亿。同年,ARM
完成对挪威Falanx公司的收购,并获得其移动GPU技术,完成对原有IP技术的扩展。10年后的今天,GPU已经广泛用于智能手机、DTV和平板电脑等多种设备,短短10年时间ARM
Mali技术也已成为全球出货量第一的GPU,仅2015年总计出货量就超过7.5亿。
GPU爆炸式发展背后的深层原因是什么?基于GPU技术发展有哪些最新的案例应用呢?智能手机设计的挑战与趋势又是什么?且听ARM技术专家娓娓道来。
API与制程节点开发
对图形领域而言,2015年振奋人心全新应用程序接口(API)的出现允许开发商将基础图形硬件发挥至技术允许的最高水平。
同年,Khronos团队的工作引发有关Vulkan的热烈讨论。Vulkan是新一代OpenGL
API,为新一代图形API设计量身打造,足以满足全部需求,并彻底终结了OpenGL
ES和OpenGL作为API各自为政的时代。
Vulkan于2016年2月正式发布,是首款按照开发商需求设计的Khronos
API。它由游戏引擎开发商、芯片提供商、IP公司和操作系统供应商共同开发,以期打造兼顾各相关方需求的最佳解决方案。Vulkan
API应运而生,采用全新异构系统,不仅内置多线程支持,而且可以最大程度发挥硬件一致性的优势。Vulkan属于底层API,允许开发商自主决定硬件交互方式,并通过底层接入以找到最佳平衡点。
上述特性对虚拟现实(VR)等新兴应用尤为重要,帮助开放商减少延迟,优化图形流水线。
对聚焦GPU运算应用的开发商来说,OpenCL
2的发布是一个重要节点,多项全新理念进一步简化了高性能GPGPU(General Purpose
GPU,即通用计算图形处理器)应用的开发流程。虚拟存储共享概念的提出可以说最为关键,允许CPU和GPU之间的虚拟地址共享。与硬件一致性结合后,细粒度缓冲器共享成为现实。该技术简化了实现CPU和GPU工作负载共享所需的开发工作,因为两者间的数据双向传输不再是必要条件。
半导体制造工艺也经历了巨大革新。2014年,台积电与三星推出20纳米工艺节点,标志着平面工艺节点的10年历史终于落幕;2015年,三星在Exynos
7420上使用全新14纳米FinFet技术,台积电紧随其后,推出16纳米FinFet工艺,并搭载于苹果A9芯片;2016年,工艺节点获得进一步完善,成本降低,产量增加;步入2017年,10纳米工艺节点也不再是梦想。
从GPU的角度看,工艺节点技术的进步对整个行业意义非凡。首先,工艺节点越先进,单位区域(或功耗)的晶体管密度就越大。GPU属于并行处理器,只要架构扩展,性能就会随之提升。然而,先进工艺节点对布线的扩展效果不如晶体管。恰恰相反,Ergo
工艺制程从28纳米优化至14纳米,SoC设计师得以实现更高的晶体管密度,但却不如布线的扩展。这意味着,如果设计10纳米GPU时采用与28纳米同样的方法,设计结果必然会打折扣,因为晶体管和布线各有权衡,不尽相同。设计师常常需要妥协,使IP适应某个节点,这种权衡随着先进工艺节点数量的增加变得愈加重要。
深入探讨高端移动GPU的性能如何继续提高之前,我们需要特别指出GPU性能从2011年到2016年提升了20倍这个有趣的事实。由于手机同时变得更加轻薄,因此该数字并不能代表技术进步的全景,但现代移动设备开发商对性能提升的渴求已经可见一斑。
移动设备开发商不断完善现有用例,开发颠覆性的新用例,以保持创新节奏,并从新一轮的性能升级中获益。
丰富的案例开发,这些应用你体验过吗?
随着移动平台的发展,各类传感器层出不穷。凭借飞速提升的系统性能、不断改善的屏幕精度和日益增加的电池寿命,移动设备开发商已经坐拥创新的最佳平台。
增强现实(AR)可以充分挖掘并展现智能手机的强劲性能。AR的原理并不复杂,利用高级摄像头捕捉图像,经过CPU、GPU、ISP、VPU和DPU,最后显示在高清屏幕上。这个过程中,增强内容将覆盖实际影像。根据应用目标的不同,物体识别、方位补偿(使用电子罗盘和/或加速度计)或高级渲染技术都将各有用武之地。
一些人气移动应用让AR不再远在天边,并一举进军大众市场,比如将滤镜叠加在用户脸部,然后生成图片和视频用于分享的Snapchat;以及让用户在真实地点看到动画人物的Pokemon
Go。无独有偶,还有一些应用采取了更高级的AR技术,比如将摄像头捕捉与3D物体相结合。这些创新用例层出不穷,并可以用于包括零售和高端游戏在内的各行各业。举个例子,用户可以使用移动设备查看家具是否与硬装搭配,家具巨头宜家就打算在2017年发布AR产品目录。
虚拟现实已经不算新理念了,但其核心技术却仍在经历巨变。硬件设备已经万事俱备,拥有足够强大的性能运行炫目的VR内容,一个适合创新的大规模开发商生态系统也已经形成。这一点在移动平台的体现格外深刻,因为人人都能用,且其移动性自身便是重要优势。与台式机和游戏机不同,移动设备无拘无束。当然,实现这一点需要在设备上安装各类传感器。实际上,VR领域的许多重大突破都是在移动设备上实现的——利用VR技术增强用户体验的云霄飞车就是高性能移动应用的一个典型案例。
尽管推陈出新的颠覆式应用不断刷新智能手机的使用方式,但我们经常会忘记一点现实,最普遍的移动应用情景依然是网页浏览和游戏。近几年,屏幕分辨率和刷新率都得到提升,用户界面(UI)的视觉效果和使用体验也越来越自然。这些优化对GPU提出了更高要求,成为成本导向型市场不小的挑战。
移动设备已经成为最主要的游戏平台,由于移动游戏的便捷性,玩家人数持续增加,并进一步推动游戏数量的上升。从免费的独立游戏到数百万美元投资的工作室游戏,现代玩家有丰富的游戏类型、价格和质量等级可供选择。随着可选游戏数量的上升,视觉效果也得到显著改善。GPU刚刚引入移动设备时,3D游戏简单粗暴,不堪入目。而现在呢?游戏画面丰富多彩,景色怡人,动态感十足,在上一代的手柄游戏机时代都是前所未闻的。
上图是ARM演示团队制作的三张示意图。我们先来看看相对简单(以今天的标准)的3D内容,演示游戏为2010年推出的True
Force,运行于2011年款的Galaxy S2。每帧图元16k,片段处理每像素时钟周期3.7次,基于OpenGL ES
3年后的2013年,OpenGL
ES 3.0正式推出,改善了GPU 对GPU运算的支持(并不是OpenGL ES 3.0 API的主打特色,而随OpenGL ES
3.1正式推出);允许开发商使用更多高级渲染技术。结合基础硬件后,视觉质量显著提升。将Trollheim演示与TrueForce比较一下便可一目了然,前者的复杂性比后者高了不少。TrueForce的每帧图元为16k,而Trollheim为150k,TrueForce的片段处理每像素时钟周期为3.7次,而Trollheim则为16次。
<font STYLE="FonT-siZe: 20px" COLOR="#FF年,Vulkan正式推出,API效率大幅提高,与OpenGL
ES相比能够以更低的开销帮助开发商更好地发挥硬件性能。当然,硬件本身也快速发展,比较一下Lofoten和Trollheim演示,我们即可清楚地看到复杂度的提升:每帧图元提高了300%,片段复杂度提高了150%。&
智能手机设计的挑战与趋势
使用场景的变化仅是一个方面,移动设备本身也经历大幅升级。智能手机市场最初主打旗舰机型,随着智能化程度的不断提高,很多
PC特性已经可以实现,但通讯依旧是其主要功能。然而,过去短短几年间,智能手机用途不断扩展,打电话已不再是智能手机的主要功能,图像显示成为了关注焦点。
过去,手机电池寿命一般用单次充电支持的通话时长来衡量,而现在的标准则是网络浏览或高端游戏的续航时间,GPU与显示性能一起备受关注。用户希望体验更高质量的视觉效果,到目前为止,这一目标都是经由智能手机设计改善,以及显示内容的美感和流畅性来实现,一个证据就是屏幕边框变得越来越窄。市场的大致趋势是朝着屏幕包裹设备的方向发展,设计美感更多由UI而非硬件来实现。下图中,我们可以看出屏幕占整个设备的比例不断增加。这一趋势在三星Galaxy
S7 Edge等机型上体现得尤为明显,已经实现屏幕对设备的全包裹。
除了打电话,现代智能手机还能提供极为丰富的功能,如邮件、社交媒体、导航定位、支付、浏览网页、游戏、拍照和视频等等。用户在期待功能升级的同时,也希望电池寿命不断延长。但是,即便使用当前所有最先进的技术,智能手机的电池容量还是要不断增大,具体变化趋势见下图。
除了电池容量变大,智能手机还变得越来越薄。一些机型的厚度甚至已经达到了7毫米以下,考虑到现代智能手机的技术含量,如此纤薄实在令人惊讶。
这样的发展方向并非完全没有弊端。屏幕增大导致电池尺寸变大,机身变薄,设备散热能力下降,因为屏幕的散热效率不如金属机身。此外,机身变薄后,用以散热的表面积也会减少。现代高端智能手机的性能上限很大程度上被散热能力牵制,如何保证机身内部元器件不因为高温而受损则因此成为另一大挑战。
现代智能手机装有多种耗电发热的核心元件,如摄像头子系统、屏幕、调制解调器、Wi-Fi、非易失性存储器、DRAM和主芯片本身(包括CPU、GPU和其他处理器)。因为总功耗一致,所以其中任何一个元件功耗的减少,都可以增加其他元件可以使用的配额,这也是系统功耗配比由用例决定的原因。
现代GPU非常复杂,严重依赖CPU运行驱动程序,以实现基于软件与应用程序进行交互。多亏了Vulkan这样的现代API,驱动程序的开销下降了,但是CPU依然需要运行驱动程序,所以不能完全避免耗电。由于所有元件功耗预算共享,因此在CPU中使用的、用于GPU交互的功耗就是不能应用于GPU本身的功耗。基于上述原因,降低CPU功耗势在必行,不仅是为GPU发展扫清瓶颈,更是要为尽可能的提高GPU可用功耗铺平道路。
与之类似,在运行复杂3D游戏的现代系统中,GPU会消耗大量DRAM带宽。由于要处理大量数据(上述提及的Lofoten每帧处理600,000个三角),消耗带宽责无旁贷,但DRAM的读写本身就是耗电的过程,也需要占用系统的总功耗预算。减少DRAM带宽可以降低其功耗,并用于其他元件。
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。134被浏览17324分享邀请回答12329 条评论分享收藏感谢收起81 条评论分享收藏感谢收起查看更多回答PC VR游戏的CPU性能分析与优化
PC VR游戏的CPU性能分析与优化
作者:王文斓,英特尔软件与服务事业群合作伙伴关系部的资深应用工程师。毕业于台湾大学电机工程学系和通信工程学研究所。
导语:伴随着全新VR体验所带来的双目渲染、高分辨率和低延时等要求,对CPU和GPU都造成了极大的计算压力,一旦VR应用出现性能问题,非常容易造成用户眩晕并带来极差的用户体验,因此性能问题对于VR体验的好坏格外重要。本文将集中介绍VR需要高计算量的原因, 以及分享如何利用工具查找VR应用的性能问题和CPU瓶颈所在。
自从三大头显厂商Oculus、HTC和Sony在2016年发布了虚拟现实(VR)头显产品后,由于能够带来卓越的沉浸式体验,VR越来越受到市场的关注和重视,而VR也被认为会取代智能手机成为下一代的计算平台。然而,尽管虚拟现实能给用户带来身临其境般的沉浸式体验,但相比传统应用,其具有双目渲染、低延迟、高分辨率以及高帧率等严苛要求,因此极大地增加了CPU和GPU的计算负载。鉴于此,性能问题对于虚拟现实应用尤为重要,因为VR体验如果没有经过优化,容易出现掉帧等问题,让用户使用时发生眩晕的情况。在本文中,我们将介绍一种适用于所有游戏引擎及虚拟现实运行时(VR runtime)的通用分析方法,分析基于PC的VR游戏面临的性能问题。我们以腾讯的一款PCVR游戏《猎影计划》为例展示如何利用这套方法进行分析。在此之前我们先来了解一下VR游戏对性能要求较传统游戏高的四大原因。
VR游戏和传统游戏在硬件性能需求上的区别
相较于传统游戏,VR游戏由于存在高帧率、双目渲染及容易产生眩晕等特性,导致对于硬件计算能力的需求显著上升。下面从四个方面比较一下VR游戏和传统游戏的区别:
像素填充率
以一个1080p 60fps游戏为例,像素填充率为124Mpixels/sec。如果是支持高端VR头盔(Oculus Rift、HTC Vive)的游戏,像素填充率为233Mpixels/sec(分辨率,帧率90fps)。但是中间需要一个较大的渲染目标,避免图像经过反形变校正后产生用户可见并且没被渲染到的区域,导致视角(FOV)降低。根据SteamVR的建议,需要放大的比率为1.4倍,所以实际的像素填充率为457M pixels/sec(分辨率,帧率90fps),我们可以通过stencil mesh把最终不会被用户看到的区域剔除掉以减少需要渲染的像素,经过优化后的像素填充率为378M pixels/sec,但仍然是传统1080p 60fps游戏的3倍像素填充率。
从游戏渲染管线的角度来看,传统游戏中每一帧的渲染流程大致如下,其中蓝色的部分是CPU的工作,绿色的部分是GPU的工作。但由于视差的关系,VR游戏需要对左右眼看到的画面分别渲染不同的图像,所以下面的渲染管线也要对左右眼各做一次,从而增加了计算需求(在VR中两眼的视差较小,可以利用GBuffer或提交渲染指令后用view matrix变换等方法降低实际计算)。
图1 传统游戏渲染流程
对于传统游戏来说,平均帧率达标往往就代表了一个流畅的游戏体验。然而对于VR游戏来说,即使平均帧率达标,但只要出现了连续掉帧,哪怕只有非常少数的情况下才发生,都会破坏了整个游戏体验。这是由于连续掉帧会使用户产生眩晕,一旦产生眩晕的感觉,即使后续的画面不掉帧,用户已经感觉到不适,游戏体验已经打了折扣。所以在游戏设计的时候,需要确保场景在最差的情况下也能达标(高端头显下为90fps),否则会影响游戏体验。
另外,由于在VR场景中用户可以跟可移动区域内的对象作近距离观察和交互,所以必须开启抗锯齿以保证画面的清晰度。
在传统游戏里从控制输入到画面输出的延迟往往达到约100ms的等级[1],FPS类别的游戏对延迟要求较高,但一般也在约40ms的等级。而VR里MTP延迟(motion-to-photon latency,从用户运动开始到相应画面显示到屏幕上所花的时间)低于20ms是基本要求,研究发现对于部分比较敏感的用户,延迟需要达到15ms甚至7ms以下[2]。
低延迟的要求除了使VR游戏必须运行在高帧率外,同时也降低了硬件的运行效率,导致同样的工作量需要更强的硬件来驱动,原因正是低延迟要求使VR游戏的渲染管线必须和传统游戏不一样,而其中CPU对VR性能的影响扮演了重要的角色。
VR游戏和传统游戏在渲染管线上的区别
我们先来看看VR渲染管线和传统渲染管线的区别。如图2所示为传统游戏的渲染管线,其中CPU和GPU是并行处理的,以实现最高的硬件利用效率。但此方案并不适用于VR,因为VR需要较低和稳定的渲染延迟,传统游戏的渲染管线无法满足此项要求。
以图2为例,第N+2帧的渲染延迟会远高于VR对延迟的最低要求,因为GPU必须先完成第N+1帧的工作,再来处理第N+2帧的工作,因而使得第N+2帧产生了较高的延迟。此外,由于运行情况
不同,我们可以发现第N帧、第N+1帧和第N+2帧的渲染延迟也会有所差异,这对VR的体验也是不利的,因为一直变动的延迟会让用户产生晕动症(simulation sickness)。
图 2 传统游戏的渲染管线
因此,VR的渲染管线实际上如图3所示,这样能确保每帧可以达到最低的延迟。在图3中,CPU和GPU的并行计算被打破了,这样虽然降低了效率,但可确保每帧实现较低和稳定的渲染延迟。在这种情况下,CPU很容易成为VR的性能瓶颈,因为GPU必须等待CPU完成预渲染(绘制调用准备、动态阴影初始化、遮挡剔除等)才能开始工作。所以CPU优化有助于减少GPU的闲置时间,提高性能。
图 3 VR游戏的渲染管线
《猎影计划》VR游戏背景
《猎影计划》是腾讯旗下利用Unreal Engine 4开发的一款基于PC的DirectX 11 FPS虚拟现实游戏,支持Oculus Rift和HTC Vive。为了使《猎影计划》在英特尔处理器上实现最佳的游戏体验,我们与腾讯紧密合作,努力提升该游戏的性能与用户体验。测试结果显示,在本文所述的开发阶段,经优化后帧率得到了显着提升,从早期测试时跑在Oculus Rift DK2(分辨率)上的每秒36.4fps提升至本次测试时跑在HTC Vive(分辨率)上的每秒71.4fps。以下为各阶段使用的引擎和VR运行时版本:
初始开发环境:Oculus v0.8 x64运行时和Unreal 4.10.2;
本次测试的开发环境:SteamVR v和Unreal 4.11.2。
之所以在开发阶段会使用到不同的VR运行时的原因在于,《猎影计划》最初是基于Oculus Rift DK2开发的,稍后才迁移至HTC Vive。而测试显示采用不同的VR运行时在性能方面没有显着的差异,因为SteamVR和Oculus运行时采用了相同的VR渲染管线(如图3所示)。在此情况下,渲染性能主要由游戏引擎决定。这点可在图6和图15中得到验证,SteamVR和Oculus运行时在每帧的GPU渲染结束后才插入GPU任务(用于镜头畸变校正),而且仅消耗了少量GPU时间(约1ms)。
如图4所示为优化工作前后的游戏截图,优化之后绘制调用次数减少至原来的1/5,每帧的 GPU执行时间平均从15.1ms缩短至9.6ms,如图3和4所示:
图4 优化前(左)后(右)的游戏截图
测试平台的规格:
英特尔酷睿i7-6820HK处理器(4核,8线程)2.7GHz
NVIDIA GeForce GTX980 16GB GDDR5
图形驱动程序版本:364.72
16GB DDR4 RAM
Windows10 RTM Build
初步分析性能问题
为了更好地了解《猎影计划》的性能瓶颈,我们先综合分析了该游戏的基本性能指标,详情见表1。表中数据通过几种不同的工具收集,包括GPU-Z、TypePerf和Unreal Frontend等。将这些数据与系统空闲时的数据比较可得出以下几点结论:
游戏运行时的帧率低(36.4fps)而且GPU利用率也低(GTX980上为49.64%)。如果能够提高GPU利用率,帧率也会提高。
大量的绘制调用。DirectX 11中的渲染为单线程渲染,虽然微软提出deferred rendering context[3]可以用另一线程对渲染指令进行缓存以实现多线程渲染,但结果差强人意[4]。所以相对于DirectX 12,DirectX 11渲染线程具有相对较高的绘制调用开销。由于该游戏是在DirectX 11上开发的,并且为了达到低延迟,VR的渲染管线打破了CPU和GPU的并行计算,因此如果游戏的渲染线程工作较重,很容易会出现CPU瓶颈导致帧率显着降低。在这种情况下,较少的绘制调用有助于缓解渲染线程瓶颈。
由表中可以看出,CPU利用率似乎不是问题,因为其平均值只有13.58%。但从下文更进一步的分析可以看出,《猎影计划》实际上存在CPU性能瓶颈,而平均CPU利用率高低并不能说明游戏是否存在CPU性能瓶颈。
表1 优化前游戏的基本性能指标
下面我们会利用GPUView和Windows评估和部署工具包(Windows Assessment and Deployment Kit,Windows ADK)[5]中的Windows性能分析器(Windows Performance Analyzer,WPA)对《猎影计划》的性能瓶颈进行分析。
深入探查性能问题
GPUView[6]工具可用于调查图形应用、CPU线程、图形驱动程序、Windows图形内核等性能和相互之间的交互情况。该工具还可以在时间轴上显示程序是否存在CPU或GPU性能瓶颈。而Windows性能分析器可用于跟踪Windows 事件(Event Tracing for Windows,ETW),并生成相应事件的数据和图表;WPA同时具备灵活的用户界面(UI),通过简单操作即可查看调用堆栈、CPU 热点、上下文切换热点等,它还可以用来定位引发性能问题的函数。GPUView和Windows性能分析器都可以用于分析由Windows性能记录器(Windows Performance Recorder,WPR)采集到的事件追踪日志(Event Trace Log,ETL)。Windows性能记录器可通过用户界面或命令行运行,其内建的配置文件可用来选择要记录的事件。
对于VR应用,最好先确定其计算是否受限于CPU、GPU或二者皆是,以便将优化工作的重点集中在对性能影响最大的瓶颈,最大限度提升性能。
图5为优化前《猎影计划》在GPUView中的时间线视图,其中包括GPU工作队列、CPU上下文队列和CPU线程。根据图表我们可以看出:
帧率大约为37fps。
GPU负载大约为50%。
此版本容易使用户眩晕,因为运行帧率远低于90fps。
如GPU工作队列所示,只有两个进程向GPU提交了任务:Oculus VR运行时和游戏本身。Oculus VR运行时在帧渲染的最后阶段插入后处理工作,包括畸变校正、色彩校正和时间扭曲等。
从图中可以看出《猎影计划》同时存在CPU和GPU瓶颈。
在CPU瓶颈方面,GPU有大约50%的时间都处于空闲状态,主要原因是受到了一些CPU线程的影响而导致GPU工作没法及时被提交,只有这些线程中的CPU任务完成后GPU任务才能被执行。这种情况下如果对CPU任务进行优化,将能够极大地提升GPU的利用率,使GPU能执行更多的任务,从而提高帧率。
在GPU瓶颈方面,从图中我们可以看出,即使所有GPU空闲时间都能够被消除,GPU仍然需要大于11.1ms的时间才能完成一帧的渲染(这里约为14.7ms),因此如果不对GPU进行优化,此游戏的帧率不可能达到Oculus Rift CV1和HTC Vive等VR头显要求的90fps。
图 5 GPUView分析《猎影计划》时间线视图
改善帧率的几点建议:
物理和AI等非紧急的CPU任务可以延后处理,使图形渲染工作能够尽早被提交,以缩短CPU瓶颈时间。
有效应用多线程技术可增加CPU并行性,减少游戏中的CPU瓶颈时间。
尽量减少或优化容易导致CPU瓶颈的渲染线程任务,如绘制调用、遮挡剔除等。
提前提交下一帧的CPU任务以提高GPU利用率。尽管MTP延迟会略有增加,但性能与效率会显着提高。
DirectX 11具有高绘制调用和驱动程序开销。绘制调用过多时渲染线程会造成严重的CPU瓶颈。如果可以的话考虑迁移至DirectX 12。
优化GPU工作(如过度绘制、带宽、纹理填充率等),因为单帧的GPU处理时间大于11.1ms,所以会发生丢帧。
为了更深入探查CPU的性能问题,我们结合Windows性能分析器来分析从GPUView中发现的CPU瓶颈(通过分析同一个ETL文件),以下介绍分析和优化的主要流程(Windows性能分析器也可用于发现CPU上下文切换的性能热点,对该主题有兴趣的读者可以参考原文了解更多详情)。
首先我们需要在GPUView中定位出VR游戏存在性能问题的区间。在GPU完成一帧的渲染后,当前画面会通过显示桌面内容(Present)函数被提交到显示缓存,两个Present函数的执行所相隔的时间段为一帧的周期,如图6所示(26.78ms,相当于37.34fps)。
图 6 GPUView分析《猎影计划》时间线视图(单帧)注意导致GPU闲置的CPU线程
注意在GPU工作队列中有不少时间GPU是闲置的(例如一开头的7.37ms),这实际上是由CPU线程瓶颈所造成,即红框所圈起来的部分。原因在于绘制调用准备、遮挡剔除等CPU任务必须在GPU渲染命令提交之前完成。
如果使用Windows性能分析器分析GPUView所示的CPU瓶颈,我们就能找出导致GPU无法马上执行工作的对应CPU热点函数。图7-11显示Windows性能分析器在GPUView所示的同一区间下,各CPU线程的利用率和的调用堆栈。
图 7 Windows性能分析器分析《猎影计划》时间线视图, 与图6为同一时间段
接下来让我们详细分析每个CPU线程的瓶颈。
图 8 渲染线程T1864的调用堆栈
由图8的调用堆栈可以看出,渲染线程中最主要的三个瓶颈是:
静态网格的基本信道渲染(50%);
动态阴影初始化(17%);
计算视图可视性(17%)。
以上瓶颈是由于渲染线程中存在太多的绘制调用、状态变换和阴影图渲染所造成。优化渲染线程性能的几点建议如下:
在Unity中应用批处理或在Unreal中应用actor融合以减少静态网格绘制。将相近对象组合在一起,并使用细节层次(Level Of Detail,LOD)。合并材质以及将不同的纹理融入较大的纹理集都有助于提升性能。
在Unity中使用双宽渲染(Double WideRendering)或在Unreal中使用实例化立体渲染(Instanced Stereo Rendering),减少双目渲染的绘制调用提交开销。
减少或关闭实时阴影。因为接收动态阴影的对象将不会进行批处理,从而造成绘制调用问题。
减少使用会导致对象被多次渲染的特效(反射,逐像素光照,透明或多材质对象)。
图 9 游戏线程T8292的调用堆栈
图9显示游戏线程最主要的三个瓶颈是:
设置动画评估并行处理的前置工作(36.4%);
重绘视口(view port)(21.2%);
处理鼠标移动事件(21.2%)。
以上三大问题可以通过减少视口数量,以及优化CPU并行动画评估的开销来解决,另外需要检查CPU方面的鼠标控制使用情况。
工作线程(T8288,T4672,T8308):
图 10 工作线程T8288的调用堆栈
图 11 工作线程T4672的调用堆栈
图 12 工作线程T8308的调用堆栈
这些工作线程的瓶颈主要集中在物理模拟,比如布料模拟、动画和粒子系统更新。表2列出了在GPU闲置(等待执行)时的CPU热点。
表 2 优化前GPU闲置时的CPU热点 优化
在实施了包括细节层次、实体化立体渲染、动态阴影消除、延迟CPU任务以及优化物理等措施后,《猎影计划》的运行帧率从Oculus Rift DK2()上的36.4fps提升至HTC Vive()上的71.4fps;同时由于CPU瓶颈减少,GPU的利用率从54.7%提升至74.3%。
如图13和图14所示,分别为《猎影计划》优化前后的GPU利用率,如GPU工作队列所示。
图 13 优化前《猎影计划》的GPU利用率
图 14 优化后《猎影计划》的GPU利用率
图 15 优化后GPUView分析《猎影计划》时间线视图
图15所示为优化后《猎影计划》的GPUView视图。从图中可见优化后CPU瓶颈时间从7.37ms降至2.62ms,所用的优化措施包括:
提前运行渲染线程(一种通过产生额外的MTP延迟来减少CPU瓶颈的方法);
优化绘制调用,包括采用细节层次、实体化立体渲染和移除动态阴影;
延迟处理逻辑线程和工作线程的任务。
如图16所示为优化后CPU瓶颈期的渲染线程调用堆栈,即图15的红框标记起来的部分。
图 16 渲染线程T10404的调用堆栈
表3列出了优化后GPU闲置(等待执行)时的所有CPU热点,注意相对于表2,许多热点和线程已从CPU瓶颈中被移除。
表 3 优化后GPU闲置时的CPU热点
更多的优化措施,比如actor融合或者精简材质,都可以优化渲染线程中的静态网络渲染,进一步提高帧率。假若能对CPU任务进行充分的优化,单帧的处理时间能进一步减少2.62ms(单帧的CPU瓶颈时间),达到87.8fps。
表 4 优化前后游戏的基本性能指标 结论
利用多种工具分析VR应用可以帮助我们了解该应用的性能表现和瓶颈所在,这对于优化VR性能非常重要,因为单凭性能指标可能无法真正反映问题所在。本文讨论的方法与工具可用于分析使用任何游戏引擎及VR运行时开发的PC VR应用,确定应用是否存在CPU或GPU瓶颈。由于绘制调用准备、物理模拟、光照或阴影等因素的影响,有时候CPU对VR应用性能的影响比GPU更大。通过分析多个存在性能问题的VR游戏,我们发现其中许多都存在CPU瓶颈,这意味着优化CPU可以提升GPU利用率、性能及用户体验。

我要回帖

更多关于 mysql单表性能瓶颈 的文章

 

随机推荐