Commits
- Commit:
fcece7180725bba9a781eaa892af379b1986208b
- From:
- Omar Polo <op@omarpolo.com>
- Date:
attempt to speed up the deltification for big files
The current hash table perform poorly on big files due to a small
resize step that pushes the table to its limits continuously.
Instead, to have both a better performing hash table and keep the
memory consumption low, save the blocks in an array and use the
hash table as index. Then, use a more generous resizing scheme
that guarantees the good properties of the hash table.
To avoid having to rebuild the table when the array is resized,
save the indexes in the table, and to further reduce the memory
consumption use 32 bit indices. On amd64 this means that each slot
is 4 bytes instead of 8 for a pointer or 24 for a struct
got_deltify_block.
ok stsp@
- Commit:
d6a28ffe187127e3247254d7e242bb52d66eb26b
- From:
- Omar Polo <op@omarpolo.com>
- Date:
use random seeds for murmurhash2
change the three hardcoded seeds to fresh ones generated on demand via
arc4random. Suggested/fixed by and ok stsp@
- Commit:
f6027426102430eb80a6df7ce1bf2e31d15cf85d
- From:
- Christian Weisgerber <naddy@mips.inka.de>
- Date:
consistently match size of hash variables to that returned by murmurhash
ok millert stsp
- Commit:
1ac8bad908004860ef7d6042ee15a508f192a540
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
reduce minimum deltification chunk size to 32; suggested by ori
- Commit:
64a8571e126da3ef8c0488551727b87e4509b50d
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
map raw object files into memory while packing if possible
- Commit:
f34b169e54fc4d4960f06b804cabe1aeec70e07d
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
Allow for skipping the base object header in got_deltify().
- Commit:
69aa0e90839745f70c6fc7e33c78bbe949f3500d
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
substantial rewrite of deltify.c; operate on plain files only