Mesa 17.0 Saw Less Code Changes Than Earlier Releases, But More Notable Features
With Mesa 17.0 up to its release candidates and being under a feature freeze, I explored this morning how the size of the changes for Mesa 17.0 compare to earlier Mesa milestones.
Mesa 17.0 ships with many exciting end-user changes such as OpenGL 4.5 for RadeonSI, OpenGL 4.5 for Haswell, many RADV and ANV Vulkan driver improvements, improved OpenGL 4.x Nouveau support, and many other features I'll recap shortly in a Mesa 17.0 feature overview article.
While there are many things to get excited about for Mesa 17.0, it actually saw much less code churn than previous Mesa releases. Not that it's a bad thing, but I found the statistics interesting and likely a sign of the maturing of the Mesa code-base with needing less radical changes for supporting the latest OpenGL 4.x functionality and more code sharing going on with the Vulkan drivers.
Of any of the recent Mesa releases back to 11.0, the changes going from Mesa 13.0.0 to 17.0.0-rc1 are the smallest. There were less than 100,000 insertions of code and just 35,000 deletions of code. In comparison, the previous four Mesa releases all saw over 100,000 lines of insertions (and with Mesa 12.0 closer to 200,000). There are also a few hundred less files modified for Mesa 17.0 development than with the three previous releases. Just some interesting food for thought this morning.
For those curious about the Mesa code-base as of this morning and its overall size:
Mesa 17.0 ships with many exciting end-user changes such as OpenGL 4.5 for RadeonSI, OpenGL 4.5 for Haswell, many RADV and ANV Vulkan driver improvements, improved OpenGL 4.x Nouveau support, and many other features I'll recap shortly in a Mesa 17.0 feature overview article.
While there are many things to get excited about for Mesa 17.0, it actually saw much less code churn than previous Mesa releases. Not that it's a bad thing, but I found the statistics interesting and likely a sign of the maturing of the Mesa code-base with needing less radical changes for supporting the latest OpenGL 4.x functionality and more code sharing going on with the Vulkan drivers.
[michael@f25-michael mesa]$ git diff --shortstat mesa-13.0.0 mesa-17.0.0-rc1
1351 files changed, 96215 insertions(+), 35801 deletions(-)
[michael@f25-michael mesa]$ git diff --shortstat mesa-12.0.0 mesa-13.0.0
1840 files changed, 149191 insertions(+), 65620 deletions(-)
[michael@f25-michael mesa]$ git diff --shortstat mesa-11.2.0 mesa-12.0.0
1766 files changed, 196972 insertions(+), 40607 deletions(-)
[michael@f25-michael mesa]$ git diff --shortstat mesa-11.1.0 mesa-11.2.0
1742 files changed, 107248 insertions(+), 27533 deletions(-)
[michael@f25-michael mesa]$ git diff --shortstat mesa-11.0.0 mesa-11.1.0
1348 files changed, 108044 insertions(+), 44463 deletions(-)
Of any of the recent Mesa releases back to 11.0, the changes going from Mesa 13.0.0 to 17.0.0-rc1 are the smallest. There were less than 100,000 insertions of code and just 35,000 deletions of code. In comparison, the previous four Mesa releases all saw over 100,000 lines of insertions (and with Mesa 12.0 closer to 200,000). There are also a few hundred less files modified for Mesa 17.0 development than with the three previous releases. Just some interesting food for thought this morning.
For those curious about the Mesa code-base as of this morning and its overall size:
[michael@f25-michael mesa]$ cloc . 5476 text files. 5366 unique files. 699 files ignored. github.com/AlDanial/cloc v 1.70 T=20.22 s (236.3 files/s, 97289.9 lines/s) --------------------------------------------------------------------------------------- Language files blank comment code --------------------------------------------------------------------------------------- C 2022 149846 151022 763903 C/C++ Header 1681 60772 88310 294254 C++ 344 33725 41880 179980 XML 114 4235 832 83983 HTML 198 7311 32 31178 Python 97 5875 6960 23405 Assembly 24 2417 1453 7441 make 178 2046 3271 6310 yacc 2 712 441 3836 m4 8 386 144 3305 Perl 1 334 72 1895 Windows Module Definition 6 2 20 1510 Bourne Shell 78 348 137 972 lex 2 139 201 733 Bourne Again Shell 7 25 11 577 Protocol Buffers 1 51 2 374 XSLT 1 29 21 146 YAML 2 29 43 120 DOS Batch 2 17 1 119 Lisp 8 0 0 89 DTD 1 6 63 75 CSS 1 9 3 51 --------------------------------------------------------------------------------------- SUM: 4778 268314 294919 1404256 ---------------------------------------------------------------------------------------
3 Comments