-
Notifications
You must be signed in to change notification settings - Fork 2.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Default to Vulkan on Android 8+ #12228
Comments
What about android devices that doesn't support vulkan? |
Adreno drivers for Vulkan is still not good enough, many games run better on OpenGL than Vulkan, I'm on Android Pie and poeple on Android Oreo will have even worse drivers. Most demanding games won't run at 2xPSP resolution here, while OpenGL runs fine. Most recent devices have updated drivers that seems to perfom better on Vulkan, but other devices might only receive this update when Android Q arrives. |
Do games on Adreno still run better with GL on Pie with the latest builds of the emulator? One recent change should have helped Vulkan catch up (prerotation) |
I think this makes sense, although I think it'd be best probably for Adreno 5xx to specifically default to GL. A bit complex to get that, though. -[Unknown] |
We could also do a whitelist of popular device IDs, and for example default to Vulkan on all the international Galaxy phones (the Mali drivers are actually very good now).. though we'll miss a lot of devices that way |
I'm always using latest build. I have the driver V@331 from September 2018. I've seen some indications that versions released this year focused more on Vulkan. I checked the Galaxy A70 (Snapdragon 675) with driver V@334 from March 2019, and it supports some Vulkan features that on my device is said as "not supported" on AIDA64. |
So could you list a few games that run worse in Vulkan for you? Supported features are not that important but general driver quality is of course. |
God of War Ghost of Sparta, Midnight Club 3 and Los Angeles. The three demanding games I have on my phone at this moment, and both run better on GL than Vulkan. The lower performance of the first two game can be already noticed in the main menu, which on OpenGL run at full speed (60 FPS) and on Vulkan run around 40-45 FPS, using 2xPSP resolution. |
On ARM Mali it's exactly the opposite - on my Galaxy S8+, the heaviest games run 60+ on Vulkan and around 40-50 on OpenGL. Funny. I suspect Adreno's GL driver might be doing some optimizations I've been wanting to do for Vulkan on its own in the background (in case of God of War, merging render passes that are separated for no good reason)... |
I don't know if you already know the pages I'll put below, but it might help you devs: https://vulkan.gpuinfo.org/ You can check the status of Vulkan and OpenGL ES support of the reported devices. |
Very aware of those pages, but they only list features, formats and limitations, which tells nothing about the performance of a specific driver. |
This is pretty strange. On my phone with an Adreno 530 with v@313 OpenGL driver, Vulkan (API v1.0.62) is nearly identical or even better than OGL (at least for some time; as I reported before, performance gets worse over time). I'm on Android 8.0 though. |
@Leopard20 it's the same when I try a less demanding games, they run the same on both API. Your CPU and GPU are more powerful than mine, you're likely to not have performance issue on more demanding games or settings. |
Vulkan drivers are in better and better shape, and I think it's time to switch the default back to Vulkan on Android, at least for newer Android versions - from 8 or 9, not sure which.
On PC we'll stick to D3D11 for now I think.
The text was updated successfully, but these errors were encountered: