1
0
mirror of https://github.com/BLAKE3-team/BLAKE3 synced 2024-09-28 23:31:41 +02:00
BLAKE3/b3sum
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
..
src b3sum: add no-mmap option 2020-01-20 11:58:07 -05:00
tests b3sum: add no-mmap option 2020-01-20 11:58:07 -05:00
Cargo.toml version 0.1.2 2020-01-17 13:58:55 -05:00
README.md version 0.1.2 2020-01-17 13:58:55 -05:00

b3sum

b3sum 0.1.2

USAGE:
    b3sum [FLAGS] [OPTIONS] [file]...

FLAGS:
    -h, --help        Prints help information
        --keyed       Uses the keyed mode, with the raw 32-byte key read from stdin
        --no-names    Omits filenames in the output
        --raw         Writes raw output bytes to stdout, rather than hex. --no-names is implied.
                      In this case, only a single input is allowed
    -V, --version     Prints version information

OPTIONS:
        --derive-key <CONTEXT>    Uses the key derivation mode, with the input as key material
    -l, --length <LEN>            The number of output bytes, prior to hex encoding (default 32)

ARGS:
    <file>...

Building

The standard way to install b3sum is:

cargo install b3sum

On Linux for example, Cargo will put the compiled binary in ~/.cargo/bin. You might want to add that directory to your $PATH, or rustup might have done it for you when you installed Cargo.

If you want to install directly from this directory, you can run cargo install --path .. Or you can just build with cargo build --release, which puts the binary at ./target/release/b3sum.

AVX-512 support (via C FFI, with dynamic CPU feature detection) and multi-threading (via Rayon) are enabled by default. Note that the underlying blake3 crate does not enable those by default.