On Tue May 9 23:40:28 2023 +0000, Paul Gofman wrote:
Did you check the return value on Windows, do they match? I don't know how the actual non-zero values a estimated, but probably most interesting things if on such a machine EfficiencyClass is zero for performance cores (like in the patch) or maybe non-zero as well.
I don't have an Intel Hybrid Architecture CPU that I can personally test with, but I did ask someone in the Linux Gaming Dev Discord to test https://github.com/doitsujin/dxvk/tree/thread-affinity with this MR and it gave the same result as on Windows.
https://learn.microsoft.com/en-us/windows/win32/api/winnt/ns-winnt-processor_relationship tells us that on non-hybrid CPUs the EfficiencyClass member is zero, and I found here https://github.com/giampaolo/psutil/issues/2034 that for hybrid CPUs the EfficiencyClass is 1 for performance cores and 0 for efficiency cores. So this patch should match that exactly.