为大家分享一款PS3模拟器RPCS3 SPU性能提升补丁测试版,是来自“Farseer2”为用户们专门制作的辅助补丁工具,下载使用后可以提升模拟器游戏的性能等,十分实用,感兴趣的玩家欢迎下载使用。
工具简介
PS3的PC模拟器,rpcs3是一个开源的PlayStation 3(PS3)Windows模拟器。这是第一台PS3的PC模拟器。
资源详情
几天前,github用户 Farseer2 发布了一个改进中的 SPU补丁https://github.com/RPCS3/rpcs3/pull/4108
并在不断改进中........................
截至今日已经发送累积 6个Commit,
实际效果会因为游戏不同而不同,有的游戏完全没有效果,有的游戏,比如P5,可以有50%的帧率提升
原信息:
WIP for stability reasons
This PR includes some optimizations, mostly to the SPU, being the current bottleneck of the emulator:
vm::waiters are removed lazily if a lock can't be achieved at the moment of destruction to prevent the threads from locking up too much
Rewrote some heavily used stub so the compiled assembly would be faster (Best example would be try_pop)
Added fast path to try_lock
Code invalidation is only checked if a SYNC instruction was executed
SPU function DB is only searched once (instead of twice). It almost never caught a new function, yet it added quite the long search
Aggressive inlining of some function. While considered bad practice, the compiler didn't do it by itself, and, at worse, the epilogue and prologue of the function took 0.9% runtime while the function itself took 0.1%
Releasing locks earlier when processing mfc commands should reduce the time SPU threads are waiting on locks.
DMA's are now done by a REP MOVSQ, which, at least on Ivy Bridge processors, is faster (Maybe because of the instruction cache having an easier time, idk)
Probably some other stuff I forgot
So, now for the bad parts:
Performance gains may vary - while some reported almost double the FPS, some reported no change at all. Can't think of a reason for that yet.
Some parts were written before kd11 explained some of the SPU stuff to me, so take them with a grain of salt, might affect stability, so if you can, please test and report crashes and the likes.
As TSX has a different flow in some of the edited areas, I couldn't really test it
热心玩家phorcys把 Farseer2 大神提供的补丁,合并到了 Nekotekena大神的 llvm6 分支,并进行了测试,
仅测试了P5, E3 v2 标题画面,帧率 20 => 30
I7 7700 标题画面 帧率 35=>56 (使用帧率解锁补丁)
使用说明
改名运行或者覆盖到最新的 rpcs3目录下运行
运行前清一下 llvm cache ( 右键游戏,选Delete LLVM Cache)
已知问题:
某些游戏直接崩溃
有些A卡直接崩溃
崩溃跑不了的等大神后续更新吧,或者忍耐到 这个patch合并到主干!
最近又有一些更新,nekotekina更新SPU线程的部分严格检查代码,合并到spuperf以后,会因为严格执行的原因,损失 10%的帧率。提前合并了kd11的一个图像pull #4335 , 会修复很多游戏图像。虽然少了点帧率还是更新一个。p5专用的就别下了。