Mesa Considers Raising CPU Support Baseline
Mesa developers are currently discussing the raising of the default compiler baseline for Mesa drivers moving forward, which would raise the base CPU requirements for these open-source Mesa drivers unless overriding the compiler flags. However, only the very oldest systems would be negatively impacted.
Similar to other open-source projects discussing the possibility of raising the CPU base requirements to allow more optimal compiler defaults to be used that benefit recent CPUs or even doing so at the distribution level, Mesa is also considering a shift to their defaults.
A proposal opened this week would default enable the use of SSE2 on Mesa builds. Yes, even in 2021 unless specifically targeting it, SSE2 is not used by default for Mesa builds. SSE2 has been present going back to the Pentium 4 in 2000 while the AMD support has been around since the Athlon 64 days three years later.
Using SSE2 in 2021 by default is still rather conservative in letting CPUs of roughly two decades still work with Mesa. The Mesa builds under Microsoft MSVC also enable SSE2 by default already to no user outcry. Some have also suggested enabling SSE3 / SSSE3 by default for Mesa builds while at it and would still allow for hardware 10~15 years old to still run fine with Mesa's default builds.
Raising the CPU feature baseline does also present the possibility of new bugs appearing when it comes to dealing with low-level code such as graphics drivers. Some remarks were made regarding the possibility of Gallium Nine issues or other compatibility quirks/glitches to work through. The RFC as stated would be to raise the compiler feature baseline after next quarter's Mesa 21.1.
By enabling these features by default, there are code output improvements and should help with performance. Strangely though no performance measurements were included as part of this "request for comments".
Those interested in the discussion over having Mesa possibly default to SSE2-enabled builds or even SSE3/SSSE3 can see this Gitlab ticket for the ongoing talk. We'll see what happens.
Similar to other open-source projects discussing the possibility of raising the CPU base requirements to allow more optimal compiler defaults to be used that benefit recent CPUs or even doing so at the distribution level, Mesa is also considering a shift to their defaults.
A proposal opened this week would default enable the use of SSE2 on Mesa builds. Yes, even in 2021 unless specifically targeting it, SSE2 is not used by default for Mesa builds. SSE2 has been present going back to the Pentium 4 in 2000 while the AMD support has been around since the Athlon 64 days three years later.
Using SSE2 in 2021 by default is still rather conservative in letting CPUs of roughly two decades still work with Mesa. The Mesa builds under Microsoft MSVC also enable SSE2 by default already to no user outcry. Some have also suggested enabling SSE3 / SSSE3 by default for Mesa builds while at it and would still allow for hardware 10~15 years old to still run fine with Mesa's default builds.
Raising the CPU feature baseline does also present the possibility of new bugs appearing when it comes to dealing with low-level code such as graphics drivers. Some remarks were made regarding the possibility of Gallium Nine issues or other compatibility quirks/glitches to work through. The RFC as stated would be to raise the compiler feature baseline after next quarter's Mesa 21.1.
By enabling these features by default, there are code output improvements and should help with performance. Strangely though no performance measurements were included as part of this "request for comments".
Those interested in the discussion over having Mesa possibly default to SSE2-enabled builds or even SSE3/SSSE3 can see this Gitlab ticket for the ongoing talk. We'll see what happens.
99 Comments