Intel X.Org Driver Gets Hand-Tuning For SSE4, AVX2
Chris Wilson at Intel has begun hand-tuning his SNA acceleration architecture within the Intel X.Org driver in order to take advantage of modern CPU instruction set extensions.
With commits that started getting pushed into the mainline xf86-video-intel driver repository over the night, Chris began making changes to the Intel driver to let it take advantage of more advanced instruction set extensions found on modern CPUs. The CPU capabilities are then checked at run-time so the most appropriate version of the hand-tuned code can be utilized.
The basic hot-spot code-paths are now optimized for SSE2 but he's added in separate code-paths for SSE 4.2 and AVX/AVX2 (Advanced Vector Extensions 2) at this time. SSE 4.2 dates back to Intel "Nehalem" CPUs while AVX was introduced with "Sandy Bridge" and AVX2 is coming with "Haswell" processors in the coming months.
Right now it appears the hot areas in the code where he's doing most of the tuning work is within the vertex programs. This should allow for slightly enhanced performance on modern Intel CPUs using this driver and the currently-experimental SNA back-end.
The latest SNA code activity within the driver can be found via this CGit query. Now to hope that the Intel SNA code finally replaces the UXA acceleration back-end, so all of this continued work by Chris Wilson won't go to waste.
With commits that started getting pushed into the mainline xf86-video-intel driver repository over the night, Chris began making changes to the Intel driver to let it take advantage of more advanced instruction set extensions found on modern CPUs. The CPU capabilities are then checked at run-time so the most appropriate version of the hand-tuned code can be utilized.
The basic hot-spot code-paths are now optimized for SSE2 but he's added in separate code-paths for SSE 4.2 and AVX/AVX2 (Advanced Vector Extensions 2) at this time. SSE 4.2 dates back to Intel "Nehalem" CPUs while AVX was introduced with "Sandy Bridge" and AVX2 is coming with "Haswell" processors in the coming months.
Right now it appears the hot areas in the code where he's doing most of the tuning work is within the vertex programs. This should allow for slightly enhanced performance on modern Intel CPUs using this driver and the currently-experimental SNA back-end.
The latest SNA code activity within the driver can be found via this CGit query. Now to hope that the Intel SNA code finally replaces the UXA acceleration back-end, so all of this continued work by Chris Wilson won't go to waste.
18 Comments