git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Decompression speed: zip vs lzo

From
Sam Vilain <sam@vilain.net>
Date
Jan 12, 2008, 03:06 UTC
Message-ID
<47882EC5.2080406@vilain.net>
In-Reply-To
<alpine.LFD.1.00.0801112125470.3054@xanadu.home>
Nicolas Pitre wrote:
> Sorry to rain on your parade, but to me 6-10% time saving is not a clear 
> win at all, given the equal increase in repository size.  This is simply 
> not worth it.
Agree.
> And a 50% time saving on an operation, such a git log, which takes less 
> than 2 seconds in absolute time, is not worth the repo size increase 
> either.

Disagree. Going as much as twice as fast for many history operations for 10% added space sounds like a clear win to me. We can easily agree to disagree though - making it a disabled by default config option allows the user to unroll their packs if they want.

> Going from 2 seconds down to one second doesn't make enough of 
> a user experience difference.

What do you mean? 1 second waiting is far better than 2 seconds waiting. And the mmap optimizations have not even begun yet - that could result in boosts from zero-copy, such as a lighter VM footprint.

> If git blame was to go from 10 seconds down to 4 then I'd say this is a 
> clear win.  But this is not the case.
This is an awesome boost!  Everything feels snappier already :)
maia:~/src/perl.clean$ time git-log | LANG=C wc
 288927  894027 8860916
real    0m0.839s
user    0m0.824s
sys     0m0.144s
maia:~/src/perl.clean$ cd ../perl.clean.loose/
maia:~/src/perl.clean.loose$ time git-log | LANG=C wc
 288927  894027 8860916

real 0m0.515s user 0m0.504s sys 0m0.136s

maia:~/src/perl.clean.loose$ du -sk .git/objects/pack/ 113484 .git/objects/pack/ maia:~/src/perl.clean.loose$ cd - /home/samv/src/perl.clean maia:~/src/perl.clean$ du -sk .git/objects/pack/ 107040 .git/objects/pack/ maia:~/src/perl.clean$

Want me to try this on kde.git?
Sam.
Previous: Nicolas PitreNext: Nicolas Pitre
Message 23 of 39 in “Decompression speed: zip vs lzo”
  1. Marco CostalbaJan 9, 2008
  2. Junio C HamanoJan 9, 2008
  3. Sam VilainJan 9, 2008
  4. Johannes SchindelinJan 9, 2008
  5. Sam VilainJan 10, 2008
  6. Sam VilainJan 10, 2008
  7. Pierre HabouzitJan 10, 2008
  8. Nicolas PitreJan 10, 2008
  9. Linus TorvaldsJan 10, 2008
  10. Nicolas PitreJan 10, 2008
  11. Pierre HabouzitJan 11, 2008
  12. Sam VilainJan 10, 2008
  13. Linus TorvaldsJan 10, 2008
  14. Sam VilainJan 10, 2008
  15. Linus TorvaldsJan 10, 2008
  16. Sam VilainJan 11, 2008
  17. Linus TorvaldsJan 11, 2008
  18. Sam VilainJan 11, 2008
  19. Sam VilainJan 11, 2008
  20. Linus TorvaldsJan 11, 2008
  21. Sam VilainJan 12, 2008
  22. Nicolas PitreJan 12, 2008
  23. Sam VilainJan 12, 2008
  24. Nicolas PitreJan 12, 2008
  25. Johannes SchindelinJan 12, 2008
  26. Junio C HamanoJan 12, 2008
  27. Marco CostalbaJan 10, 2008
  28. Sam VilainJan 10, 2008
  29. Nicolas PitreJan 10, 2008
  30. Pierre HabouzitJan 11, 2008
  31. Nicolas PitreJan 11, 2008
  32. Morten WelinderJan 11, 2008
  33. Nicolas PitreJan 10, 2008
  34. Marco CostalbaJan 10, 2008
  35. Marco CostalbaJan 10, 2008
  36. Johannes SchindelinJan 10, 2008
  37. Marco CostalbaJan 10, 2008
  38. Dana HowJan 10, 2008
  39. Junio C HamanoJan 9, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.