Jack O'Connor
5f29918b7e
add a LICENSE file including CC0 and Apache 2.0
2019-12-15 17:44:01 -05:00
Jack O'Connor
ab88db1aed
docs tweaks
2019-12-14 10:13:10 -05:00
Jack O'Connor
e6e4e6d687
a few more comments in reference_impl.rs
2019-12-14 09:55:50 -05: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
f54c292a53
silence another warning in the --no-default-features tests
2019-12-13 13:19:44 -05:00
Jack O'Connor
d963fe18f3
test release mode in CI
...
As part of this, get rid of the BLAKE3_FUZZ_ITERATIONS variable. I
wasn't using it anywhere, and it was leading to some compiler warnings
in --no-default-features mode.
2019-12-13 13:15:48 -05:00
Jack O'Connor
0c245f21bf
fix the doc tests build
2019-12-13 13:12:06 -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
04f5ccd648
expand the docs
2019-12-13 12:53:09 -05:00
Jack O'Connor
1384edd67c
rename 1_chunk benchmarks to 1_kib
2019-12-13 10:06:46 -05:00
Jack O'Connor
fb0682c4c5
add 2 KiB benchmarks
2019-12-13 09:23:21 -05:00
Jack O'Connor
a52d4daa98
update MAX_DEPTH
2019-12-12 23:40:13 -05:00
Jack O'Connor
fe9b8fedd7
fix benchmarks build
2019-12-12 23:31:02 -05:00
Jack O'Connor
b5f1e925f7
rename "offset" to "counter" and always increment it by 1
...
This is simpler than sometimes incrementing by CHUNK_LEN and other times
incrementing by BLOCK_LEN.
2019-12-12 21:41:30 -05:00
Jack O'Connor
a5cc3b2867
reduce the CHUNK_LEN from 2048 bytes to 1024 bytes
...
Smaller chunk sizes are a big benefit for parallelism at shorter input
lengths, and recent benchmarks show that this reduction has a relative
small cost in terms of peak throughput. It's also a nice round number.
2019-12-12 20:39:00 -05:00
Jack O'Connor
66fee0c6ef
add some more description in README.md
2019-12-12 15:22:09 -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
b9a05913ee
fix the test_vectors build
2019-12-12 14:07:58 -05:00
Jack O'Connor
7cf6b8f174
initial version of b3sum
2019-12-12 13:18:57 -05:00
Jack O'Connor
3b5664c8a5
struct OutputReader
2019-12-12 11:33:21 -05:00
Jack O'Connor
59752de9bd
fix syntax errors in ci.yml
2019-12-11 23:21:25 -05:00
Jack O'Connor
6823655aed
run the test vectors on cross tests (ARM, MIPS) on CI
2019-12-11 23:19:58 -05:00
Jack O'Connor
c8d21fab95
account for Windows newlines when checking for test vector changes
2019-12-11 22:41:59 -05:00
Jack O'Connor
a3be434d28
fix bench tests running in the wrong directory
2019-12-11 22:34:03 -05:00
Jack O'Connor
1a57232b49
delete an unused import
2019-12-11 22:32:53 -05:00
Jack O'Connor
dd3a72fb9f
run test vectors and bench tests in the regular CI test matrix
2019-12-11 22:30:19 -05:00
Jack O'Connor
52ea6487f8
switch to representing CVs as words for the compression function
...
The portable implementation was getting slowed down by converting back
and forth between words and bytes.
I made the corresponding change on the C side first
(12a37be8b5
),
and as part of this commit I'm re-vendoring the C code. I'm also
exposing a small FFI interface to C so that blake3_neon.c can link
against portable.rs rather than blake3_portable.c, see c_neon.rs.
2019-12-11 18:05:26 -05:00
Jack O'Connor
d68882da0d
test_checked_in_vectors_up_to_date
2019-12-11 11:04:41 -05:00
Jack O'Connor
c81d5c2522
test against test_vectors.json in CI
2019-12-11 10:50:18 -05:00
Jack O'Connor
48b3fba833
check in test_vectors.json
...
This file is generated with:
cd ./test_vectors
cargo run --bin generate > ./test_vectors.json
2019-12-11 10:47:12 -05:00
Jack O'Connor
d183149b2e
add the test_vectors sub-crate
2019-12-11 10:14:24 -05:00
Jack O'Connor
4ca4c60694
add `cargo +nightly test --benches` to CI
2019-12-10 14:57:46 -05:00
Jack O'Connor
cbaf350c05
typo in ci.yml
2019-12-09 22:13:48 -05:00
Jack O'Connor
8c4cd710c3
set ARMv7 NEON compiler flags automatically
2019-12-09 21:52:24 -05:00
Jack O'Connor
61b34f35b4
fix a syntax error in ci.yml
2019-12-09 21:25:36 -05:00
Jack O'Connor
399167722c
add a README badge for CI
2019-12-09 21:22:33 -05:00
Jack O'Connor
98dd9cbbf1
add ci.yml
2019-12-09 21:20:04 -05:00
Jack O'Connor
0c44497290
s/subtree_stack/cv_stack/ in reference_impl.rs
...
This fits better with the current wording of the spec.
2019-12-08 23:31:18 -05:00
Jack O'Connor
ee0014776f
silence an unreachable code warning when "c_neon" is in use
2019-12-08 21:58:32 -05:00
Jack O'Connor
ae7271cc87
add benchmarks for AVX-512 and NEON
2019-12-08 21:56:10 -05:00
Jack O'Connor
78191a676f
feature comments in Cargo.toml
2019-12-08 21:56:10 -05:00
Jack O'Connor
1574b488f9
unify the platform-specific tests and test AVX-512 and NEON
2019-12-08 21:56:10 -05:00
Jack O'Connor
c7fff32392
add Rust FFI wrappers for AVX-512 and NEON
2019-12-08 21:56:10 -05:00
Jack O'Connor
d0a6e9ecb2
vendor C code from BLAKE3-c
...
Copied from:
b800162961
2019-12-08 21:45:49 -05:00
Jack O'Connor
0cb4f6dd2c
fix a bad assert
...
This would fire (incorrectly) on platforms where MAX_SIMD_DEGREE=1.
2019-12-07 22:23:58 -05:00
Jack O'Connor
bcb99ba087
fix the benchmarks build
2019-12-07 22:02:19 -05:00