Mobile game now requires massive amount of PSO to pre-warm to prevent CPU hitching during game play.
Even after removing redundant permutations, it still requires minutes to warmup the cache on mainstream devices.
Luckily, UE5 gives us a solution, we can compile PSO in async style in different android services(A service is a long running background task in Android, kind like a separate process.) to speed up the process.
This works fine in OpenGL RHI, it gives us a 2x compile time boost.
But it's worse in Vulkan RHI. Both approach looks identical, i wonder if there's any restriction in vulkan's driver implementation that limits this use pattern.
Thank you for returning to share the solution you found with the community!