Mesa 17.0 Saw Less Code Changes Than Earlier Releases, But More Notable Features
Written by Michael Larabel in Mesa on 20 January 2017 at 07:52 AM EST. 3 Comments
MESA --
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.
[[email protected] mesa]$ git diff --shortstat mesa-13.0.0 mesa-17.0.0-rc1
1351 files changed, 96215 insertions(+), 35801 deletions(-)
[[email protected] mesa]$ git diff --shortstat mesa-12.0.0 mesa-13.0.0
1840 files changed, 149191 insertions(+), 65620 deletions(-)
[[email protected] mesa]$ git diff --shortstat mesa-11.2.0 mesa-12.0.0
1766 files changed, 196972 insertions(+), 40607 deletions(-)
[[email protected] mesa]$ git diff --shortstat mesa-11.1.0 mesa-11.2.0
1742 files changed, 107248 insertions(+), 27533 deletions(-)
[[email protected] 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:

[[email protected] 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
---------------------------------------------------------------------------------------

About The Author
Author picture

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter or contacted via MichaelLarabel.com.

Related Mesa News
Popular News This Week