1
0
mirror of https://github.com/BLAKE3-team/BLAKE3 synced 2024-09-28 23:31:41 +02:00
Commit Graph

32 Commits

Author SHA1 Message Date
Jack O'Connor
e17c45ddd5 version 0.1.3
Changes since 0.1.2:
- All x86 implementations include _mm_prefetch optimizations. These
  improve performance for very large inputs.
- The C implementation performs parallel parent hashing, matching the
  performance of the single-threaded Rust implementation.
- b3sum supports --no-mmap. Contributed by @cesarb.
2020-01-22 21:35:24 -05:00
Jack O'Connor
491f799fd9 clarify the --no-mmap logic a bit 2020-01-20 12:03:31 -05:00
Cesar Eduardo Barros
273a679ddc b3sum: add no-mmap option
Using mmap is not always the best option. For instance, if the file is
truncated while being read, b3sum will receive a SIGBUS and abort.

Follow ripgrep's lead and add a --no-mmap option to disable mmap. This
can also help benchmark the mmap versus the read path, and help debug
performance issues potentially caused by mmap access patterns (like
issue #32).
2020-01-20 11:58:07 -05:00
Jack O'Connor
14cd5c51c4 version 0.1.2
Changes since 0.1.1:
- b3sum no longer mmaps files smaller than 16 KiB. This improves
  performance for hashing many small files. Contributed by @xzfc.
- b3sum now supports --raw output. Contributed by @phayes.
2020-01-17 13:58:55 -05:00
Jack O'Connor
7ee89fe738 update b3sum help text in README.md 2020-01-17 13:54:58 -05:00
Jack O'Connor
e2ce07601f edit the --raw help string 2020-01-17 13:36:09 -05:00
Jack O'Connor
2db9f2d2ea
Merge pull request #22 from phayes/raw_output
Adds support for raw output to b3sum
2020-01-17 13:29:39 -05:00
Albert Safin
f26880e282 b3sum: do not mmap files smaller than 16 KiB 2020-01-17 12:58:32 -05:00
Jack O'Connor
33a9bee51f update the b3sum README 2020-01-15 10:46:47 -05:00
phayes
aec1d88e31
Using take() to limit the number of bytes copies 2020-01-14 14:35:18 -08:00
phayes
a02b4cb040
bailing early if we have both --raw and multiple files 2020-01-13 14:56:06 -08:00
phayes
0e8734b7f6
Making sure our raw multi-file test is testing what we think it is 2020-01-13 14:48:24 -08:00
phayes
5cb01ad696
Using stdout_capture for capturing stdout that is not a string 2020-01-13 14:43:09 -08:00
phayes
2bd7614d1e
Fixing stdout locking 2020-01-13 14:40:30 -08:00
phayes
ec1233bca3
Locking stdout for writing in a tight loop. 2020-01-13 14:36:28 -08:00
phayes
8d251af29f
Adds support for raw output to b3sum 2020-01-13 13:12:47 -08:00
Jack O'Connor
02250a7b7c version 0.1.1
Changes since 0.1.0:
- Optimizations contributed by @cesarb.
- Fix the build on x86_64-pc-windows-gnu when c_avx512 is enabled.
- Add an explicit error message for compilers that don't support c_avx512.
2020-01-13 14:47:28 -05:00
Jack O'Connor
caa6622afa explicitly check for -mavx512f or /arch:AVX512 support
If AVX-512 is enabled, and the local C compiler doesn't support it, the
build is going to fail. However, if we check for this explicitly, we can
give a better error message.

Fixes https://github.com/BLAKE3-team/BLAKE3/issues/6.
2020-01-13 14:34:27 -05:00
Jack O'Connor
1d17689133 same license field fix in b3sum/Cargo.toml 2020-01-10 10:00:17 -05:00
Jack O'Connor
7f43ed9f47 use the Apache-2.0 license in Cargo.toml
This project is also CC0, but crates.io doesn't seem to understand that
one.
2020-01-09 11:48:09 -05:00
Jack O'Connor
3cf242b651 fill out Cargo.toml files for publication 2020-01-09 10:50:55 -05:00
Jack O'Connor
e04b8b1fed clarify that b3sum --keyed takes raw key bytes 2020-01-07 17:44:50 -05:00
Jack O'Connor
bee430b335 make the --length argument require a value 2020-01-05 19:21:47 -05:00
Jack O'Connor
2fac7447e0 make derive_key take a key of any length
The previous version of this API called for a key of exactly 256 bits.
That's good for optimal performance, but it would mean losing the
use-with-other-algorithms property for applications whose input keys are
a different size. There's no way for an abstraction over the previous
version to provide reliable domain separation for the "extract" step.
2019-12-28 17:56:29 -06:00
Jack O'Connor
7f20c473f2 show the default value for b3sum --length 2019-12-13 16:23:03 -05:00
Jack O'Connor
ddd4f4a202 make the b3sum --help text wording more consistent 2019-12-13 16:17:57 -05:00
Jack O'Connor
b1b507d43a make b3sum --keyed and --derive-key read the key from stdin
Putting secret keys on the command line is bad practice, because command
line args are usually globally visible within the OS. Even if these
flags are mostly intended for testing and experimentation, we might as
well do the right thing. Plus this saves people the trouble of hex
encoding their keys.
2019-12-13 16:10:55 -05:00
Jack O'Connor
1a6e863513 fix another warning in b3sum --no-default-features 2019-12-13 13:27:01 -05:00
Jack O'Connor
aa0d282ee5 add to b3sum/README.md 2019-12-13 13:10:05 -05:00
Jack O'Connor
811b5109c5 add --no-names to b3sum
Printing all names by default is more consistent with Coreutils.
2019-12-13 13:08:50 -05:00
Jack O'Connor
9bf1020213 make the "c_avx512" feature a no-op on non-x86
This lets us enable it by default in b3sum.
2019-12-12 15:13:04 -05:00
Jack O'Connor
7cf6b8f174 initial version of b3sum 2019-12-12 13:18:57 -05:00