Two performance-related commits were made today to Mesa for the Nouveau Gallium3D driver.
Christoph Bumiller pushed some new Mesa commits today concerning Nouveau. The first one is nouveau: increase max order of suballocated buffers by 1
. This commit can make Nouveau run at 70 FPS now for Team Fortress 2 compared to 20 FPS prior to the commit, but unfortunately it's a hack.
The commit description says, "This is really a hack to make TF2 (considerably, up to 20 -> 70 fps at low res) faster." One of the code comments goes on to say, "TODO: Higher orders can waste a lot of space for npot size buffers, should add an extra cache for such buffer objects. HACK: Max order == 21 to accommodate TF2's 1.5 MiB, frequently reallocated vertex buffer (VM flush (?) decreases performance dramatically)."
The other commit
improves buffer transfers for Nouveau. "Save double memcpy on uploads to VRAM in most cases. Properly handle FLUSH_EXPLICIT. Reallocate on DISCARD_WHOLE_RESOURCE to avoid sync." This commit is larger and introduces around 500 lines of new code.
A few other Nouveau code commits were made today to mainline Mesa, but nothing else that is overly exciting.