240 Commits

Author SHA1 Message Date
Marcus Holland-Moritz
43317b7d55 Update benchmarks, again 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
4027a1a445 Update mkdwarfs man page 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
20b20a8986 Tweak defaults to be more sensible
Actually, lzma "extreme" is slower and compresses *worse*.
A few more tweaks that either improve speed or compression (or both).
2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
a0353639ad Reduce default nilsimsa depth to 20000 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
95baa184b8 Remove collision vector code, optimize collision handling 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
3967f03cb1 Disable collision vector again
This doesn't really help much in doing better segmentation, but it
slows it down quite a bit.
2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
b4f559213f Refactor segmenting 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
1970da345e More stats and better collision handling in block manager, part 1 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
f153329b96 Optimize block hash updating 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
d76cfc4086 Replace cyclic hash with rsync hash
The rsync hash isn't significantly better in terms of collisions,
but it's a little bit faster to compute (and doesn't require the
random bit array).
2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
7a2213a04d Minor tweaks 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
96afa05b77 Update benchmarks 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
c234dcc0ca Update dependencies in README 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
90f08dad79 Handle output file errors correctly 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
15e9972f8b Add missing include directory 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
d343660f75 Wording 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
a0ecc472f6 Reverse order, as we're scanning from the end 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
a3d06dc469 Refactor nilsimsa ordering 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
d179fe175d Clang-format 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
a2377ead41 Update mkdwarfs options with level-dependent ordering 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
2efc231393 Remove old nilsimsa code 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
9f734adc3a Optimize nilsimsa2 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
316d447fe1 Pre-sorting 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
14aed67ade Add nilsimsa2 order mode (will replace nilsimsa after more testing) 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
f8164c9e3a Add EROFS benchmarks to README 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
f3b40e6400 Install fatal signal handlers in mkdwarfs and dwarfs 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
a0a97eeb1b boost::filesystem -> std::filesystem 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
046c9571da Linking cleanup 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
0d50906c14 Import ZSTD 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
04c43ec421 Add -o readonly option to FUSE driver 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
88dd18781b Nit 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
15b35091df Remove useless config.h file 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
eed25dac98 Update TODOs 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
728504a85f Add --with-devices and --with-specials options 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
ddd5e27e75 Update benchmarks in README 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
14063b50ca Add another missing newline 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
4f50fced88 Initialize uninitialized variable 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
c4a8fd7969 Detect hard links and optimize code to avoid duplicate scanning 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
01107e0d39 Add Cromfs comparison 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
37244274c4 Add --time-resolution option 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
a629dad243 Fix missing newline in layout dump 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
9725b8fc61 Add --keep-all-times and default to only keeping mtime 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
8b83d98ec0 Add nilsimsa enumeration to Python interface 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
78ead545f5 Simplify size() call 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
4842ab05cf Catch py::error_already_set by const ref 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
7a75c29674 Remove __has_builtin check which doesn't work for gcc-9 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
e947f47b9a Update folly & fbthrift 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
a7127b2e1d Increment FS minor version due to addition of devices/... 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
9a57ee980a Document how to add /etc/fstab entries 2020-12-13 13:16:25 +01:00
Marcus Holland-Moritz
e59d1735bb Install FUSE driver to $prefix/sbin and add mount.dwarfs symlink 2020-12-13 13:16:25 +01:00