[INFO] cloning repository https://github.com/MochiPiyo/wgpu_matmul
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/MochiPiyo/wgpu_matmul" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMochiPiyo%2Fwgpu_matmul", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMochiPiyo%2Fwgpu_matmul'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a08abf8a6594f20e081d5fca4cb432e4ee8263cd
[INFO] building MochiPiyo/wgpu_matmul/a08abf8a6594f20e081d5fca4cb432e4ee8263cd against master#eb171a227f9e5de5d376b6edb56b174bc8235fb3 for pr-149937
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMochiPiyo%2Fwgpu_matmul" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/MochiPiyo/wgpu_matmul
[INFO] finished tweaking git repo https://github.com/MochiPiyo/wgpu_matmul
[INFO] tweaked toml for git repo https://github.com/MochiPiyo/wgpu_matmul written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/MochiPiyo/wgpu_matmul on toolchain eb171a227f9e5de5d376b6edb56b174bc8235fb3
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+eb171a227f9e5de5d376b6edb56b174bc8235fb3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/MochiPiyo/wgpu_matmul 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" "+eb171a227f9e5de5d376b6edb56b174bc8235fb3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded env_filter v0.1.0
[INFO] [stderr]   Downloaded env_logger v0.11.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+eb171a227f9e5de5d376b6edb56b174bc8235fb3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7e74ef2f3eb3864094b0c93ee312be2fec69dd0684e92a3ead3cc5cc1516e771
[INFO] running `Command { std: "docker" "start" "-a" "7e74ef2f3eb3864094b0c93ee312be2fec69dd0684e92a3ead3cc5cc1516e771", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7e74ef2f3eb3864094b0c93ee312be2fec69dd0684e92a3ead3cc5cc1516e771", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7e74ef2f3eb3864094b0c93ee312be2fec69dd0684e92a3ead3cc5cc1516e771", kill_on_drop: false }`
[INFO] [stdout] 7e74ef2f3eb3864094b0c93ee312be2fec69dd0684e92a3ead3cc5cc1516e771
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+eb171a227f9e5de5d376b6edb56b174bc8235fb3" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c5670441812fcf165208e1d03737446ee697754893c2ecaba82ed504787f2cef
[INFO] running `Command { std: "docker" "start" "-a" "c5670441812fcf165208e1d03737446ee697754893c2ecaba82ed504787f2cef", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.2.0
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]    Compiling once_cell v1.19.0
[INFO] [stderr]    Compiling thiserror v1.0.58
[INFO] [stderr]    Compiling zerocopy v0.7.32
[INFO] [stderr]    Compiling log v0.4.21
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]    Compiling libloading v0.7.4
[INFO] [stderr]    Compiling khronos-egl v4.1.0
[INFO] [stderr]    Compiling ash v0.37.3+1.3.251
[INFO] [stderr]    Compiling unicode-width v0.1.11
[INFO] [stderr]    Compiling bit-vec v0.6.3
[INFO] [stderr]    Compiling allocator-api2 v0.2.16
[INFO] [stderr]    Compiling gpu-descriptor-types v0.1.2
[INFO] [stderr]    Compiling syn v2.0.58
[INFO] [stderr]    Compiling codespan-reporting v0.11.1
[INFO] [stderr]    Compiling gpu-alloc-types v0.3.0
[INFO] [stderr]    Compiling regex-syntax v0.8.3
[INFO] [stderr]    Compiling unicode-xid v0.2.4
[INFO] [stderr]    Compiling libloading v0.8.3
[INFO] [stderr]    Compiling bit-set v0.5.3
[INFO] [stderr]    Compiling wgpu-types v0.17.0
[INFO] [stderr]    Compiling gpu-alloc v0.6.0
[INFO] [stderr]    Compiling profiling v1.0.15
[INFO] [stderr]    Compiling glow v0.12.3
[INFO] [stderr]    Compiling arrayvec v0.7.4
[INFO] [stderr]    Compiling anstream v0.6.13
[INFO] [stderr]    Compiling futures-sink v0.3.30
[INFO] [stderr]    Compiling pollster v0.3.0
[INFO] [stderr]    Compiling bytemuck v1.15.0
[INFO] [stderr]    Compiling lock_api v0.4.11
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling hashbrown v0.14.3
[INFO] [stderr]    Compiling parking_lot_core v0.9.9
[INFO] [stderr]    Compiling getrandom v0.2.14
[INFO] [stderr]    Compiling nanorand v0.7.0
[INFO] [stderr]    Compiling parking_lot v0.12.1
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling gpu-descriptor v0.2.4
[INFO] [stderr]    Compiling flume v0.11.0
[INFO] [stderr]    Compiling spirv v0.2.0+1.5.4
[INFO] [stderr]    Compiling regex-automata v0.4.6
[INFO] [stderr]    Compiling thiserror-impl v1.0.58
[INFO] [stderr]    Compiling naga v0.13.0
[INFO] [stderr]    Compiling regex v1.10.4
[INFO] [stderr]    Compiling env_filter v0.1.0
[INFO] [stderr]    Compiling env_logger v0.11.3
[INFO] [stderr]    Compiling wgpu-hal v0.17.2
[INFO] [stderr]    Compiling wgpu-core v0.17.1
[INFO] [stderr]    Compiling wgpu v0.17.2
[INFO] [stderr]    Compiling wgpu_matmul v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Arc`, `BorrowMut`, `RwLockReadGuard`, and `ops::Deref`
[INFO] [stdout]  --> src/matmul_structured2.rs:1:20
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{borrow::{BorrowMut, Cow}, collections::HashMap, ops::Deref, sync::{Arc, RwLock, RwLockReadGuard}};
[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 import: `flume::r#async`
[INFO] [stdout]  --> src/matmul_structured2.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use flume::r#async;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Buffer` and `ShaderModule`
[INFO] [stdout]  --> src/matmul_structured2.rs:3:29
[INFO] [stdout]   |
[INFO] [stdout] 3 | use wgpu::{util::DeviceExt, Buffer, ShaderModule};
[INFO] [stdout]   |                             ^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shader_name`
[INFO] [stdout]    --> src/matmul_structured2.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout] 113 |         shader_name: &str,
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shader_name`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shader_name`
[INFO] [stdout]    --> src/matmul_structured2.rs:203:9
[INFO] [stdout]     |
[INFO] [stdout] 203 |         shader_name: &str,
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shader_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/matmul_structured2.rs:349:12
[INFO] [stdout]     |
[INFO] [stdout] 349 |         if let Self::D2(i, j) = self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout]     = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/matmul_structured2.rs:357:12
[INFO] [stdout]     |
[INFO] [stdout] 357 |         if let Self::D2(i, j) = self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/matmul_structured2.rs:374:23
[INFO] [stdout]     |
[INFO] [stdout] 374 |         let size = if let Shape::D2(i, j) = shape {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/matmul_structured2.rs:407:16
[INFO] [stdout]     |
[INFO] [stdout] 407 |             if let Shape::D2(i, j) = self.shape {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/matmul_structured2.rs:408:20
[INFO] [stdout]     |
[INFO] [stdout] 408 |                 if let Shape::D2(k, l) = other.shape {
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/matmul_structured2.rs:458:43
[INFO] [stdout]     |
[INFO] [stdout] 458 |         let (dispatch_x, dispatch_y) = if let Shape::D2(x, y) = self.shape {
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/matmul_structured2.rs:492:43
[INFO] [stdout]     |
[INFO] [stdout] 492 |         let (dispatch_x, dispatch_y) = if let Shape::D2(x, y) = self.shape {
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OVERFLOW` is never used
[INFO] [stdout]  --> src/collatz.rs:5:7
[INFO] [stdout]   |
[INFO] [stdout] 5 | const OVERFLOW: u32 = 0xffffffff;
[INFO] [stdout]   |       ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/collatz.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub async fn run() {
[INFO] [stdout]   |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/matmul.rs:101:14
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub async fn run(x: usize) {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `shader_cache` is never read
[INFO] [stdout]   --> src/matmul_structured2.rs:70:5
[INFO] [stdout]    |
[INFO] [stdout] 64 | struct Wgpu {
[INFO] [stdout]    |        ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 70 |     shader_cache: RwLock<HashMap<String, wgpu::ShaderModule>>
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/matmul_structured2.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 75 | impl WgpuServer {
[INFO] [stdout]    | --------------- associated function in this implementation
[INFO] [stdout] 76 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `size` is never used
[INFO] [stdout]    --> src/matmul_structured2.rs:356:8
[INFO] [stdout]     |
[INFO] [stdout] 347 | impl Shape {
[INFO] [stdout]     | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 356 |     fn size(&self) -> usize {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `label` is never read
[INFO] [stdout]    --> src/matmul_structured2.rs:367:5
[INFO] [stdout]     |
[INFO] [stdout] 366 | pub struct RawGf32 {
[INFO] [stdout]     |            ------- field in this struct
[INFO] [stdout] 367 |     label: Option<String>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `size` is never used
[INFO] [stdout]    --> src/matmul_structured2.rs:399:12
[INFO] [stdout]     |
[INFO] [stdout] 371 | impl RawGf32 {
[INFO] [stdout]     | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 399 |     pub fn size(&self) -> usize {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Strassen4` is never constructed
[INFO] [stdout]  --> src/strassen.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct Strassen4 {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_fill_with`, `new_from`, `matmul`, and `print_1` are never used
[INFO] [stdout]   --> src/strassen.rs:8:8
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl Strassen4 {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout]  8 |     fn new_fill_with(size: usize, fill_with: f32) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     fn new_from(bodys: [RawGf32; 4]) -> Self {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     fn matmul(&self, other: &Self) -> Self {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     fn print_1(&self) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/strassen.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub fn run() {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 41.85s
[INFO] running `Command { std: "docker" "inspect" "c5670441812fcf165208e1d03737446ee697754893c2ecaba82ed504787f2cef", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c5670441812fcf165208e1d03737446ee697754893c2ecaba82ed504787f2cef", kill_on_drop: false }`
[INFO] [stdout] c5670441812fcf165208e1d03737446ee697754893c2ecaba82ed504787f2cef
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+eb171a227f9e5de5d376b6edb56b174bc8235fb3" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d90257e5424158d9ac88eeab460148cca5ac7cde20968ea5c712d822b98f1024
[INFO] running `Command { std: "docker" "start" "-a" "d90257e5424158d9ac88eeab460148cca5ac7cde20968ea5c712d822b98f1024", kill_on_drop: false }`
[INFO] [stderr]    Compiling wgpu_matmul v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Arc`, `BorrowMut`, `RwLockReadGuard`, and `ops::Deref`
[INFO] [stdout]  --> src/matmul_structured2.rs:1:20
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::{borrow::{BorrowMut, Cow}, collections::HashMap, ops::Deref, sync::{Arc, RwLock, RwLockReadGuard}};
[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 import: `flume::r#async`
[INFO] [stdout]  --> src/matmul_structured2.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use flume::r#async;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Buffer` and `ShaderModule`
[INFO] [stdout]  --> src/matmul_structured2.rs:3:29
[INFO] [stdout]   |
[INFO] [stdout] 3 | use wgpu::{util::DeviceExt, Buffer, ShaderModule};
[INFO] [stdout]   |                             ^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shader_name`
[INFO] [stdout]    --> src/matmul_structured2.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout] 113 |         shader_name: &str,
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shader_name`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shader_name`
[INFO] [stdout]    --> src/matmul_structured2.rs:203:9
[INFO] [stdout]     |
[INFO] [stdout] 203 |         shader_name: &str,
[INFO] [stdout]     |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_shader_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/matmul_structured2.rs:349:12
[INFO] [stdout]     |
[INFO] [stdout] 349 |         if let Self::D2(i, j) = self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout]     = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/matmul_structured2.rs:357:12
[INFO] [stdout]     |
[INFO] [stdout] 357 |         if let Self::D2(i, j) = self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/matmul_structured2.rs:374:23
[INFO] [stdout]     |
[INFO] [stdout] 374 |         let size = if let Shape::D2(i, j) = shape {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/matmul_structured2.rs:407:16
[INFO] [stdout]     |
[INFO] [stdout] 407 |             if let Shape::D2(i, j) = self.shape {
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/matmul_structured2.rs:408:20
[INFO] [stdout]     |
[INFO] [stdout] 408 |                 if let Shape::D2(k, l) = other.shape {
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/matmul_structured2.rs:458:43
[INFO] [stdout]     |
[INFO] [stdout] 458 |         let (dispatch_x, dispatch_y) = if let Shape::D2(x, y) = self.shape {
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/matmul_structured2.rs:492:43
[INFO] [stdout]     |
[INFO] [stdout] 492 |         let (dispatch_x, dispatch_y) = if let Shape::D2(x, y) = self.shape {
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OVERFLOW` is never used
[INFO] [stdout]  --> src/collatz.rs:5:7
[INFO] [stdout]   |
[INFO] [stdout] 5 | const OVERFLOW: u32 = 0xffffffff;
[INFO] [stdout]   |       ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]  --> src/collatz.rs:7:14
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub async fn run() {
[INFO] [stdout]   |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]    --> src/matmul.rs:101:14
[INFO] [stdout]     |
[INFO] [stdout] 101 | pub async fn run(x: usize) {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `shader_cache` is never read
[INFO] [stdout]   --> src/matmul_structured2.rs:70:5
[INFO] [stdout]    |
[INFO] [stdout] 64 | struct Wgpu {
[INFO] [stdout]    |        ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 70 |     shader_cache: RwLock<HashMap<String, wgpu::ShaderModule>>
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/matmul_structured2.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 75 | impl WgpuServer {
[INFO] [stdout]    | --------------- associated function in this implementation
[INFO] [stdout] 76 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `size` is never used
[INFO] [stdout]    --> src/matmul_structured2.rs:356:8
[INFO] [stdout]     |
[INFO] [stdout] 347 | impl Shape {
[INFO] [stdout]     | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 356 |     fn size(&self) -> usize {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `label` is never read
[INFO] [stdout]    --> src/matmul_structured2.rs:367:5
[INFO] [stdout]     |
[INFO] [stdout] 366 | pub struct RawGf32 {
[INFO] [stdout]     |            ------- field in this struct
[INFO] [stdout] 367 |     label: Option<String>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `size` is never used
[INFO] [stdout]    --> src/matmul_structured2.rs:399:12
[INFO] [stdout]     |
[INFO] [stdout] 371 | impl RawGf32 {
[INFO] [stdout]     | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 399 |     pub fn size(&self) -> usize {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Strassen4` is never constructed
[INFO] [stdout]  --> src/strassen.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct Strassen4 {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_fill_with`, `new_from`, `matmul`, and `print_1` are never used
[INFO] [stdout]   --> src/strassen.rs:8:8
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl Strassen4 {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout]  8 |     fn new_fill_with(size: usize, fill_with: f32) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     fn new_from(bodys: [RawGf32; 4]) -> Self {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 22 |     fn matmul(&self, other: &Self) -> Self {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     fn print_1(&self) {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run` is never used
[INFO] [stdout]   --> src/strassen.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub fn run() {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.45s
[INFO] running `Command { std: "docker" "inspect" "d90257e5424158d9ac88eeab460148cca5ac7cde20968ea5c712d822b98f1024", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d90257e5424158d9ac88eeab460148cca5ac7cde20968ea5c712d822b98f1024", kill_on_drop: false }`
[INFO] [stdout] d90257e5424158d9ac88eeab460148cca5ac7cde20968ea5c712d822b98f1024
