找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 41347|回复: 117

[飞行交流] 【性能优化】使P3D运行更加流畅

  [复制链接]
发表于 2017-5-11 23:05:39 | 显示全部楼层 |阅读模式
本帖最后由 sopebird 于 2018-1-4 11:18 编辑

以下要介绍的,是最近几个月以来,我亲测能够充分挖掘电脑性能,使P3D更加流畅的两个优化。注意,是更加流畅!你的P3D能运行到什么程度(画质,帧率)还是取决于硬件性能。

这两个优化其他人在不同的地方都分别提到过,发这个帖,是想根据个人理解和试验纠正一些误区,欢迎跟帖讨论。

我的硬件:

Alienware 15R3i7-6820HK @ 4.0GhzGTX 107016GB DDR4 2133Ghz RAMP3D安装在256GBSAMSUNG SM9614K

我的软件:

P3D V3.4(中等画质,AI关,4K分辨率运行),AS16ChasePlane,测试使用PMDG747 V3AerosoftEDDFT2GLFPG

1. 使用NvidiaProfile Inspector锁定P3D运行帧率

关于是否要锁定帧率,很多人持不同意见。但是根据以往的经验,即使硬件配置很高,如果不锁帧率,卡顿也是难以避免的。比如某些场景从大多数时候的60多帧突然降到20多帧,即使是不到一秒钟,这种卡顿也非常破坏沉浸感。所以,我认为不应该看运行的最高帧率,而是看能够持续稳定的帧率。对于P3D来说,因为多数人偏重航线飞行,30帧其实已经足够了。

然而,P3D内置的帧率设置会非常诡异地导致卡顿!逛了很久的国外论坛,有人提到了使用外置锁频软件。对于N卡来说可以是NvidiaProfile Inspector。如下图,锁定30.5帧,然后P3D设置内帧率略微高于30.5帧即可,我设置成了31帧。实测表明这样可以非常有保证地稳定帧率。
InkedFPS lock_LI.jpg

2. 使用ProcessLasso设置CPUaffinity

P3D的很多设置入门里提到需要在P3D.cfg中通过AffinityMask=n这行语句来设置CPUaffinity,还鼓励大家根据自己的硬件尝试不同的值。我玩了好几年,一直对这项优化深信不疑,而且自己根据理论和试验尝试了不同的值,最终还是设置为84

然而,某次在YouTube上看到一位X-plane玩家的建议,决定试一试早就知道却从未好好尝试的ProcessLasso这个免费软件。做法比较极端,但是非常符合逻辑:首先,删除掉P3D.cfg里的AffinityMask=n如下图,对于4cpu来说,把第一个核(thread0-1)分配给除P3D以外的所有系统程序和软件(比如AS16ChasePlane),把剩下的3个核(thread2-7)全部分给P3D用,然后设置P3D为游戏类高性能应用。
Process Lasso Pro.jpg

实测证明,这样的资源调用可以保证P3D运行得相当流畅,至少在我的电脑上,比任何AffinityMask=X都有效,而且不会显著增加CPU发热。我的测试主要是PMDG747 V3Aerosoft法兰克福本场和T2G戴高乐本场,优化效果让我极其满意,再也不用担心一个转弯或掉头导致的瞬间卡顿或者烦人的micro-stutters

都说P3D多核优化不好,然而,事实是,多核似乎有利于P3D运行得更稳定,虽然关键还是要看单核性能。

以上两个优化都是免费的,感兴趣的可以尝试。我不是软硬件专家,无法完全解释其中的某些机制,基本都是经验,欢迎跟帖讨论。

贴几张图证明我最近还在飞:
2017-3-27_0-25-43-411.jpg
2017-4-28_20-52-56-377.jpg
2017-5-7_2-16-44-350.jpg

20171004更新:
最近几天安装更新了P3D V4,仍然使用上述优化方法,发现V4的CPU多线程使用能力有提升。
经过试验,使用Process Lasso 将P3D exe 的CPU Affinity设置为0-7(8个线程随便用),其它应用设置为6-7(不知为何,包括P3D在内的应用都偏好使用0-1,为了让P3D更好地跑,因此将0-1尽量完全让给P3D),在我的电脑上可以发挥最好的性能。举个例子,有一次忘了开Process Lasso,结果在Aerosoft EGLL卡成幻灯片,退出后打开Process Lasso 重新飞,VC帧率才能稳定在26-31帧。
如下图,P3DV4,FTX Global Base,Aerosoft EGLL,PMDG777,ChasePlane,Active Sky for P3D V4,画质中高。(电脑性能测试飞行,请不要对飞机警报过分关注)
Untitled.jpg


点评

请问楼主:这两个软件要一直运行?ProcessLasso 收费的?能提供下你用的吗?  发表于 2017-5-21 20:47

评分

参与人数 2支持 +2 收起 理由
crh380a + 1 楼主厉害!按照此方法非常流畅!.
南方航空B777 + 1 的确有效!

查看全部评分

发表于 2017-5-12 00:16:36 | 显示全部楼层
厉害。留名。以后研究!
回复

使用道具 举报

发表于 2017-5-12 00:23:46 | 显示全部楼层
不错的经验,留名备用。。
回复

使用道具 举报

发表于 2017-5-12 00:28:48 | 显示全部楼层
请教一下楼主,跳帧很严重是怎么回事
回复

使用道具 举报

 楼主| 发表于 2017-5-12 00:50:05 | 显示全部楼层
本帖最后由 sopebird 于 2017-5-12 00:51 编辑
明天会更好 发表于 2017-5-12 00:28
请教一下楼主,跳帧很严重是怎么回事

    以下都是根据我的理解哈,跳帧说明在帧率低的那一刻,硬件无法满足增加的渲染或计算需求,导致没有按照计划的帧率完成渲染或计算,最终实际完成帧少于计划完成帧,所以帧率骤降,导致卡顿。本质上还是硬件性能的问题,也与系统或软件对硬件资源的调度有关系。有时候通过设置预渲染帧,或许能缓解跳帧。

    如果不锁帧或帧率设置过高,CPU和显卡一直处于高负载(即使有时候你不认为它们达到了高负载),计算需求突然增加的场景下就很难再hold得住,导致完不成计划帧率的渲染。通过锁定帧率到一个适当的值,可以很好地平衡CPU和显卡的载荷,任务少的时候负载低,任务突然增加时候有空余资源,冲得上去,帧率就稳定了。

    Process Lasso则是从系统资源调度方面,保证了CPU在关键时刻有足够的资源,详情可以查看Process Lasso的官网,有专业说明。貌似比最近windows 10升级的Game Mode要好用多了……
回复

使用道具 举报

发表于 2017-5-12 00:56:02 | 显示全部楼层
感谢楼主学习了
回复

使用道具 举报

发表于 2017-5-12 08:11:58 | 显示全部楼层
感谢分享经验!
回复

使用道具 举报

发表于 2017-5-12 08:36:25 | 显示全部楼层
AffinityMask=请教一下双核四线程的处理器此处设置值为几比较合适啊?
回复

使用道具 举报

发表于 2017-5-12 10:49:55 | 显示全部楼层
sopebird 发表于 2017-5-12 00:50
以下都是根据我的理解哈,跳帧说明在帧率低的那一刻,硬件无法满足增加的渲染或计算需求,导致没有按 ...

谢谢,我再研究研究
回复

使用道具 举报

发表于 2017-5-12 11:09:05 | 显示全部楼层
这个不错,学习一下
回复

使用道具 举报

发表于 2017-5-12 11:55:05 | 显示全部楼层
想问下,I7 3770 3.4G  16G内存 GTX660  4年前的机子玩P3D怎么样?
回复

使用道具 举报

发表于 2017-5-12 12:17:09 来自手机 | 显示全部楼层
感谢楼主,学习备用
回复

使用道具 举报

 楼主| 发表于 2017-5-12 12:49:27 | 显示全部楼层
本帖最后由 sopebird 于 2017-5-12 12:51 编辑
王者清风 发表于 2017-5-12 08:36
AffinityMask=请教一下双核四线程的处理器此处设置值为几比较合适啊?

http://www.gatwick-fsg.org.uk/af ... ubMenuItem=hardware
常用的好像是14不过还是建议尝试Process Lasso,这个不但可以定义P3D的cpu affinity,最关键的是可以修改所有程序的cpu affinity,保证P3D运行不受系统程序或其它软件干扰。
回复

使用道具 举报

 楼主| 发表于 2017-5-12 12:53:03 | 显示全部楼层
ICAU-6112 发表于 2017-5-12 11:55
想问下,I7 3770 3.4G  16G内存 GTX660  4年前的机子玩P3D怎么样?

肯定可以玩,但画质什么的,这个得你自己去试
回复

使用道具 举报

发表于 2017-5-12 16:38:55 | 显示全部楼层
GOOD~收藏嘍~
回复

使用道具 举报

发表于 2017-5-12 18:24:01 | 显示全部楼层
楼主  ProcessLasso这个软件 怎么使用啊   下载来都不会用
回复

使用道具 举报

发表于 2017-5-12 18:33:57 | 显示全部楼层
其实优化不优化不是十分的重要。更重要的是大机场的崩溃问题是否解决。
回复

使用道具 举报

发表于 2017-5-12 18:38:45 | 显示全部楼层
如果有更好办法解决在进近世界大机场的时候那种内存溢出突然崩溃(系统资源已耗尽的提示匡)的问题就更好了!
回复

使用道具 举报

发表于 2017-5-12 19:38:14 | 显示全部楼层
倒数第二张黄字……话说我飞P3D没什么问题,不需要太多的性能优化。
回复

使用道具 举报

发表于 2017-5-12 20:30:33 | 显示全部楼层
感谢楼主分享宝贵经验!
回复

使用道具 举报

发表于 2017-5-12 20:36:39 | 显示全部楼层
这帖子必须收藏
回复

使用道具 举报

发表于 2017-5-12 20:42:59 | 显示全部楼层
感謝分享
回复

使用道具 举报

 楼主| 发表于 2017-5-12 21:51:30 | 显示全部楼层
Loong 发表于 2017-5-12 18:33
其实优化不优化不是十分的重要。更重要的是大机场的崩溃问题是否解决。

我在各个插件大机场并没有碰到崩溃问题,可能因为我没开AI?
回复

使用道具 举报

 楼主| 发表于 2017-5-12 22:00:04 | 显示全部楼层
shixiongyou88 发表于 2017-5-12 18:24
楼主  ProcessLasso这个软件 怎么使用啊   下载来都不会用

打开之后,全选所有程序,右键,CPU affinity>Always>Select CPU affinity>确保只有CPU0和CPU1前面打钩。
打开P3D,右键,设置CPU affinity 为2-7。之后右键,选“Classify as a High Performance Process”。
回复

使用道具 举报

发表于 2017-5-12 22:01:50 | 显示全部楼层
用这个显卡和cpu会不会超频
回复

使用道具 举报

 楼主| 发表于 2017-5-12 22:08:36 | 显示全部楼层
灌水886 发表于 2017-5-12 19:38
倒数第二张黄字……话说我飞P3D没什么问题,不需要太多的性能优化。

不论是否优化,能流畅运行就好。对于我的硬件来说,做了上面的优化才能实现“如丝般顺滑”的体验。
我一直在探索如何充分挖掘硬件潜力,所以除了飞行,tweak自己的电脑对我来说也很有意思。
回复

使用道具 举报

 楼主| 发表于 2017-5-12 22:09:54 | 显示全部楼层
l566777 发表于 2017-5-12 22:01
用这个显卡和cpu会不会超频

不会啊,没有超频的步骤
回复

使用道具 举报

发表于 2017-5-12 22:18:44 | 显示全部楼层
先收了,慢慢研究
回复

使用道具 举报

发表于 2017-5-12 22:19:19 | 显示全部楼层
留下来好好研究一下,楼主辛苦~
回复

使用道具 举报

发表于 2017-5-12 23:03:42 | 显示全部楼层
8.JPG
感谢呀,之前一直以为不锁帧率才能发挥显卡潜能,结果掉帧严重。看了帖子,在cfg和NvidiaInspector里锁帧35,用Aerosoft试了一下,除了刚加载完的时候加载卡了一会儿,之后丝般流畅!厉害了!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表