[Opensim-dev] OpenSim codebase statistics.

Mariusz Nowostawski mariusz at nowostawski.org
Thu Jun 26 22:00:08 UTC 2008


Hi all,

We have build a nightly build system to collect some statistics on the
ongoing efforts within OpenSim codebase. This is a project related to
performance testing and performance enhancements (sponsored and in
collaboration with 3Di, Japan). Currently, the system fetches once a day
the copy of the SVN tree, checks what have been added, what have been
removed, what have been updated, builds the binaries, checks for code
warnings, runs the nunit tests (all 1 of them!) and collects stats for
these and also generates the doxygen docs.
In due time we plan to run the servers automatically and check for some
pre-defined performance indicators so we can keep track of the
server-side performance within nightly builds.

We started collecting those stats on 22 of May, so I want to share with
you the first monthly summary for the period between 22-May and 25-June.

As of today, the codebase contains 755 C# files.

During the 32 days:
233 new files were added
23 files were removed

(note: these are not necessarily C# files)

The build process never failed and we never had error during the build
(on Linux - windows is a different story). There is one nunit test with
17 asserts and this figure is unfortunately constant (not growing
together with the growing codebase).

On the first day, the system was built in 66.5s, and had 229 warnings.
Last night it took 87.4s, with 3586 warnings.

(note: building is done on the 64-bit Opteron Linux server, and all the
build time is in seconds and the warnings are on Linux with mono 1.9.1,
so they may vary slightly between particular compiler used).

The number of warnings has skyrocketed around revision 4950 and recently
(the addition of Prolog scripting is the main offender).
Most (if not all) of the warnings are due to trivial things such as the
variables being declared (or declared and initialised) and never being used.

Attached are two graphs to show the trend in the last month. The
codebase is growing, as new features and enhancements are added.
However, the (fast) growing rate of build time warnings and the steady
line for docs and the test count might indicate future problems with the
codebase maintainability. Putting a slight pressure or incentive for
contributors to keep their code warnings-free and encouraging nunit
tests for all newly introduced features might be a good idea to consider
- it would keep the source codebase cleaner and easier to
maintain/enhance/test in the future.

-- 
cheers
Mariusz



-------------- next part --------------
A non-text attachment was scrubbed...
Name: opensim-buildtime-stats.jpg
Type: image/jpeg
Size: 18615 bytes
Desc: not available
URL: <http://opensimulator.org/pipermail/opensim-dev/attachments/20080627/10b2beba/attachment-0002.jpg>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: opensim-buildwarn-stats.jpg
Type: image/jpeg
Size: 18607 bytes
Desc: not available
URL: <http://opensimulator.org/pipermail/opensim-dev/attachments/20080627/10b2beba/attachment-0003.jpg>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 3261 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://opensimulator.org/pipermail/opensim-dev/attachments/20080627/10b2beba/attachment-0001.bin>


More information about the Opensim-dev mailing list