Every repository with this icon (
Every repository with this icon (
Performance
Single measure
Here are a few measures I ran on my x86/64 system lately on the linux kernel 2.6.28.3 archive:
| tool | version | C (loc) | C++ (loc) | total (loc) | time (s) |
|---|---|---|---|---|---|
| codemetre | 0.20.1 | 6,224,113 | 1,496 | 6,225,609 | 22 |
| sloccount | 2.26 | 6,219,846 | 3,306 | 6,223,152 | 62 |
| cloc | 1.07 | 6,240,191 | 1,496 | 6,241,687 | 191 |
sloccount uses sophisticated heuristics to determine the language in which is written a file. It also recognizes much more languages. This may explain why measures are similar but not identical. Nevertheless, what can be noticed is that codemetre is almost three times faster than sloccount!
cloc gives almost 20,000 loc more than other tools, even though it determines duplicates. This is a strange result.
Differential measure
I also wanted to compare 2.6.28.2 and 2.6.28.3 flavours of the linux kernel archives. So I used the following command with 0.20.1 release:
codemetre --diff --short linux.2.6.28.2/ linux.2.6.28.3/
On my x86/64 system, the command took less than 1 minute and a half to execute! The result is that between these two versions (and among the files recognized by codemetre):
- 47 files have changed
- 306 lines have been written (N-C)
- 170 lines of the ancient version have been reworked or removed (A-C)
- Kernel has grown up of 136 lines (N-A)







