New OpenGL threading code - call for testing
|
02-08-2018, 12:03 PM
Post: #1
|
|||
|
|||
New OpenGL threading code - call for testing
I've implemented (with a bit of help from Unknown) threaded rendering for OpenGL, which means that the main thread queues up commands, and a background thread actually sends them to the driver, similarly to what we've been doing with Vulkan for a while. This arrangement also allowed more efficient vertex uploads, which improves performances further, but Vertex Cache should no longer help very much.
With this, you should be seeing much better performance if your device couldn't quite keep up before. There is no option, it's always on in new builds. Please try the latest builds from https://buildbot.orphis.net/ppsspp/ and let me know if anything is broken graphically that used to work, either here in this thread, or preferably in the issue tracker: https://github.com/hrydgard/ppsspp/issues |
|||
02-08-2018, 11:15 PM
(This post was last modified: 02-08-2018 11:16 PM by LG Fanatic.)
Post: #2
|
|||
|
|||
RE: New OpenGL threading code - call for testing
That's an awesome development! Can't wait to try it out. Edit, just tried the latest two builds(v1.5.4-526-g39fd77b35 & v1.5.4-525-g625595c6c) and I get a black screen when trying to run the app. My device is the Motorola Moto E4(Snapdragon 425 version) running Android 7.1.
|
|||
02-08-2018, 11:27 PM
Post: #3
|
|||
|
|||
RE: New OpenGL threading code - call for testing
Will this ever be brought to Dirext 9 or 11?
|
|||
02-09-2018, 03:32 AM
(This post was last modified: 02-09-2018 03:58 AM by fivefeet8.)
Post: #4
|
|||
|
|||
RE: New OpenGL threading code - call for testing
There seems to be a huge regression with Vulkan performance in a few games with the latest git builds. Earth Defense Force 2 is massively slower now with Vulkan. At the same time, OpenGL performance in this game has more than doubled. The game is now playable with OpenGL and complete unplayable with Vulkan. A complete vice versa from previous builds.
I must say though, OpenGL in the latest builds have increased performance in some instances substantially. In some games, it's neck and neck with Vulkan. |
|||
02-09-2018, 10:17 AM
(This post was last modified: 02-09-2018 10:55 AM by Henrik.)
Post: #5
|
|||
|
|||
RE: New OpenGL threading code - call for testing
Black screen on some devices is bad news, but it could be an unrelated compatibility issue that came up recently when we switched to "libc++" on Android. That one will be investigated.
The EDF slowdown is mysterious and unexpected, I'll have to look into that. At least for me, other games haven't slowed down in Vulkan at all. MorrisonGamer, D3D11 will do similar multithreading in the driver already, might still win some but if GL or Vulkan is faster, just use those. This threading stuff is a lot of work to get right, I won't have time anytime soon to do it for two more APIs. |
|||
02-10-2018, 01:11 AM
Post: #6
|
|||
|
|||
RE: New OpenGL threading code - call for testing
(02-09-2018 10:17 AM)Henrik Wrote: Black screen on some devices is bad news, but it could be an unrelated compatibility issue that came up recently when we switched to "libc++" on Android. That one will be investigated. Got it. Thank you and rest of the PPSSPP team for all your hard work on this app! |
|||
02-10-2018, 06:00 AM
(This post was last modified: 02-10-2018 06:55 AM by LG Fanatic.)
Post: #7
|
|||
|
|||
RE: New OpenGL threading code - call for testing
Okay, the latest beta build(v1.5.4-526-g39fd77b35) oddly enough works on my older ZTE Warp Sync(Snapdragon 400, Android 4.4.2). The performance boost with the new OpenGL code is quite substantial even in this older device. For example, I would need frameskip at three and multi-threading to get decent performance in Tekken 5. Now, with the new code frameskip set at two is enough for smooth gameplay. Some of the lighter titles like Megaman Poweredup now don't need frameskip at all. I can only imagine how well this will run on my Moto E4. Henrik, you and the rest of the PPSSPP team totally rock!
|
|||
02-10-2018, 01:17 PM
(This post was last modified: 02-11-2018 09:36 AM by Dukatti.)
Post: #8
|
|||
|
|||
RE: New OpenGL threading code - call for testing
P5200, PowerVR, x86, Android 6, OpenGLES, 526 build:
- crash right after any game loading Win7, Nvidia: - unable to change shaders - even after random successful change they can appear in small box in the left upper corner 387 build: - everything, shaders, win7, P5200 working great. [Edit:] - it's an old issue - on 387 I'm too can't switch shaders in OGL [Win & Android] - switching shaders working with D11 and VK - switching shaders in OGL worked in v.1.2.2-786-gfa3f219 |
|||
02-11-2018, 06:30 PM
Post: #9
|
|||
|
|||
RE: New OpenGL threading code - call for testing
Surprising Improvements, scenes in games that used to stay around 15~ fps on my crappy laptop are now around the high 20s.
As other have noted, there seems to be something broken when switching shaders, but this seems to be a much older issue. |
|||
02-12-2018, 11:39 AM
Post: #10
|
|||
|
|||
RE: New OpenGL threading code - call for testing
Yeah, I know about the switching shader thing, will fix it up soon.
|
|||
02-12-2018, 09:35 PM
Post: #11
|
|||
|
|||
RE: New OpenGL threading code - call for testing
Actually I do have something to report, I get some heavy sound crackling even though the game is running at full speed, only happens in OpenGL, is there any kind of log I could grab to help investigate this issue?
Fiddled with all the sound settings, nothing changed. |
|||
02-12-2018, 09:52 PM
Post: #12
|
|||
|
|||
RE: New OpenGL threading code - call for testing
Dukatti, the latest build should solve your issues except maybe crashing on the x86 android .. haven't tested that in a while.
YukiHerz, what device are you experiencing that on? is the crackling new or happened before? |
|||
02-13-2018, 12:02 AM
Post: #13
|
|||
|
|||
RE: New OpenGL threading code - call for testing
Windows 10 64-bit PC, this is the first time I experience crackling under these conditions.
|
|||
02-13-2018, 07:06 PM
(This post was last modified: 02-13-2018 07:09 PM by Dukatti.)
Post: #14
|
|||
|
|||
RE: New OpenGL threading code - call for testing
Henrik,
545 build working great on P5200 (: [x86, PowerVR, Android 6] Under some heavy conditions: - 387 build 39-40 fps - 545 build mostly 46-48 fps [42-51 are peeks] on 0.9.8 with additional hacks and multithread speed was the same, but caching new things on the screen in 545 build is faster And overall it looks better cause of countless fixes applied to make effects, scene objects, etc visible. I want to say that it's greatest build I ever launched on my pad x) [but it might be hard to notice for those not familiar with detailed objects of a game, or older results] On win7: - 562 noticeably caching new things faster then 387 - 562 switching shaders perfectly And only for debug: - in 545 switching shaders didn't work - in 555, 557, 560, 562 on tab3 awaiting black screen right after launching ppsspp - under heavy 10xPSP with custom shader on Win7 562 build - 20..22fps, 387 build - 22..24fps |
|||
02-14-2018, 03:12 PM
(This post was last modified: 02-15-2018 07:28 PM by AkiraJkr.)
Post: #15
|
|||
|
|||
RE: New OpenGL threading code - call for testing
On the latest build, the screen doesn't stop flickering for some reason, and games don't properly boot. Alcatel One Touch Pop C5
|
|||
« Next Oldest | Next Newest »
|