[INFO] fetching crate ruvector-cnn 2.0.6...
[INFO] testing ruvector-cnn-2.0.6 against 1.95.0 for beta-1.96-2
[INFO] extracting crate ruvector-cnn 2.0.6 into /workspace/builds/worker-0-tc1/source
[INFO] started tweaking crates.io crate ruvector-cnn 2.0.6
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate ruvector-cnn 2.0.6
[INFO] tweaked toml for crates.io crate ruvector-cnn 2.0.6 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate ruvector-cnn 2.0.6 on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate ruvector-cnn 2.0.6 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5bd1f548bebca5820895f5d3f990cf7ae552a2365b3c7ddf0a63cf5e2854356d
[INFO] running `Command { std: "docker" "start" "-a" "5bd1f548bebca5820895f5d3f990cf7ae552a2365b3c7ddf0a63cf5e2854356d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5bd1f548bebca5820895f5d3f990cf7ae552a2365b3c7ddf0a63cf5e2854356d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5bd1f548bebca5820895f5d3f990cf7ae552a2365b3c7ddf0a63cf5e2854356d", kill_on_drop: false }`
[INFO] [stdout] 5bd1f548bebca5820895f5d3f990cf7ae552a2365b3c7ddf0a63cf5e2854356d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c677e0cd8a550f9a12a4cf2665a01950e015790b2436079d5b6a9b8a6a6b4923
[INFO] running `Command { std: "docker" "start" "-a" "c677e0cd8a550f9a12a4cf2665a01950e015790b2436079d5b6a9b8a6a6b4923", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]    Compiling zerocopy v0.8.39
[INFO] [stderr]    Compiling bytemuck v1.25.0
[INFO] [stderr]    Compiling matrixmultiply v0.3.10
[INFO] [stderr]    Compiling rawpointer v0.2.1
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling safe_arch v0.7.4
[INFO] [stderr]    Compiling wide v0.7.33
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling approx v0.5.1
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling simba v0.9.1
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling rand_distr v0.4.3
[INFO] [stderr]    Compiling nalgebra v0.33.2
[INFO] [stderr]    Compiling ruvector-cnn v2.0.6 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `simd::quantize::QuantParams`
[INFO] [stdout]   --> src/layers/quantized_conv2d.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     simd::quantize::QuantParams,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Layer` and `TensorShape`
[INFO] [stdout]   --> src/layers/quantized_conv2d.rs:14:21
[INFO] [stdout]    |
[INFO] [stdout] 14 | use super::{Conv2d, Layer, TensorShape};
[INFO] [stdout]    |                     ^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::arch::x86_64::*`
[INFO] [stdout]   --> src/layers/quantized_conv2d.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::arch::x86_64::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Conv2d` and `Layer`
[INFO] [stdout]   --> src/layers/quantized_depthwise.rs:10:13
[INFO] [stdout]    |
[INFO] [stdout] 10 | use super::{Conv2d, Layer};
[INFO] [stdout]    |             ^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Tensor`
[INFO] [stdout]  --> src/layers/quantized_pooling.rs:7:34
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::{CnnError, CnnResult, Tensor};
[INFO] [stdout]   |                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Tensor`
[INFO] [stdout]  --> src/layers/quantized_residual.rs:8:34
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::{CnnError, CnnResult, Tensor};
[INFO] [stdout]   |                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::arch::x86_64::*`
[INFO] [stdout]   --> src/simd/winograd.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | use std::arch::x86_64::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input_zero_point`
[INFO] [stdout]   --> src/layers/quantized_conv2d.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |         input_zero_point: i32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_input_zero_point`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kernel_area`
[INFO] [stdout]    --> src/layers/quantized_pooling.rs:148:13
[INFO] [stdout]     |
[INFO] [stdout] 148 |         let kernel_area = self.kernel_size * self.kernel_size;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_kernel_area`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shape`
[INFO] [stdout]   --> src/layers/quantized_residual.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |         shape: &[usize],
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_shape`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shape`
[INFO] [stdout]    --> src/layers/quantized_residual.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |         shape: &[usize],
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_shape`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `half`
[INFO] [stdout]    --> src/simd/quantize.rs:336:9
[INFO] [stdout]     |
[INFO] [stdout] 336 |     let half = _mm256_set1_ps(0.5);
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_half`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `bias_f32` and `groups` are never read
[INFO] [stdout]   --> src/layers/quantized_conv2d.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct QuantizedConv2d {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 36 |     bias_f32: Vec<f32>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     groups: usize,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `QuantizedConv2d` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bias_f32` is never read
[INFO] [stdout]   --> src/layers/quantized_depthwise.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct QuantizedDepthwiseConv2d {
[INFO] [stdout]    |            ------------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 30 |     bias_f32: Vec<f32>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `QuantizedDepthwiseConv2d` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bias_f32` is never read
[INFO] [stdout]   --> src/layers/quantized_linear.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct QuantizedLinear {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 28 |     bias_f32: Vec<f32>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `QuantizedLinear` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 24.67s
[INFO] running `Command { std: "docker" "inspect" "c677e0cd8a550f9a12a4cf2665a01950e015790b2436079d5b6a9b8a6a6b4923", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c677e0cd8a550f9a12a4cf2665a01950e015790b2436079d5b6a9b8a6a6b4923", kill_on_drop: false }`
[INFO] [stdout] c677e0cd8a550f9a12a4cf2665a01950e015790b2436079d5b6a9b8a6a6b4923
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7f9a7f9cdeff8f3c3c53f517d6afae742ad8ba3e16841e4aef11e703c86e1348
[INFO] running `Command { std: "docker" "start" "-a" "7f9a7f9cdeff8f3c3c53f517d6afae742ad8ba3e16841e4aef11e703c86e1348", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling clap_builder v4.5.60
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling approx v0.5.1
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling simba v0.9.1
[INFO] [stderr]    Compiling clap v4.5.60
[INFO] [stderr]    Compiling zerocopy-derive v0.8.39
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling zerocopy v0.8.39
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling nalgebra v0.33.2
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling rand_distr v0.4.3
[INFO] [stderr]    Compiling ruvector-cnn v2.0.6 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `simd::quantize::QuantParams`
[INFO] [stdout]   --> src/layers/quantized_conv2d.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     simd::quantize::QuantParams,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Layer` and `TensorShape`
[INFO] [stdout]   --> src/layers/quantized_conv2d.rs:14:21
[INFO] [stdout]    |
[INFO] [stdout] 14 | use super::{Conv2d, Layer, TensorShape};
[INFO] [stdout]    |                     ^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::arch::x86_64::*`
[INFO] [stdout]   --> src/layers/quantized_conv2d.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::arch::x86_64::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Conv2d` and `Layer`
[INFO] [stdout]   --> src/layers/quantized_depthwise.rs:10:13
[INFO] [stdout]    |
[INFO] [stdout] 10 | use super::{Conv2d, Layer};
[INFO] [stdout]    |             ^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Tensor`
[INFO] [stdout]  --> src/layers/quantized_pooling.rs:7:34
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::{CnnError, CnnResult, Tensor};
[INFO] [stdout]   |                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Tensor`
[INFO] [stdout]  --> src/layers/quantized_residual.rs:8:34
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::{CnnError, CnnResult, Tensor};
[INFO] [stdout]   |                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::arch::x86_64::*`
[INFO] [stdout]   --> src/simd/winograd.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | use std::arch::x86_64::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input_zero_point`
[INFO] [stdout]   --> src/layers/quantized_conv2d.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |         input_zero_point: i32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_input_zero_point`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `simd::quantize::QuantParams`
[INFO] [stdout]   --> src/layers/quantized_conv2d.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 |     simd::quantize::QuantParams,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Layer` and `TensorShape`
[INFO] [stdout]   --> src/layers/quantized_conv2d.rs:14:21
[INFO] [stdout]    |
[INFO] [stdout] 14 | use super::{Conv2d, Layer, TensorShape};
[INFO] [stdout]    |                     ^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::arch::x86_64::*`
[INFO] [stdout]   --> src/layers/quantized_conv2d.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use std::arch::x86_64::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Conv2d` and `Layer`
[INFO] [stdout]   --> src/layers/quantized_depthwise.rs:10:13
[INFO] [stdout]    |
[INFO] [stdout] 10 | use super::{Conv2d, Layer};
[INFO] [stdout]    |             ^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Tensor`
[INFO] [stdout]  --> src/layers/quantized_pooling.rs:7:34
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::{CnnError, CnnResult, Tensor};
[INFO] [stdout]   |                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Tensor`
[INFO] [stdout]  --> src/layers/quantized_residual.rs:8:34
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::{CnnError, CnnResult, Tensor};
[INFO] [stdout]   |                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::arch::x86_64::*`
[INFO] [stdout]   --> src/simd/winograd.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | use std::arch::x86_64::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> src/kernels/int8_avx2.rs:500:42
[INFO] [stdout]     |
[INFO] [stdout] 500 |         let b: Vec<i8> = (0..64).map(|i| ((i % 128) as i8)).collect();
[INFO] [stdout]     |                                          ^               ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 500 -         let b: Vec<i8> = (0..64).map(|i| ((i % 128) as i8)).collect();
[INFO] [stdout] 500 +         let b: Vec<i8> = (0..64).map(|i| (i % 128) as i8).collect();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/kernels/int8_neon.rs:463:9
[INFO] [stdout]     |
[INFO] [stdout] 463 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> src/kernels/int8_neon.rs:468:42
[INFO] [stdout]     |
[INFO] [stdout] 468 |         let b: Vec<i8> = (0..32).map(|i| ((i % 64) as i8)).collect();
[INFO] [stdout]     |                                          ^              ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 468 -         let b: Vec<i8> = (0..32).map(|i| ((i % 64) as i8)).collect();
[INFO] [stdout] 468 +         let b: Vec<i8> = (0..32).map(|i| (i % 64) as i8).collect();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/kernels/int8_wasm.rs:418:9
[INFO] [stdout]     |
[INFO] [stdout] 418 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> src/kernels/int8_wasm.rs:423:42
[INFO] [stdout]     |
[INFO] [stdout] 423 |         let b: Vec<i8> = (0..32).map(|i| ((i % 64) as i8)).collect();
[INFO] [stdout]     |                                          ^              ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 423 -         let b: Vec<i8> = (0..32).map(|i| ((i % 64) as i8)).collect();
[INFO] [stdout] 423 +         let b: Vec<i8> = (0..32).map(|i| (i % 64) as i8).collect();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kernel_area`
[INFO] [stdout]    --> src/layers/quantized_pooling.rs:148:13
[INFO] [stdout]     |
[INFO] [stdout] 148 |         let kernel_area = self.kernel_size * self.kernel_size;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_kernel_area`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shape`
[INFO] [stdout]   --> src/layers/quantized_residual.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |         shape: &[usize],
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_shape`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shape`
[INFO] [stdout]    --> src/layers/quantized_residual.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |         shape: &[usize],
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_shape`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `half`
[INFO] [stdout]    --> src/simd/quantize.rs:336:9
[INFO] [stdout]     |
[INFO] [stdout] 336 |     let half = _mm256_set1_ps(0.5);
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_half`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `bias_f32` and `groups` are never read
[INFO] [stdout]   --> src/layers/quantized_conv2d.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct QuantizedConv2d {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 36 |     bias_f32: Vec<f32>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     groups: usize,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `QuantizedConv2d` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bias_f32` is never read
[INFO] [stdout]   --> src/layers/quantized_depthwise.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct QuantizedDepthwiseConv2d {
[INFO] [stdout]    |            ------------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 30 |     bias_f32: Vec<f32>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `QuantizedDepthwiseConv2d` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bias_f32` is never read
[INFO] [stdout]   --> src/layers/quantized_linear.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct QuantizedLinear {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 28 |     bias_f32: Vec<f32>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `QuantizedLinear` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input_zero_point`
[INFO] [stdout]   --> src/layers/quantized_conv2d.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |         input_zero_point: i32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_input_zero_point`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kernel_area`
[INFO] [stdout]    --> src/layers/quantized_pooling.rs:148:13
[INFO] [stdout]     |
[INFO] [stdout] 148 |         let kernel_area = self.kernel_size * self.kernel_size;
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_kernel_area`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shape`
[INFO] [stdout]   --> src/layers/quantized_residual.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |         shape: &[usize],
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_shape`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shape`
[INFO] [stdout]    --> src/layers/quantized_residual.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 110 |         shape: &[usize],
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_shape`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `half`
[INFO] [stdout]    --> src/simd/quantize.rs:336:9
[INFO] [stdout]     |
[INFO] [stdout] 336 |     let half = _mm256_set1_ps(0.5);
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_half`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]    --> src/kernels/int8_neon.rs:467:13
[INFO] [stdout]     |
[INFO] [stdout] 467 |         let a: Vec<i8> = (0..32).map(|i| (i % 64) as i8).collect();
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]    --> src/kernels/int8_neon.rs:468:13
[INFO] [stdout]     |
[INFO] [stdout] 468 |         let b: Vec<i8> = (0..32).map(|i| ((i % 64) as i8)).collect();
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]    --> src/kernels/int8_wasm.rs:422:13
[INFO] [stdout]     |
[INFO] [stdout] 422 |         let a: Vec<i8> = (0..32).map(|i| (i % 64) as i8).collect();
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]    --> src/kernels/int8_wasm.rs:423:13
[INFO] [stdout]     |
[INFO] [stdout] 423 |         let b: Vec<i8> = (0..32).map(|i| ((i % 64) as i8)).collect();
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `bias_f32` and `groups` are never read
[INFO] [stdout]   --> src/layers/quantized_conv2d.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct QuantizedConv2d {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 36 |     bias_f32: Vec<f32>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     groups: usize,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `QuantizedConv2d` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bias_f32` is never read
[INFO] [stdout]   --> src/layers/quantized_depthwise.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct QuantizedDepthwiseConv2d {
[INFO] [stdout]    |            ------------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 30 |     bias_f32: Vec<f32>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `QuantizedDepthwiseConv2d` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bias_f32` is never read
[INFO] [stdout]   --> src/layers/quantized_linear.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct QuantizedLinear {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 28 |     bias_f32: Vec<f32>,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `QuantizedLinear` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> src/simd/quantize.rs:525:34
[INFO] [stdout]     |
[INFO] [stdout] 525 |             assert!(q >= -128 && q <= 127);
[INFO] [stdout]     |                                  ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]   --> src/int8/mod.rs:77:46
[INFO] [stdout]    |
[INFO] [stdout] 77 |         assert!(params.zero_point >= -128 && params.zero_point <= 127);
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]   --> tests/acceptance_gates.rs:71:46
[INFO] [stdout]    |
[INFO] [stdout] 71 |                 params.zero_point >= -128 && params.zero_point <= 127,
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]    --> tests/acceptance_gates.rs:358:53
[INFO] [stdout]     |
[INFO] [stdout] 358 |         assert!(global_params.zero_point >= -128 && global_params.zero_point <= 127);
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: arguments to this function are incorrect
[INFO] [stdout]    --> tests/kernel_equivalence.rs:481:33
[INFO] [stdout]     |
[INFO] [stdout] 481 |             let result_scalar = matmul_int8_scalar(&a, &b, params, m, n, k);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^                 -  -  - expected `usize`, found `u64`
[INFO] [stdout]     |                                                                    |  |
[INFO] [stdout]     |                                                                    |  expected `usize`, found `u64`
[INFO] [stdout]     |                                                                    expected `usize`, found `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: function defined here
[INFO] [stdout]    --> src/int8/kernels/scalar.rs:13:8
[INFO] [stdout]     |
[INFO] [stdout]  13 | pub fn matmul_int8_scalar(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: you can convert a `u64` to a `usize` and panic if the converted value doesn't fit
[INFO] [stdout]     |
[INFO] [stdout] 481 |             let result_scalar = matmul_int8_scalar(&a, &b, params, m.try_into().unwrap(), n, k);
[INFO] [stdout]     |                                                                     ++++++++++++++++++++
[INFO] [stdout] help: you can convert a `u64` to a `usize` and panic if the converted value doesn't fit
[INFO] [stdout]     |
[INFO] [stdout] 481 |             let result_scalar = matmul_int8_scalar(&a, &b, params, m, n.try_into().unwrap(), k);
[INFO] [stdout]     |                                                                        ++++++++++++++++++++
[INFO] [stdout] help: you can convert a `u64` to a `usize` and panic if the converted value doesn't fit
[INFO] [stdout]     |
[INFO] [stdout] 481 |             let result_scalar = matmul_int8_scalar(&a, &b, params, m, n, k.try_into().unwrap());
[INFO] [stdout]     |                                                                           ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: arguments to this function are incorrect
[INFO] [stdout]    --> tests/kernel_equivalence.rs:482:40
[INFO] [stdout]     |
[INFO] [stdout] 482 |             let result_simd = unsafe { matmul_int8_simd(&a, &b, params, m, n, k) };
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^                 -  -  - expected `usize`, found `u64`
[INFO] [stdout]     |                                                                         |  |
[INFO] [stdout]     |                                                                         |  expected `usize`, found `u64`
[INFO] [stdout]     |                                                                         expected `usize`, found `u64`
[INFO] [stdout]     |
[INFO] [stdout] note: function defined here
[INFO] [stdout]    --> src/int8/kernels/simd.rs:19:15
[INFO] [stdout]     |
[INFO] [stdout]  19 | pub unsafe fn matmul_int8_simd(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^
[INFO] [stdout] help: you can convert a `u64` to a `usize` and panic if the converted value doesn't fit
[INFO] [stdout]     |
[INFO] [stdout] 482 |             let result_simd = unsafe { matmul_int8_simd(&a, &b, params, m.try_into().unwrap(), n, k) };
[INFO] [stdout]     |                                                                          ++++++++++++++++++++
[INFO] [stdout] help: you can convert a `u64` to a `usize` and panic if the converted value doesn't fit
[INFO] [stdout]     |
[INFO] [stdout] 482 |             let result_simd = unsafe { matmul_int8_simd(&a, &b, params, m, n.try_into().unwrap(), k) };
[INFO] [stdout]     |                                                                             ++++++++++++++++++++
[INFO] [stdout] help: you can convert a `u64` to a `usize` and panic if the converted value doesn't fit
[INFO] [stdout]     |
[INFO] [stdout] 482 |             let result_simd = unsafe { matmul_int8_simd(&a, &b, params, m, n, k.try_into().unwrap()) };
[INFO] [stdout]     |                                                                                ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ruvector-cnn` (test "kernel_equivalence") due to 2 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "7f9a7f9cdeff8f3c3c53f517d6afae742ad8ba3e16841e4aef11e703c86e1348", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7f9a7f9cdeff8f3c3c53f517d6afae742ad8ba3e16841e4aef11e703c86e1348", kill_on_drop: false }`
[INFO] [stdout] 7f9a7f9cdeff8f3c3c53f517d6afae742ad8ba3e16841e4aef11e703c86e1348
