cberner / raptorq

Rust implementation of RaptorQ (RFC6330)
Apache License 2.0
264 stars 47 forks source link

"cargo bench" fails. #140

Closed fadedbee closed 1 year ago

fadedbee commented 1 year ago

How do I run the benchmarks?

cargo bench fails with:

~/raptorq (master) $ git log -n1
commit 02c80b595adb4478b8760430cf015ada48c1a1d6 (HEAD -> master, origin/master, origin/HEAD)
Author: Pavel <golovkin.pl@gmail.com>
Date:   Sun Oct 9 07:08:55 2022 +0300

    Added wasm build configuration (#136)

    Co-authored-by: Christopher Berner <christopherberner@gmail.com>

~/raptorq (master) $ cargo --version
cargo 1.65.0-nightly (646e9a0b9 2022-09-02)

~/raptorq (master) $ rustc --version
rustc 1.65.0-nightly (c2804e6ec 2022-09-07)

~/raptorq (master) $ cargo bench
   Compiling raptorq v1.7.0 (/home/fadedbee/raptorq)
error[E0432]: unresolved import `raptorq::generate_constraint_matrix`
 --> benches/matrix_sparsity.rs:1:5
  |
1 | use raptorq::generate_constraint_matrix;
  |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `generate_constraint_matrix` in the root

error[E0432]: unresolved import `raptorq::IntermediateSymbolDecoder`
 --> benches/matrix_sparsity.rs:2:5
  |
2 | use raptorq::IntermediateSymbolDecoder;
  |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `IntermediateSymbolDecoder` in the root

error[E0432]: unresolved import `raptorq::Octet`
 --> benches/matrix_sparsity.rs:3:5
  |
3 | use raptorq::Octet;
  |     ^^^^^^^^^-----
  |     |        |
  |     |        help: a similar name exists in the module (notice the capitalization): `octet`
  |     no `Octet` in the root

error[E0432]: unresolved import `raptorq::Symbol`
 --> benches/matrix_sparsity.rs:4:5
  |
4 | use raptorq::Symbol;
  |     ^^^^^^^^^------
  |     |        |
  |     |        help: a similar name exists in the module (notice the capitalization): `symbol`
  |     no `Symbol` in the root

error[E0432]: unresolved imports `raptorq::BinaryMatrix`, `raptorq::SparseBinaryMatrix`
 --> benches/matrix_sparsity.rs:5:46
  |
5 | use raptorq::{extended_source_block_symbols, BinaryMatrix, SparseBinaryMatrix};
  |                                              ^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^ no `SparseBinaryMatrix` in the root
  |                                              |
  |                                              no `BinaryMatrix` in the root

error[E0432]: unresolved import `raptorq::Symbol`
  --> benches/codec_benchmark.rs:10:5
   |
10 | use raptorq::Symbol;
   |     ^^^^^^^^^------
   |     |        |
   |     |        help: a similar name exists in the module (notice the capitalization): `symbol`
   |     no `Symbol` in the root

error[E0432]: unresolved import `raptorq::Octet`
  --> benches/codec_benchmark.rs:11:46
   |
11 | use raptorq::{ObjectTransmissionInformation, Octet};
   |                                              ^^^^^
   |                                              |
   |                                              no `Octet` in the root
   |                                              help: a similar name exists in the module (notice the capitalization): `octet`

warning: use of deprecated struct `criterion::Benchmark`: Please use BenchmarkGroups instead.
 --> benches/codec_benchmark.rs:3:16
  |
3 | use criterion::Benchmark;
  |                ^^^^^^^^^
  |
  = note: `#[warn(deprecated)]` on by default

warning: use of deprecated struct `criterion::Benchmark`: Please use BenchmarkGroups instead.
  --> benches/codec_benchmark.rs:29:9
   |
29 |         Benchmark::new("", move |b| {
   |         ^^^^^^^^^

warning: use of deprecated struct `criterion::Benchmark`: Please use BenchmarkGroups instead.
  --> benches/codec_benchmark.rs:43:9
   |
43 |         Benchmark::new("", move |b| {
   |         ^^^^^^^^^

warning: use of deprecated struct `criterion::Benchmark`: Please use BenchmarkGroups instead.
  --> benches/codec_benchmark.rs:58:9
   |
58 |         Benchmark::new("", move |b| {
   |         ^^^^^^^^^

warning: use of deprecated struct `criterion::Benchmark`: Please use BenchmarkGroups instead.
  --> benches/codec_benchmark.rs:78:9
   |
78 |         Benchmark::new("", move |b| {
   |         ^^^^^^^^^

warning: use of deprecated struct `criterion::Benchmark`: Please use BenchmarkGroups instead.
  --> benches/codec_benchmark.rs:91:9
   |
91 |         Benchmark::new("", move |b| {
   |         ^^^^^^^^^

warning: use of deprecated struct `criterion::Benchmark`: Please use BenchmarkGroups instead.
   --> benches/codec_benchmark.rs:105:9
    |
105 |         Benchmark::new("", move |b| {
    |         ^^^^^^^^^

warning: use of deprecated associated function `criterion::Criterion::<M>::bench`: Please use BenchmarkGroups instead.
  --> benches/codec_benchmark.rs:27:7
   |
27 |     c.bench(
   |       ^^^^^

warning: use of deprecated associated function `criterion::Criterion::<M>::bench`: Please use BenchmarkGroups instead.
  --> benches/codec_benchmark.rs:41:7
   |
41 |     c.bench(
   |       ^^^^^

warning: use of deprecated associated function `criterion::Criterion::<M>::bench`: Please use BenchmarkGroups instead.
  --> benches/codec_benchmark.rs:56:7
   |
56 |     c.bench(
   |       ^^^^^

warning: use of deprecated associated function `criterion::Criterion::<M>::bench`: Please use BenchmarkGroups instead.
  --> benches/codec_benchmark.rs:76:7
   |
76 |     c.bench(
   |       ^^^^^

warning: use of deprecated associated function `criterion::Criterion::<M>::bench`: Please use BenchmarkGroups instead.
  --> benches/codec_benchmark.rs:89:7
   |
89 |     c.bench(
   |       ^^^^^

warning: use of deprecated associated function `criterion::Criterion::<M>::bench`: Please use BenchmarkGroups instead.
   --> benches/codec_benchmark.rs:103:7
    |
103 |     c.bench(
    |       ^^^^^

For more information about this error, try `rustc --explain E0432`.
warning: `raptorq` (bench "codec_benchmark") generated 13 warnings
error: could not compile `raptorq` due to 2 previous errors; 13 warnings emitted
warning: build failed, waiting for other jobs to finish...
error: could not compile `raptorq` due to 5 previous errors
cberner commented 1 year ago

Should be fixed on master now. If you want to run all the benchmarks you'll need to enable the benchmarking feature

fadedbee commented 1 year ago

Thanks, I can confirm that it is fixed.