You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Optimizing Linux kernel with Clang. An article(in Russian) and results
Things like shader compilers could benefit from PGO. Having faster shader compilation could improve first-user UX and battery life. Some benchmarks are done for Wgpu. An issue about PGO in glslang.
Optimize with PGO Mesa drivers and tooling: Phoronix post
Maybe Proton could benefit from PGO but I have no benchmark results for it right now so I'm just guessing here.
Maybe they are valuable for SteamOS applications. Here I collect as many PGO cases as I can find - you can check them and find more other applications.
The text was updated successfully, but these errors were encountered:
Hello @zamazan4ik, this is a recurring topic among many open source projects. The general outcome is that you can make one very specific use case marginally better while harming almost all other use cases and sometimes creates some extremely poor performance results when the profile used to compile doesn't match reality.
When generalized to an entire OS install, this is a sink hole to burn developer time and isn't worth looking into. The time spent tuning profiles is better spent integrating newer package versions which have picked up optimizations as part of their upstream maintenance. If there's a specific and significant performance improvement to be found in a specific project, then contribute it upstream for everybody to benefit.
I have a lot of examples where the outcome is significant, not marginal. All the benchmarks you can check here (the same link was in the first message).
while harming almost all other use cases
It's not true if you are using several profiles from different workloads and use all of them simultaneously to create one PGO build (it could be done via merging several PGO profiles into one via dedicated tooling like llvm-profdata merge).
sometimes creates some extremely poor performance results when the profile used to compile doesn't match reality.
I do agree. However, it is usually simply mitigated by adding this profile to the PGO training set as well.
When generalized to an entire OS install, this is a sink hole to burn developer time and isn't worth looking into. The time spent tuning profiles is better spent integrating newer package versions which have picked up optimizations as part of their upstream maintenance. If there's a specific and significant performance improvement to be found in a specific project, then contribute it upstream for everybody to benefit.
This issue is not exactly about the problem - it's just an idea of how to improve SteamOS performance and UX and battery life for SteamDeck.
I can imagine multiple things where PGO can shine in SteamOS:
glslang
.Maybe they are valuable for SteamOS applications. Here I collect as many PGO cases as I can find - you can check them and find more other applications.
The text was updated successfully, but these errors were encountered: