The only data points worth sharing a this point are:
That doing the compression at a level of 3, rather than the max of 9, cuts the cpu time required for a big git commit by over half, and that that actually translates into a win on the I/O to disk. (these tests were performed on a dual opteron 842)
The benefits of compression aren't very much for git right now.
And: A big git commit is I/O bound. But we knew that. Maybe it's possible to make it less I/O bound.
Git branch: 7a4c67965de68ae7bc7aa1fde33f8eb9d8114697 Tree: 22.214.171.124 source tree Branch: N/a Merge File: N/a HW: dual opteron 242 Mem: 1GB Disk: seagate barracuda Filesystem: Reiser3 Git add: N/a Cache: Hot Git Commit: 44.97user 5.94system 1:45.24elapsed 48%CPU Git Merge: Options: Feature: Test of compression=9 (std git)
du -s .git/objects 110106 # du is probably not the right thing du -s --apparent-size .git/objects 58979
Git branch: 9e272677621c91784cf2533123a41745178f0701 Tree: 126.96.36.199 source tree Branch: N/a Merge File: N/a HW: dual opteron 242 Mem: 1GB Disk: seagate barracuda Disk mode: udma5 Filesystem: Reiser3 Git add: N/a Cache: Hot Git Commit: 16.79user 6.15system 1:21.92elapsed 28%CPU Git Merge: Options: Feature: Test of compression=3 (std git)
du -s .git/objects 115218 du -s --apparent-size .git/objects 64274
There's some variety in the best/worst case timings for I/O for the compressor=3 case...
16.79user 6.15system 1:21.92elapsed 28%CPU 16.68user 5.71system 1:13.19elapsed 30%CPU --
Timings of git commit with tmpfs (note, these were done with an ancient, 5 hour old version of git and the script)
Hot cache, tmpfs .git compression=9 44.97user 2.76system 0:47.72elapsed 100%CPU
Hot cache, tmpfs .git, compression=6
Wed Apr 20 20:18:11 PDT 2005
23.55user 2.83system 0:26.36elapsed 100%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+568680minor)pagefaults 0swaps
- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html