Thread (4 messages) flat view 4 messages, 3 authors, 2016-06-15

Re: [PATCHv4] Add Gitweb support for XZ compressed snapshots

From: Jakub Narebski <hidden>
Date: 2016-06-15 22:47:08

Mark A Rada [off-list ref] writes:
Ok, so I got a good nights sleep now, and reviewed the results of my
benchmarks to make sure they were consistent (turns out I had the
archive sizes in the wrong order for the XZ repository tests).

I also reworded a number of things and added a conclusion to the
benchmarks.

Let me know what you think.
Well separated change.  Very detailed commit message; that's good!.

[...]
Linux 2.6 series (f5886c7f96f2542382d3a983c5f13e03d7fc5259) 	349M
gzip 	23.70s user    	0.47s system  	99% cpu  24.227 total 	76M
gunzip 	3.74s user     	0.74s system  	94% cpu  4.741 total
bzip2 	130.96s user   	0.53s system  	99% cpu  2:11.97 total 	59M
bunzip2 31.05s user    	1.02s system  	99% cpu  32.355 total
xz 	448.78s user 	0.91s system  	99% cpu  7:31.28 total 	51M
unxz 	7.67s user     	0.80s system  	98% cpu  8.607 total

Git (0a53e9ddeaddad63ad106860237bbf53411d11a7) 			11M
gzip 	0.77s user 	0.03s system 	99% cpu  0.792 total 	2.5M
gunzip 	0.12s user 	0.02s system 	98% cpu  0.142 total
bzip2 	3.42s user 	0.02s system 	99% cpu  3.454 total 	2.1M
bunzip2 0.95s user 	0.03s system 	99% cpu  0.984 total
xz 	12.88s user 	0.14s system 	98% cpu  13.239 total 	1.9M
unxz 	0.27s user 	0.03s system 	99% cpu  0.298 total

XZ (669413bb2db954bbfde3c4542fddbbab53891eb4) 			1.8M
gzip  	0.12s user 	0.00s system 	95% cpu  0.132 total 	442K
gunzip 	0.02s user 	0.00s system 	97% cpu  0.027 total
bzip2  	1.28s user 	0.01s system 	99% cpu  1.298 total 	363K
bunzip2 0.15s user 	0.01s system 	100% cpu 0.157 total
xz 	1.62s user 	0.03s system 	99% cpu  1.652 total 	347K
unxz   	0.05s user 	0.00s system 	99% cpu  0.058 total
Note that for me the above results are not aligned in table.
This is a cosmetic issue.
Purely from a time and memory perspective, nothing compares to GZip in
each of the three tests. Though, if you have an average upload speed of
20KB/s, it would take ~400 seconds longer to transfer the kernel
snapshot
that was BZip2 compressed than it would the XZ compressed snapshot, the
transfer time difference is even greater when compared to the GZip
compressed snapshot. The wall clock time savings are relatively the same
for all test cases, but less dramatic for the smaller repositories.

The obvious downside for XZ compressed snapshots is the large CPU and
memory load put on the server to actualy generate the snapshot. Though
XZ
will eventually have good threading support, and I suspect then that the
wall clock time for making an XZ compressed snapshot would go down
considerably if the server had a beefy multi-core CPU.

I have not enabled XZ compression by default because the current default
is GZip, and XZ is only really competitive with BZip2. Also, the XZ
format
is still fairly new (the format was declared stable about 6 months ago),
and there have been no "stable" releases of the utils yet.
Those above three paragraphs are strangely wrapped, with single word
for a whole line ('snapshot', 'XZ', 'format').  This is a cosmetic issue.
Signed-off-by: Mark Rada <redacted>
-- 
Jakub Narebski
Git User's Survey 2009: http://tinyurl.com/GitSurvey2009
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help