[INFO] fetching crate cortiq-engine 0.8.12...
[INFO] checking cortiq-engine-0.8.12 against 8773d2c75a8e90130dcce745a7ec4e66bb9963db+rustflags=-Aunfulfilled-lint-expectations for pr-163637
[INFO] extracting crate cortiq-engine 0.8.12 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate cortiq-engine 0.8.12
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate cortiq-engine 0.8.12
[INFO] tweaked toml for crates.io crate cortiq-engine 0.8.12 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate cortiq-engine 0.8.12 on toolchain 8773d2c75a8e90130dcce745a7ec4e66bb9963db
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8773d2c75a8e90130dcce745a7ec4e66bb9963db" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate cortiq-engine 0.8.12 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" "+8773d2c75a8e90130dcce745a7ec4e66bb9963db" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:226:12
[INFO] [stderr]     |
[INFO] [stderr] 226 | homepage = "https://github.com/infosave2007/cmf"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 231 | repository = "https://github.com/infosave2007/cmf"
[INFO] [stderr]     |              -------------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `cortiq-engine` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 93d5c3cf95347e77574ac4d47e2f46af351f4be0e4702846211b6d2fd39f415d
[INFO] running `Command { std: "docker" "start" "93d5c3cf95347e77574ac4d47e2f46af351f4be0e4702846211b6d2fd39f415d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "93d5c3cf95347e77574ac4d47e2f46af351f4be0e4702846211b6d2fd39f415d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "93d5c3cf95347e77574ac4d47e2f46af351f4be0e4702846211b6d2fd39f415d" "/opt/rustwide/cargo-home/bin/cargo" "+8773d2c75a8e90130dcce745a7ec4e66bb9963db" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "93d5c3cf95347e77574ac4d47e2f46af351f4be0e4702846211b6d2fd39f415d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Aunfulfilled-lint-expectations" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "93d5c3cf95347e77574ac4d47e2f46af351f4be0e4702846211b6d2fd39f415d" "/opt/rustwide/cargo-home/bin/cargo" "+8773d2c75a8e90130dcce745a7ec4e66bb9963db" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:226:12
[INFO] [stderr]     |
[INFO] [stderr] 226 | homepage = "https://github.com/infosave2007/cmf"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 231 | repository = "https://github.com/infosave2007/cmf"
[INFO] [stderr]     |              -------------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `cortiq-engine` (manifest) generated 1 warning
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling displaydoc v0.2.6
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]     Checking simd-adler32 v0.3.9
[INFO] [stderr]     Checking yoke v0.8.3
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]     Checking rustls-pki-types v1.15.0
[INFO] [stderr]     Checking zerovec v0.11.6
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking regex-syntax v0.8.10
[INFO] [stderr]     Checking flate2 v1.1.9
[INFO] [stderr]     Checking zerotrie v0.2.4
[INFO] [stderr]     Checking tinystr v0.8.3
[INFO] [stderr]     Checking potential_utf v0.1.5
[INFO] [stderr]     Checking icu_collections v2.2.0
[INFO] [stderr]     Checking num-integer v0.1.47
[INFO] [stderr]     Checking icu_locale_core v2.2.0
[INFO] [stderr]    Compiling bytemuck_derive v1.10.2
[INFO] [stderr]    Compiling rustls v0.23.41
[INFO] [stderr]     Checking tinyvec v1.11.0
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking webpki-roots v1.0.8
[INFO] [stderr]     Checking fdeflate v0.3.7
[INFO] [stderr]     Checking quick-error v2.0.1
[INFO] [stderr]     Checking color_quant v1.1.0
[INFO] [stderr]     Checking zune-core v0.5.3
[INFO] [stderr]     Checking bit-vec v0.8.0
[INFO] [stderr]     Checking strength_reduce v0.2.4
[INFO] [stderr]     Checking memo-map v0.3.3
[INFO] [stderr]     Checking weezl v0.1.12
[INFO] [stderr]     Checking png v0.18.1
[INFO] [stderr]     Checking minijinja v2.21.0
[INFO] [stderr]     Checking zune-jpeg v0.5.15
[INFO] [stderr]     Checking icu_provider v2.2.0
[INFO] [stderr]     Checking gif v0.14.2
[INFO] [stderr]     Checking icu_properties v2.2.0
[INFO] [stderr]     Checking icu_normalizer v2.2.0
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking bytemuck v1.25.0
[INFO] [stderr]     Checking bit-set v0.8.0
[INFO] [stderr]     Checking transpose v0.2.3
[INFO] [stderr]     Checking unicode-normalization v0.1.25
[INFO] [stderr]     Checking image-webp v0.2.4
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking moxcms v0.8.1
[INFO] [stderr]     Checking webpki-roots v0.26.11
[INFO] [stderr]     Checking primal-check v0.3.4
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking memmap2 v0.9.10
[INFO] [stderr]     Checking idna_adapter v1.2.2
[INFO] [stderr]     Checking tokio v1.52.2
[INFO] [stderr]     Checking cortiq-core v0.8.12
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking rustfft v6.4.1
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking minijinja-contrib v2.21.0
[INFO] [stderr]     Checking tracing-serde v0.2.0
[INFO] [stderr]     Checking rustls-webpki v0.103.13
[INFO] [stderr]     Checking fancy-regex v0.14.0
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking image v0.25.10
[INFO] [stderr]     Checking ureq v2.12.1
[INFO] [stderr]     Checking cortiq-engine v0.8.12 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/attention.rs:70:1
[INFO] [stdout]    |
[INFO] [stdout] 70 | /// RoPE with an optional post-processing scale on both cos and sin (YaRN).
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]     --> src/dsv4.rs:5910:1
[INFO] [stdout]      |
[INFO] [stdout] 5910 | / /// `CMF_DSV4_DUMP=<path>` appends one JSON line per token: the embedding, the
[INFO] [stdout] 5911 | | /// hyper-connection state after every layer, the folded-and-normed head input
[INFO] [stdout] 5912 | | /// and the logits. It exists to be diffed against the reference forward on
[INFO] [stdout] 5913 | | /// the same weights — the numerical parity this port has never had, which at
[INFO] [stdout] 5914 | | /// toy scale is a few thousand floats and entirely tractable.
[INFO] [stdout]      | |_-------------------------------------------------------------^
[INFO] [stdout]      |   |
[INFO] [stdout]      |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]      |
[INFO] [stdout]      = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]    --> src/dsv41_vision.rs:382:20
[INFO] [stdout]     |
[INFO] [stdout] 382 |     f32::from_bits((bits.wrapping_add(round) & 0xffff_0000))
[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] 382 -     f32::from_bits((bits.wrapping_add(round) & 0xffff_0000))
[INFO] [stdout] 382 +     f32::from_bits(bits.wrapping_add(round) & 0xffff_0000)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `gelu_tanh`
[INFO] [stdout]   --> src/ltxte.rs:25:38
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::ltxdit::{Attn, Lin, Rope, gelu_tanh, rms_plain, rows};
[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: `TensorDtype`
[INFO] [stdout]   --> src/qwen4_exp.rs:13:77
[INFO] [stdout]    |
[INFO] [stdout] 13 | use cortiq_core::{CmfError, CmfModel, LayerType, ModelArch, Qwen4ExpConfig, TensorDtype};
[INFO] [stdout]    |                                                                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cortiq_core::TensorDtype`
[INFO] [stdout]   --> src/qwen_image_vision.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use cortiq_core::TensorDtype;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/vae3d.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | /// RMSNorm with NO affine — the decoder's q/k norms are weightless.
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/attention.rs:70:1
[INFO] [stdout]    |
[INFO] [stdout] 70 | /// RoPE with an optional post-processing scale on both cos and sin (YaRN).
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]     --> src/dsv4.rs:5910:1
[INFO] [stdout]      |
[INFO] [stdout] 5910 | / /// `CMF_DSV4_DUMP=<path>` appends one JSON line per token: the embedding, the
[INFO] [stdout] 5911 | | /// hyper-connection state after every layer, the folded-and-normed head input
[INFO] [stdout] 5912 | | /// and the logits. It exists to be diffed against the reference forward on
[INFO] [stdout] 5913 | | /// the same weights — the numerical parity this port has never had, which at
[INFO] [stdout] 5914 | | /// toy scale is a few thousand floats and entirely tractable.
[INFO] [stdout]      | |_-------------------------------------------------------------^
[INFO] [stdout]      |   |
[INFO] [stdout]      |   rustdoc does not generate documentation for macro invocations
[INFO] [stdout]      |
[INFO] [stdout]      = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around function argument
[INFO] [stdout]    --> src/dsv41_vision.rs:382:20
[INFO] [stdout]     |
[INFO] [stdout] 382 |     f32::from_bits((bits.wrapping_add(round) & 0xffff_0000))
[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] 382 -     f32::from_bits((bits.wrapping_add(round) & 0xffff_0000))
[INFO] [stdout] 382 +     f32::from_bits(bits.wrapping_add(round) & 0xffff_0000)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `gelu_tanh`
[INFO] [stdout]   --> src/ltxte.rs:25:38
[INFO] [stdout]    |
[INFO] [stdout] 25 | use crate::ltxdit::{Attn, Lin, Rope, gelu_tanh, rms_plain, rows};
[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: `TensorDtype`
[INFO] [stdout]   --> src/qwen4_exp.rs:13:77
[INFO] [stdout]    |
[INFO] [stdout] 13 | use cortiq_core::{CmfError, CmfModel, LayerType, ModelArch, Qwen4ExpConfig, TensorDtype};
[INFO] [stdout]    |                                                                             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cortiq_core::TensorDtype`
[INFO] [stdout]   --> src/qwen_image_vision.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use cortiq_core::TensorDtype;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/vae3d.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | /// RMSNorm with NO affine — the decoder's q/k norms are weightless.
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]     |
[INFO] [stdout]     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute
[INFO] [stdout]   --> src/inference.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[inline]
[INFO] [stdout]    | ^^^^^^^^^ help: remove this attribute
[INFO] [stdout]    |
[INFO] [stdout] note: attribute also specified here
[INFO] [stdout]   --> src/inference.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout]  7 | #[inline(always)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute
[INFO] [stdout]   --> src/inference.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[inline]
[INFO] [stdout]    | ^^^^^^^^^ help: remove this attribute
[INFO] [stdout]    |
[INFO] [stdout] note: attribute also specified here
[INFO] [stdout]   --> src/inference.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout]  7 | #[inline(always)]
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `on_gpu`
[INFO] [stdout]     --> src/dsv4.rs:1509:9
[INFO] [stdout]      |
[INFO] [stdout] 1509 |     let on_gpu = gpu_attn_enabled() && !(split_config && past_chain);
[INFO] [stdout]      |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_on_gpu`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hc_dev`
[INFO] [stdout]     --> src/dsv4.rs:7577:9
[INFO] [stdout]      |
[INFO] [stdout] 7577 |     let hc_dev = false;
[INFO] [stdout]      |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hc_dev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_layers`
[INFO] [stdout]     --> src/dsv41.rs:2527:5
[INFO] [stdout]      |
[INFO] [stdout] 2527 |     n_layers: usize,
[INFO] [stdout]      |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_layers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]     --> src/dsv41.rs:2528:5
[INFO] [stdout]      |
[INFO] [stdout] 2528 |     state: &mut Dsv41State,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `stop` is never read
[INFO] [stdout]     --> src/dsv41_encoding.rs:1260:32
[INFO] [stdout]      |
[INFO] [stdout] 1260 |     let (mut index, reasoning, mut stop) = if mode == ThinkingMode::Thinking {
[INFO] [stdout]      |                                ^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 1287 |         stop = matched;
[INFO] [stdout]      |         ---- `stop` is overwritten here before the previous value is read
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `stop` is never read
[INFO] [stdout]     --> src/dsv41_encoding.rs:1287:9
[INFO] [stdout]      |
[INFO] [stdout] 1287 |         stop = matched;
[INFO] [stdout]      |         ^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]    --> src/dsv41_vision.rs:401:9
[INFO] [stdout]     |
[INFO] [stdout] 401 |     let p = config.vision_patch_size as u32;
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/fcd.rs:1133:13
[INFO] [stdout]      |
[INFO] [stdout] 1133 |         let mut fused = false;
[INFO] [stdout]      |             ----^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bias_cat`
[INFO] [stdout]     --> src/fcd.rs:1234:13
[INFO] [stdout]      |
[INFO] [stdout] 1234 |             bias_cat,
[INFO] [stdout]      |             ^^^^^^^^ help: try ignoring the field: `bias_cat: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/fcd.rs:1650:13
[INFO] [stdout]      |
[INFO] [stdout] 1650 |         let mut bwd_fused = false;
[INFO] [stdout]      |             ----^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]   --> src/f32_backend.rs:80:22
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub(crate) fn matvec(w: &[f32], x: &[f32], y: &mut [f32]) -> bool {
[INFO] [stdout]    |                      ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/f32_backend.rs:80:33
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub(crate) fn matvec(w: &[f32], x: &[f32], y: &mut [f32]) -> bool {
[INFO] [stdout]    |                                 ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> src/f32_backend.rs:80:44
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub(crate) fn matvec(w: &[f32], x: &[f32], y: &mut [f32]) -> bool {
[INFO] [stdout]    |                                            ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]    --> src/f32_backend.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     w: &[f32],
[INFO] [stdout]     |     ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/f32_backend.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 128 |     x: &[f32],
[INFO] [stdout]     |     ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch`
[INFO] [stdout]    --> src/f32_backend.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 129 |     batch: usize,
[INFO] [stdout]     |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_batch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]    --> src/f32_backend.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 130 |     rows: usize,
[INFO] [stdout]     |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]    --> src/f32_backend.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 131 |     cols: usize,
[INFO] [stdout]     |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]    --> src/f32_backend.rs:132:5
[INFO] [stdout]     |
[INFO] [stdout] 132 |     y: &mut [f32],
[INFO] [stdout]     |     ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]    --> src/gpu.rs:403:5
[INFO] [stdout]     |
[INFO] [stdout] 403 |     model: &Arc<CmfModel>,
[INFO] [stdout]     |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_layers`
[INFO] [stdout]    --> src/gpu.rs:404:5
[INFO] [stdout]     |
[INFO] [stdout] 404 |     num_layers: usize,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_layers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `physical_layers`
[INFO] [stdout]    --> src/gpu.rs:405:5
[INFO] [stdout]     |
[INFO] [stdout] 405 |     physical_layers: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_physical_layers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:1448:5
[INFO] [stdout]      |
[INFO] [stdout] 1448 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:1449:5
[INFO] [stdout]      |
[INFO] [stdout] 1449 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row_scale`
[INFO] [stdout]     --> src/gpu.rs:1450:5
[INFO] [stdout]      |
[INFO] [stdout] 1450 |     row_scale: &[f32],
[INFO] [stdout]      |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_row_scale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pre`
[INFO] [stdout]     --> src/gpu.rs:1451:5
[INFO] [stdout]      |
[INFO] [stdout] 1451 |     pre: &[f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_pre`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/gpu.rs:1452:5
[INFO] [stdout]      |
[INFO] [stdout] 1452 |     b: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:1453:5
[INFO] [stdout]      |
[INFO] [stdout] 1453 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:1454:5
[INFO] [stdout]      |
[INFO] [stdout] 1454 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:1455:5
[INFO] [stdout]      |
[INFO] [stdout] 1455 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:1493:5
[INFO] [stdout]      |
[INFO] [stdout] 1493 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kv_id`
[INFO] [stdout]     --> src/gpu.rs:1494:5
[INFO] [stdout]      |
[INFO] [stdout] 1494 |     kv_id: u64,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_kv_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `layer`
[INFO] [stdout]     --> src/gpu.rs:1495:5
[INFO] [stdout]      |
[INFO] [stdout] 1495 |     layer: usize,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_layer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `normed`
[INFO] [stdout]     --> src/gpu.rs:1496:5
[INFO] [stdout]      |
[INFO] [stdout] 1496 |     normed: &[f32],
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_normed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wq_idx`
[INFO] [stdout]     --> src/gpu.rs:1497:5
[INFO] [stdout]      |
[INFO] [stdout] 1497 |     wq_idx: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_wq_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wk_idx`
[INFO] [stdout]     --> src/gpu.rs:1498:5
[INFO] [stdout]      |
[INFO] [stdout] 1498 |     wk_idx: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_wk_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wv_idx`
[INFO] [stdout]     --> src/gpu.rs:1499:5
[INFO] [stdout]      |
[INFO] [stdout] 1499 |     wv_idx: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_wv_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wo_idx`
[INFO] [stdout]     --> src/gpu.rs:1500:5
[INFO] [stdout]      |
[INFO] [stdout] 1500 |     wo_idx: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_wo_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `q_norm`
[INFO] [stdout]     --> src/gpu.rs:1501:5
[INFO] [stdout]      |
[INFO] [stdout] 1501 |     q_norm: Option<&[f32]>,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_q_norm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k_norm`
[INFO] [stdout]     --> src/gpu.rs:1502:5
[INFO] [stdout]      |
[INFO] [stdout] 1502 |     k_norm: Option<&[f32]>,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_k_norm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `late_qk_norm`
[INFO] [stdout]     --> src/gpu.rs:1503:5
[INFO] [stdout]      |
[INFO] [stdout] 1503 |     late_qk_norm: bool,
[INFO] [stdout]      |     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_late_qk_norm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `invf`
[INFO] [stdout]     --> src/gpu.rs:1504:5
[INFO] [stdout]      |
[INFO] [stdout] 1504 |     invf: &[f32],
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_invf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nh`
[INFO] [stdout]     --> src/gpu.rs:1505:5
[INFO] [stdout]      |
[INFO] [stdout] 1505 |     nh: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nkv`
[INFO] [stdout]     --> src/gpu.rs:1506:5
[INFO] [stdout]      |
[INFO] [stdout] 1506 |     nkv: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_nkv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hd`
[INFO] [stdout]     --> src/gpu.rs:1507:5
[INFO] [stdout]      |
[INFO] [stdout] 1507 |     hd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_hd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rd`
[INFO] [stdout]     --> src/gpu.rs:1508:5
[INFO] [stdout]      |
[INFO] [stdout] 1508 |     rd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_rd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hidden`
[INFO] [stdout]     --> src/gpu.rs:1509:5
[INFO] [stdout]      |
[INFO] [stdout] 1509 |     hidden: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hidden`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pos`
[INFO] [stdout]     --> src/gpu.rs:1510:5
[INFO] [stdout]      |
[INFO] [stdout] 1510 |     pos: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cap`
[INFO] [stdout]     --> src/gpu.rs:1511:5
[INFO] [stdout]      |
[INFO] [stdout] 1511 |     cap: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_cap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gemma`
[INFO] [stdout]     --> src/gpu.rs:1512:5
[INFO] [stdout]      |
[INFO] [stdout] 1512 |     gemma: bool,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_gemma`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `eps`
[INFO] [stdout]     --> src/gpu.rs:1513:5
[INFO] [stdout]      |
[INFO] [stdout] 1513 |     eps: f32,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_eps`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu_k`
[INFO] [stdout]     --> src/gpu.rs:1514:5
[INFO] [stdout]      |
[INFO] [stdout] 1514 |     cpu_k: &[Vec<f32>],
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_cpu_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu_v`
[INFO] [stdout]     --> src/gpu.rs:1515:5
[INFO] [stdout]      |
[INFO] [stdout] 1515 |     cpu_v: &[Vec<f32>],
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_cpu_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:1516:5
[INFO] [stdout]      |
[INFO] [stdout] 1516 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:1760:5
[INFO] [stdout]      |
[INFO] [stdout] 1760 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kv_id`
[INFO] [stdout]     --> src/gpu.rs:1761:5
[INFO] [stdout]      |
[INFO] [stdout] 1761 |     kv_id: u64,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_kv_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `layers`
[INFO] [stdout]     --> src/gpu.rs:1762:5
[INFO] [stdout]      |
[INFO] [stdout] 1762 |     layers: &[GraphLayer],
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_layers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `o1`
[INFO] [stdout]     --> src/gpu.rs:1765:5
[INFO] [stdout]      |
[INFO] [stdout] 1765 |     o1: &[Option<Vec<crate::nystrom::O1DeviceView<'_>>>],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_o1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `o1_epoch`
[INFO] [stdout]     --> src/gpu.rs:1766:5
[INFO] [stdout]      |
[INFO] [stdout] 1766 |     o1_epoch: u64,
[INFO] [stdout]      |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_o1_epoch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `invf`
[INFO] [stdout]     --> src/gpu.rs:1767:5
[INFO] [stdout]      |
[INFO] [stdout] 1767 |     invf: &[f32],
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_invf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h`
[INFO] [stdout]     --> src/gpu.rs:1768:5
[INFO] [stdout]      |
[INFO] [stdout] 1768 |     h: &mut [f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nh`
[INFO] [stdout]     --> src/gpu.rs:1769:5
[INFO] [stdout]      |
[INFO] [stdout] 1769 |     nh: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nkv`
[INFO] [stdout]     --> src/gpu.rs:1770:5
[INFO] [stdout]      |
[INFO] [stdout] 1770 |     nkv: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_nkv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hd`
[INFO] [stdout]     --> src/gpu.rs:1771:5
[INFO] [stdout]      |
[INFO] [stdout] 1771 |     hd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_hd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rd`
[INFO] [stdout]     --> src/gpu.rs:1773:5
[INFO] [stdout]      |
[INFO] [stdout] 1773 |     rd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_rd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hidden`
[INFO] [stdout]     --> src/gpu.rs:1774:5
[INFO] [stdout]      |
[INFO] [stdout] 1774 |     hidden: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hidden`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inter`
[INFO] [stdout]     --> src/gpu.rs:1775:5
[INFO] [stdout]      |
[INFO] [stdout] 1775 |     inter: usize,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_inter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position`
[INFO] [stdout]     --> src/gpu.rs:1776:5
[INFO] [stdout]      |
[INFO] [stdout] 1776 |     position: usize,
[INFO] [stdout]      |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cap`
[INFO] [stdout]     --> src/gpu.rs:1777:5
[INFO] [stdout]      |
[INFO] [stdout] 1777 |     cap: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_cap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gemma`
[INFO] [stdout]     --> src/gpu.rs:1778:5
[INFO] [stdout]      |
[INFO] [stdout] 1778 |     gemma: bool,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_gemma`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `eps`
[INFO] [stdout]     --> src/gpu.rs:1779:5
[INFO] [stdout]      |
[INFO] [stdout] 1779 |     eps: f32,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_eps`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `steps`
[INFO] [stdout]     --> src/gpu.rs:1784:5
[INFO] [stdout]      |
[INFO] [stdout] 1784 |     steps: usize,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_steps`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `embed`
[INFO] [stdout]     --> src/gpu.rs:1785:5
[INFO] [stdout]      |
[INFO] [stdout] 1785 |     embed: Option<(&GraphW, usize, f32)>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_embed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ids_out`
[INFO] [stdout]     --> src/gpu.rs:1786:5
[INFO] [stdout]      |
[INFO] [stdout] 1786 |     ids_out: Option<&mut Vec<u32>>,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ids_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:1971:5
[INFO] [stdout]      |
[INFO] [stdout] 1971 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kv_id`
[INFO] [stdout]     --> src/gpu.rs:1972:5
[INFO] [stdout]      |
[INFO] [stdout] 1972 |     kv_id: u64,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_kv_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `layer_base`
[INFO] [stdout]     --> src/gpu.rs:1973:5
[INFO] [stdout]      |
[INFO] [stdout] 1973 |     layer_base: usize,
[INFO] [stdout]      |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_layer_base`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `layers`
[INFO] [stdout]     --> src/gpu.rs:1974:5
[INFO] [stdout]      |
[INFO] [stdout] 1974 |     layers: &[GraphLayer],
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_layers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `invf`
[INFO] [stdout]     --> src/gpu.rs:1975:5
[INFO] [stdout]      |
[INFO] [stdout] 1975 |     invf: &[f32],
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_invf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h`
[INFO] [stdout]     --> src/gpu.rs:1976:5
[INFO] [stdout]      |
[INFO] [stdout] 1976 |     h: &mut [f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nh`
[INFO] [stdout]     --> src/gpu.rs:1977:5
[INFO] [stdout]      |
[INFO] [stdout] 1977 |     nh: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nkv`
[INFO] [stdout]     --> src/gpu.rs:1978:5
[INFO] [stdout]      |
[INFO] [stdout] 1978 |     nkv: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_nkv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hd`
[INFO] [stdout]     --> src/gpu.rs:1979:5
[INFO] [stdout]      |
[INFO] [stdout] 1979 |     hd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_hd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rd`
[INFO] [stdout]     --> src/gpu.rs:1980:5
[INFO] [stdout]      |
[INFO] [stdout] 1980 |     rd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_rd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hidden`
[INFO] [stdout]     --> src/gpu.rs:1981:5
[INFO] [stdout]      |
[INFO] [stdout] 1981 |     hidden: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hidden`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inter`
[INFO] [stdout]     --> src/gpu.rs:1982:5
[INFO] [stdout]      |
[INFO] [stdout] 1982 |     inter: usize,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_inter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `positions`
[INFO] [stdout]     --> src/gpu.rs:1983:5
[INFO] [stdout]      |
[INFO] [stdout] 1983 |     positions: &[usize],
[INFO] [stdout]      |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_positions`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cap`
[INFO] [stdout]     --> src/gpu.rs:1984:5
[INFO] [stdout]      |
[INFO] [stdout] 1984 |     cap: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_cap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gemma`
[INFO] [stdout]     --> src/gpu.rs:1985:5
[INFO] [stdout]      |
[INFO] [stdout] 1985 |     gemma: bool,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_gemma`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `eps`
[INFO] [stdout]     --> src/gpu.rs:1986:5
[INFO] [stdout]      |
[INFO] [stdout] 1986 |     eps: f32,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_eps`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `attn_scale`
[INFO] [stdout]     --> src/gpu.rs:1987:5
[INFO] [stdout]      |
[INFO] [stdout] 1987 |     attn_scale: f32,
[INFO] [stdout]      |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attn_scale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]     --> src/gpu.rs:1988:5
[INFO] [stdout]      |
[INFO] [stdout] 1988 |     k: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kv_id`
[INFO] [stdout]     --> src/gpu.rs:2036:28
[INFO] [stdout]      |
[INFO] [stdout] 2036 | pub fn graph_kv_set_stored(kv_id: u64, layer: usize, stored: usize) -> bool {
[INFO] [stdout]      |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_kv_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `layer`
[INFO] [stdout]     --> src/gpu.rs:2036:40
[INFO] [stdout]      |
[INFO] [stdout] 2036 | pub fn graph_kv_set_stored(kv_id: u64, layer: usize, stored: usize) -> bool {
[INFO] [stdout]      |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_layer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stored`
[INFO] [stdout]     --> src/gpu.rs:2036:54
[INFO] [stdout]      |
[INFO] [stdout] 2036 | pub fn graph_kv_set_stored(kv_id: u64, layer: usize, stored: usize) -> bool {
[INFO] [stdout]      |                                                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stored`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:2119:5
[INFO] [stdout]      |
[INFO] [stdout] 2119 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:2120:5
[INFO] [stdout]      |
[INFO] [stdout] 2120 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:2121:5
[INFO] [stdout]      |
[INFO] [stdout] 2121 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:2122:5
[INFO] [stdout]      |
[INFO] [stdout] 2122 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:2123:5
[INFO] [stdout]      |
[INFO] [stdout] 2123 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:2124:5
[INFO] [stdout]      |
[INFO] [stdout] 2124 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:2164:5
[INFO] [stdout]      |
[INFO] [stdout] 2164 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:2165:5
[INFO] [stdout]      |
[INFO] [stdout] 2165 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:2166:5
[INFO] [stdout]      |
[INFO] [stdout] 2166 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/gpu.rs:2167:5
[INFO] [stdout]      |
[INFO] [stdout] 2167 |     b: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:2168:5
[INFO] [stdout]      |
[INFO] [stdout] 2168 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:2169:5
[INFO] [stdout]      |
[INFO] [stdout] 2169 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:2170:5
[INFO] [stdout]      |
[INFO] [stdout] 2170 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:2196:5
[INFO] [stdout]      |
[INFO] [stdout] 2196 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:2197:5
[INFO] [stdout]      |
[INFO] [stdout] 2197 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:2198:5
[INFO] [stdout]      |
[INFO] [stdout] 2198 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/gpu.rs:2199:5
[INFO] [stdout]      |
[INFO] [stdout] 2199 |     b: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:2200:5
[INFO] [stdout]      |
[INFO] [stdout] 2200 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:2201:5
[INFO] [stdout]      |
[INFO] [stdout] 2201 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:2202:5
[INFO] [stdout]      |
[INFO] [stdout] 2202 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:2642:5
[INFO] [stdout]      |
[INFO] [stdout] 2642 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w1`
[INFO] [stdout]     --> src/gpu.rs:2643:5
[INFO] [stdout]      |
[INFO] [stdout] 2643 |     w1: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_w1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w3`
[INFO] [stdout]     --> src/gpu.rs:2644:5
[INFO] [stdout]      |
[INFO] [stdout] 2644 |     w3: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_w3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w2`
[INFO] [stdout]     --> src/gpu.rs:2645:5
[INFO] [stdout]      |
[INFO] [stdout] 2645 |     w2: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_w2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:2646:5
[INFO] [stdout]      |
[INFO] [stdout] 2646 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/gpu.rs:2647:5
[INFO] [stdout]      |
[INFO] [stdout] 2647 |     b: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hidden`
[INFO] [stdout]     --> src/gpu.rs:2648:5
[INFO] [stdout]      |
[INFO] [stdout] 2648 |     hidden: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hidden`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inter`
[INFO] [stdout]     --> src/gpu.rs:2649:5
[INFO] [stdout]      |
[INFO] [stdout] 2649 |     inter: usize,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_inter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:2650:5
[INFO] [stdout]      |
[INFO] [stdout] 2650 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:2767:5
[INFO] [stdout]      |
[INFO] [stdout] 2767 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w1`
[INFO] [stdout]     --> src/gpu.rs:2768:5
[INFO] [stdout]      |
[INFO] [stdout] 2768 |     w1: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_w1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w3`
[INFO] [stdout]     --> src/gpu.rs:2769:5
[INFO] [stdout]      |
[INFO] [stdout] 2769 |     w3: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_w3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w2`
[INFO] [stdout]     --> src/gpu.rs:2770:5
[INFO] [stdout]      |
[INFO] [stdout] 2770 |     w2: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_w2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:2771:5
[INFO] [stdout]      |
[INFO] [stdout] 2771 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/gpu.rs:2772:5
[INFO] [stdout]      |
[INFO] [stdout] 2772 |     b: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hidden`
[INFO] [stdout]     --> src/gpu.rs:2773:5
[INFO] [stdout]      |
[INFO] [stdout] 2773 |     hidden: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hidden`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inter`
[INFO] [stdout]     --> src/gpu.rs:2774:5
[INFO] [stdout]      |
[INFO] [stdout] 2774 |     inter: usize,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_inter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:2775:5
[INFO] [stdout]      |
[INFO] [stdout] 2775 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3142:5
[INFO] [stdout]      |
[INFO] [stdout] 3142 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]     --> src/gpu.rs:3143:5
[INFO] [stdout]      |
[INFO] [stdout] 3143 |     a: &DitBlockArgs,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `segs`
[INFO] [stdout]     --> src/gpu.rs:3144:5
[INFO] [stdout]      |
[INFO] [stdout] 3144 |     segs: &[usize],
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_segs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]     --> src/gpu.rs:3145:5
[INFO] [stdout]      |
[INFO] [stdout] 3145 |     x: &mut [f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3290:5
[INFO] [stdout]      |
[INFO] [stdout] 3290 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `qkv_idx`
[INFO] [stdout]     --> src/gpu.rs:3291:5
[INFO] [stdout]      |
[INFO] [stdout] 3291 |     qkv_idx: usize,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_qkv_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out_idx`
[INFO] [stdout]     --> src/gpu.rs:3292:5
[INFO] [stdout]      |
[INFO] [stdout] 3292 |     out_idx: usize,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_out_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xn`
[INFO] [stdout]     --> src/gpu.rs:3293:5
[INFO] [stdout]      |
[INFO] [stdout] 3293 |     xn: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]     --> src/gpu.rs:3294:5
[INFO] [stdout]      |
[INFO] [stdout] 3294 |     n: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hidden`
[INFO] [stdout]     --> src/gpu.rs:3295:5
[INFO] [stdout]      |
[INFO] [stdout] 3295 |     hidden: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hidden`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nh`
[INFO] [stdout]     --> src/gpu.rs:3296:5
[INFO] [stdout]      |
[INFO] [stdout] 3296 |     nh: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hd`
[INFO] [stdout]     --> src/gpu.rs:3297:5
[INFO] [stdout]      |
[INFO] [stdout] 3297 |     hd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_hd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scale`
[INFO] [stdout]     --> src/gpu.rs:3298:5
[INFO] [stdout]      |
[INFO] [stdout] 3298 |     scale: f32,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_scale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nr`
[INFO] [stdout]     --> src/gpu.rs:3299:5
[INFO] [stdout]      |
[INFO] [stdout] 3299 |     nr: (&[f32], &[f32], &[f32], f32),
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proj`
[INFO] [stdout]     --> src/gpu.rs:3300:5
[INFO] [stdout]      |
[INFO] [stdout] 3300 |     proj: &mut [f32],
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_proj`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3315:5
[INFO] [stdout]      |
[INFO] [stdout] 3315 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `qkv_idx`
[INFO] [stdout]     --> src/gpu.rs:3316:5
[INFO] [stdout]      |
[INFO] [stdout] 3316 |     qkv_idx: usize,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_qkv_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out_idx`
[INFO] [stdout]     --> src/gpu.rs:3317:5
[INFO] [stdout]      |
[INFO] [stdout] 3317 |     out_idx: usize,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_out_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xn`
[INFO] [stdout]     --> src/gpu.rs:3318:5
[INFO] [stdout]      |
[INFO] [stdout] 3318 |     xn: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]     --> src/gpu.rs:3319:5
[INFO] [stdout]      |
[INFO] [stdout] 3319 |     n: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dim`
[INFO] [stdout]     --> src/gpu.rs:3320:5
[INFO] [stdout]      |
[INFO] [stdout] 3320 |     dim: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_dim`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nh`
[INFO] [stdout]     --> src/gpu.rs:3321:5
[INFO] [stdout]      |
[INFO] [stdout] 3321 |     nh: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hd`
[INFO] [stdout]     --> src/gpu.rs:3322:5
[INFO] [stdout]      |
[INFO] [stdout] 3322 |     hd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_hd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scale`
[INFO] [stdout]     --> src/gpu.rs:3323:5
[INFO] [stdout]      |
[INFO] [stdout] 3323 |     scale: f32,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_scale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `angles`
[INFO] [stdout]     --> src/gpu.rs:3324:5
[INFO] [stdout]      |
[INFO] [stdout] 3324 |     angles: &[f32],
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_angles`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `eps`
[INFO] [stdout]     --> src/gpu.rs:3325:5
[INFO] [stdout]      |
[INFO] [stdout] 3325 |     eps: f32,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_eps`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `qkv_bias`
[INFO] [stdout]     --> src/gpu.rs:3326:5
[INFO] [stdout]      |
[INFO] [stdout] 3326 |     qkv_bias: &[f32],
[INFO] [stdout]      |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_qkv_bias`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proj`
[INFO] [stdout]     --> src/gpu.rs:3327:5
[INFO] [stdout]      |
[INFO] [stdout] 3327 |     proj: &mut [f32],
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_proj`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `qkv`
[INFO] [stdout]     --> src/gpu.rs:3355:5
[INFO] [stdout]      |
[INFO] [stdout] 3355 |     qkv: &[f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_qkv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nh`
[INFO] [stdout]     --> src/gpu.rs:3356:5
[INFO] [stdout]      |
[INFO] [stdout] 3356 |     nh: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]     --> src/gpu.rs:3357:5
[INFO] [stdout]      |
[INFO] [stdout] 3357 |     n: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hd`
[INFO] [stdout]     --> src/gpu.rs:3358:5
[INFO] [stdout]      |
[INFO] [stdout] 3358 |     hd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_hd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scale`
[INFO] [stdout]     --> src/gpu.rs:3359:5
[INFO] [stdout]      |
[INFO] [stdout] 3359 |     scale: f32,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_scale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `angles`
[INFO] [stdout]     --> src/gpu.rs:3360:5
[INFO] [stdout]      |
[INFO] [stdout] 3360 |     angles: &[f32],
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_angles`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `eps`
[INFO] [stdout]     --> src/gpu.rs:3361:5
[INFO] [stdout]      |
[INFO] [stdout] 3361 |     eps: f32,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_eps`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3362:5
[INFO] [stdout]      |
[INFO] [stdout] 3362 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `layout`
[INFO] [stdout]     --> src/gpu.rs:3363:5
[INFO] [stdout]      |
[INFO] [stdout] 3363 |     layout: u32,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_layout`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `qkv`
[INFO] [stdout]     --> src/gpu.rs:3377:5
[INFO] [stdout]      |
[INFO] [stdout] 3377 |     qkv: &[f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_qkv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nh`
[INFO] [stdout]     --> src/gpu.rs:3378:5
[INFO] [stdout]      |
[INFO] [stdout] 3378 |     nh: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]     --> src/gpu.rs:3379:5
[INFO] [stdout]      |
[INFO] [stdout] 3379 |     n: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hd`
[INFO] [stdout]     --> src/gpu.rs:3380:5
[INFO] [stdout]      |
[INFO] [stdout] 3380 |     hd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_hd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `layout`
[INFO] [stdout]     --> src/gpu.rs:3381:5
[INFO] [stdout]      |
[INFO] [stdout] 3381 |     layout: u32,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_layout`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `norm`
[INFO] [stdout]     --> src/gpu.rs:3382:5
[INFO] [stdout]      |
[INFO] [stdout] 3382 |     norm: Option<(&[f32], f32)>,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_norm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out_q`
[INFO] [stdout]     --> src/gpu.rs:3383:5
[INFO] [stdout]      |
[INFO] [stdout] 3383 |     out_q: &mut [f32],
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_out_q`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]     --> src/gpu.rs:3401:5
[INFO] [stdout]      |
[INFO] [stdout] 3401 |     x: &[f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]     --> src/gpu.rs:3402:5
[INFO] [stdout]      |
[INFO] [stdout] 3402 |     w: &[f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]     --> src/gpu.rs:3403:5
[INFO] [stdout]      |
[INFO] [stdout] 3403 |     y: &mut [f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]     --> src/gpu.rs:3404:5
[INFO] [stdout]      |
[INFO] [stdout] 3404 |     n: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]     --> src/gpu.rs:3405:5
[INFO] [stdout]      |
[INFO] [stdout] 3405 |     k: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `m`
[INFO] [stdout]     --> src/gpu.rs:3406:5
[INFO] [stdout]      |
[INFO] [stdout] 3406 |     m: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_m`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]     --> src/gpu.rs:3416:20
[INFO] [stdout]      |
[INFO] [stdout] 3416 | pub fn gemm_nt_f32(x: &[f32], w: &[f32], y: &mut [f32], n: usize, k: usize, m: usize) -> bool {
[INFO] [stdout]      |                    ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]     --> src/gpu.rs:3416:31
[INFO] [stdout]      |
[INFO] [stdout] 3416 | pub fn gemm_nt_f32(x: &[f32], w: &[f32], y: &mut [f32], n: usize, k: usize, m: usize) -> bool {
[INFO] [stdout]      |                               ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]     --> src/gpu.rs:3416:42
[INFO] [stdout]      |
[INFO] [stdout] 3416 | pub fn gemm_nt_f32(x: &[f32], w: &[f32], y: &mut [f32], n: usize, k: usize, m: usize) -> bool {
[INFO] [stdout]      |                                          ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]     --> src/gpu.rs:3416:57
[INFO] [stdout]      |
[INFO] [stdout] 3416 | pub fn gemm_nt_f32(x: &[f32], w: &[f32], y: &mut [f32], n: usize, k: usize, m: usize) -> bool {
[INFO] [stdout]      |                                                         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]     --> src/gpu.rs:3416:67
[INFO] [stdout]      |
[INFO] [stdout] 3416 | pub fn gemm_nt_f32(x: &[f32], w: &[f32], y: &mut [f32], n: usize, k: usize, m: usize) -> bool {
[INFO] [stdout]      |                                                                   ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `m`
[INFO] [stdout]     --> src/gpu.rs:3416:77
[INFO] [stdout]      |
[INFO] [stdout] 3416 | pub fn gemm_nt_f32(x: &[f32], w: &[f32], y: &mut [f32], n: usize, k: usize, m: usize) -> bool {
[INFO] [stdout]      |                                                                             ^ help: if this is intentional, prefix it with an underscore: `_m`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3429:5
[INFO] [stdout]      |
[INFO] [stdout] 3429 |     model: &std::sync::Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx_in`
[INFO] [stdout]     --> src/gpu.rs:3430:5
[INFO] [stdout]      |
[INFO] [stdout] 3430 |     idx_in: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_idx_in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx_out`
[INFO] [stdout]     --> src/gpu.rs:3431:5
[INFO] [stdout]      |
[INFO] [stdout] 3431 |     idx_out: usize,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_idx_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h`
[INFO] [stdout]     --> src/gpu.rs:3432:5
[INFO] [stdout]      |
[INFO] [stdout] 3432 |     h: &[f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bias_in`
[INFO] [stdout]     --> src/gpu.rs:3433:5
[INFO] [stdout]      |
[INFO] [stdout] 3433 |     bias_in: &[f32],
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bias_in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]     --> src/gpu.rs:3434:5
[INFO] [stdout]      |
[INFO] [stdout] 3434 |     n: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hs`
[INFO] [stdout]     --> src/gpu.rs:3435:5
[INFO] [stdout]      |
[INFO] [stdout] 3435 |     hs: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_hs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inter`
[INFO] [stdout]     --> src/gpu.rs:3436:5
[INFO] [stdout]      |
[INFO] [stdout] 3436 |     inter: usize,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_inter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3437:5
[INFO] [stdout]      |
[INFO] [stdout] 3437 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]     --> src/gpu.rs:3454:5
[INFO] [stdout]      |
[INFO] [stdout] 3454 |     x: &[f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]     --> src/gpu.rs:3455:5
[INFO] [stdout]      |
[INFO] [stdout] 3455 |     w: &[f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ic`
[INFO] [stdout]     --> src/gpu.rs:3456:5
[INFO] [stdout]      |
[INFO] [stdout] 3456 |     ic: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_ic`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `oc`
[INFO] [stdout]     --> src/gpu.rs:3457:5
[INFO] [stdout]      |
[INFO] [stdout] 3457 |     oc: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_oc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]     --> src/gpu.rs:3458:5
[INFO] [stdout]      |
[INFO] [stdout] 3458 |     n: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]     --> src/gpu.rs:3459:5
[INFO] [stdout]      |
[INFO] [stdout] 3459 |     k: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pad`
[INFO] [stdout]     --> src/gpu.rs:3460:5
[INFO] [stdout]      |
[INFO] [stdout] 3460 |     pad: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_pad`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dil`
[INFO] [stdout]     --> src/gpu.rs:3461:5
[INFO] [stdout]      |
[INFO] [stdout] 3461 |     dil: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_dil`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out_n`
[INFO] [stdout]     --> src/gpu.rs:3462:5
[INFO] [stdout]      |
[INFO] [stdout] 3462 |     out_n: usize,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_out_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `yt`
[INFO] [stdout]     --> src/gpu.rs:3463:5
[INFO] [stdout]      |
[INFO] [stdout] 3463 |     yt: &mut [f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_yt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]     --> src/gpu.rs:3478:5
[INFO] [stdout]      |
[INFO] [stdout] 3478 |     w: &[f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bias`
[INFO] [stdout]     --> src/gpu.rs:3479:5
[INFO] [stdout]      |
[INFO] [stdout] 3479 |     bias: Option<&[f32]>,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_bias`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]     --> src/gpu.rs:3480:5
[INFO] [stdout]      |
[INFO] [stdout] 3480 |     x: &[f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ic`
[INFO] [stdout]     --> src/gpu.rs:3481:5
[INFO] [stdout]      |
[INFO] [stdout] 3481 |     ic: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_ic`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `oc`
[INFO] [stdout]     --> src/gpu.rs:3482:5
[INFO] [stdout]      |
[INFO] [stdout] 3482 |     oc: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_oc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h`
[INFO] [stdout]     --> src/gpu.rs:3483:5
[INFO] [stdout]      |
[INFO] [stdout] 3483 |     h: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wi`
[INFO] [stdout]     --> src/gpu.rs:3484:5
[INFO] [stdout]      |
[INFO] [stdout] 3484 |     wi: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_wi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]     --> src/gpu.rs:3485:5
[INFO] [stdout]      |
[INFO] [stdout] 3485 |     k: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3486:5
[INFO] [stdout]      |
[INFO] [stdout] 3486 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `qkv`
[INFO] [stdout]     --> src/gpu.rs:3497:5
[INFO] [stdout]      |
[INFO] [stdout] 3497 |     qkv: &[f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_qkv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nh`
[INFO] [stdout]     --> src/gpu.rs:3498:5
[INFO] [stdout]      |
[INFO] [stdout] 3498 |     nh: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]     --> src/gpu.rs:3499:5
[INFO] [stdout]      |
[INFO] [stdout] 3499 |     n: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hd`
[INFO] [stdout]     --> src/gpu.rs:3500:5
[INFO] [stdout]      |
[INFO] [stdout] 3500 |     hd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_hd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scale`
[INFO] [stdout]     --> src/gpu.rs:3501:5
[INFO] [stdout]      |
[INFO] [stdout] 3501 |     scale: f32,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_scale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nr`
[INFO] [stdout]     --> src/gpu.rs:3504:5
[INFO] [stdout]      |
[INFO] [stdout] 3504 |     nr: Option<(&[f32], &[f32], &[f32], f32)>,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3505:5
[INFO] [stdout]      |
[INFO] [stdout] 3505 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `qh`
[INFO] [stdout]     --> src/gpu.rs:3538:5
[INFO] [stdout]      |
[INFO] [stdout] 3538 |     qh: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_qh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kh`
[INFO] [stdout]     --> src/gpu.rs:3539:5
[INFO] [stdout]      |
[INFO] [stdout] 3539 |     kh: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_kh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vh`
[INFO] [stdout]     --> src/gpu.rs:3540:5
[INFO] [stdout]      |
[INFO] [stdout] 3540 |     vh: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_vh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nh`
[INFO] [stdout]     --> src/gpu.rs:3541:5
[INFO] [stdout]      |
[INFO] [stdout] 3541 |     nh: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nkv`
[INFO] [stdout]     --> src/gpu.rs:3542:5
[INFO] [stdout]      |
[INFO] [stdout] 3542 |     nkv: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_nkv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]     --> src/gpu.rs:3543:5
[INFO] [stdout]      |
[INFO] [stdout] 3543 |     n: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hd`
[INFO] [stdout]     --> src/gpu.rs:3544:5
[INFO] [stdout]      |
[INFO] [stdout] 3544 |     hd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_hd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scale`
[INFO] [stdout]     --> src/gpu.rs:3545:5
[INFO] [stdout]      |
[INFO] [stdout] 3545 |     scale: f32,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_scale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3546:5
[INFO] [stdout]      |
[INFO] [stdout] 3546 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3585:5
[INFO] [stdout]      |
[INFO] [stdout] 3585 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:3586:5
[INFO] [stdout]      |
[INFO] [stdout] 3586 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:3587:5
[INFO] [stdout]      |
[INFO] [stdout] 3587 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/gpu.rs:3588:5
[INFO] [stdout]      |
[INFO] [stdout] 3588 |     b: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:3589:5
[INFO] [stdout]      |
[INFO] [stdout] 3589 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:3590:5
[INFO] [stdout]      |
[INFO] [stdout] 3590 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3591:5
[INFO] [stdout]      |
[INFO] [stdout] 3591 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3606:5
[INFO] [stdout]      |
[INFO] [stdout] 3606 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:3607:5
[INFO] [stdout]      |
[INFO] [stdout] 3607 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:3608:5
[INFO] [stdout]      |
[INFO] [stdout] 3608 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/gpu.rs:3609:5
[INFO] [stdout]      |
[INFO] [stdout] 3609 |     b: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:3610:5
[INFO] [stdout]      |
[INFO] [stdout] 3610 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:3611:5
[INFO] [stdout]      |
[INFO] [stdout] 3611 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3612:5
[INFO] [stdout]      |
[INFO] [stdout] 3612 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3626:5
[INFO] [stdout]      |
[INFO] [stdout] 3626 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:3627:5
[INFO] [stdout]      |
[INFO] [stdout] 3627 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:3628:5
[INFO] [stdout]      |
[INFO] [stdout] 3628 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:3629:5
[INFO] [stdout]      |
[INFO] [stdout] 3629 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:3630:5
[INFO] [stdout]      |
[INFO] [stdout] 3630 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3631:5
[INFO] [stdout]      |
[INFO] [stdout] 3631 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3647:5
[INFO] [stdout]      |
[INFO] [stdout] 3647 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:3648:5
[INFO] [stdout]      |
[INFO] [stdout] 3648 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:3649:5
[INFO] [stdout]      |
[INFO] [stdout] 3649 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:3650:5
[INFO] [stdout]      |
[INFO] [stdout] 3650 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:3651:5
[INFO] [stdout]      |
[INFO] [stdout] 3651 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3652:5
[INFO] [stdout]      |
[INFO] [stdout] 3652 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3669:5
[INFO] [stdout]      |
[INFO] [stdout] 3669 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:3670:5
[INFO] [stdout]      |
[INFO] [stdout] 3670 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:3671:5
[INFO] [stdout]      |
[INFO] [stdout] 3671 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:3672:5
[INFO] [stdout]      |
[INFO] [stdout] 3672 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:3673:5
[INFO] [stdout]      |
[INFO] [stdout] 3673 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3674:5
[INFO] [stdout]      |
[INFO] [stdout] 3674 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3692:5
[INFO] [stdout]      |
[INFO] [stdout] 3692 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:3693:5
[INFO] [stdout]      |
[INFO] [stdout] 3693 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:3694:5
[INFO] [stdout]      |
[INFO] [stdout] 3694 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:3695:5
[INFO] [stdout]      |
[INFO] [stdout] 3695 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:3696:5
[INFO] [stdout]      |
[INFO] [stdout] 3696 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3697:5
[INFO] [stdout]      |
[INFO] [stdout] 3697 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3708:5
[INFO] [stdout]      |
[INFO] [stdout] 3708 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:3709:5
[INFO] [stdout]      |
[INFO] [stdout] 3709 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:3710:5
[INFO] [stdout]      |
[INFO] [stdout] 3710 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/gpu.rs:3711:5
[INFO] [stdout]      |
[INFO] [stdout] 3711 |     b: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:3712:5
[INFO] [stdout]      |
[INFO] [stdout] 3712 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:3713:5
[INFO] [stdout]      |
[INFO] [stdout] 3713 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3714:5
[INFO] [stdout]      |
[INFO] [stdout] 3714 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/gpu.rs:4094:9
[INFO] [stdout]      |
[INFO] [stdout] 4094 |     let mut total = 0u64;
[INFO] [stdout]      |         ----^^^^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `npos`
[INFO] [stdout]     --> src/ltxaudio.rs:1218:13
[INFO] [stdout]      |
[INFO] [stdout] 1218 |         let npos = out.n();
[INFO] [stdout]      |             ^^^^ help: if this is intentional, prefix it with an underscore: `_npos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sh`
[INFO] [stdout]    --> src/ltxenc.rs:190:18
[INFO] [stdout]     |
[INFO] [stdout] 190 |         let (sf, sh, sw) = self.stride;
[INFO] [stdout]     |                  ^^ help: if this is intentional, prefix it with an underscore: `_sh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sw`
[INFO] [stdout]    --> src/ltxenc.rs:190:22
[INFO] [stdout]     |
[INFO] [stdout] 190 |         let (sf, sh, sw) = self.stride;
[INFO] [stdout]     |                      ^^ help: if this is intentional, prefix it with an underscore: `_sw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/mmh3.rs:873:25
[INFO] [stdout]     |
[INFO] [stdout] 873 |                     let mut take = |suffix: &str, p: &Proj| -> Result<Option<LoraBranch>, String> {
[INFO] [stdout]     |                         ----^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/pipeline.rs:4214:13
[INFO] [stdout]      |
[INFO] [stdout] 4214 |         let mut dsv4_spec_bad = 0usize;
[INFO] [stdout]      |             ----^^^^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/pipeline.rs:4215:13
[INFO] [stdout]      |
[INFO] [stdout] 4215 |         let mut dsv4_spec_retry_at = 0usize;
[INFO] [stdout]      |             ----^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/pipeline.rs:5012:13
[INFO] [stdout]      |
[INFO] [stdout] 5012 |         let mut spec_walls: Vec<f32> = Vec::new();
[INFO] [stdout]      |             ----^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/pipeline.rs:5015:13
[INFO] [stdout]      |
[INFO] [stdout] 5015 |         let mut spec_round_end: Option<std::time::Instant> = None;
[INFO] [stdout]      |             ----^^^^^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dsv4_spec_bad`
[INFO] [stdout]     --> src/pipeline.rs:4214:13
[INFO] [stdout]      |
[INFO] [stdout] 4214 |         let mut dsv4_spec_bad = 0usize;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dsv4_spec_bad`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dsv4_spec_retry_at`
[INFO] [stdout]     --> src/pipeline.rs:4215:13
[INFO] [stdout]      |
[INFO] [stdout] 4215 |         let mut dsv4_spec_retry_at = 0usize;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dsv4_spec_retry_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `spec_watchdog_off` is assigned to, but never used
[INFO] [stdout]     --> src/pipeline.rs:5009:13
[INFO] [stdout]      |
[INFO] [stdout] 5009 |         let mut spec_watchdog_off = false;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_spec_watchdog_off` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `spec_walls`
[INFO] [stdout]     --> src/pipeline.rs:5012:13
[INFO] [stdout]      |
[INFO] [stdout] 5012 |         let mut spec_walls: Vec<f32> = Vec::new();
[INFO] [stdout]      |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_spec_walls`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `spec_round_end`
[INFO] [stdout]     --> src/pipeline.rs:5015:13
[INFO] [stdout]      |
[INFO] [stdout] 5015 |         let mut spec_round_end: Option<std::time::Instant> = None;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_spec_round_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `spec_watchdog_off` is never read
[INFO] [stdout]     --> src/pipeline.rs:5207:17
[INFO] [stdout]      |
[INFO] [stdout] 5207 | /                 spec_watchdog_off = matches!(
[INFO] [stdout] 5208 | |                     spec_trial,
[INFO] [stdout] 5209 | |                     SpecTrial::Plain { .. } | SpecTrial::Decided { spec: false, .. }
[INFO] [stdout] 5210 | |                 );
[INFO] [stdout]      | |_________________^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `on_gpu`
[INFO] [stdout]     --> src/dsv4.rs:1509:9
[INFO] [stdout]      |
[INFO] [stdout] 1509 |     let on_gpu = gpu_attn_enabled() && !(split_config && past_chain);
[INFO] [stdout]      |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_on_gpu`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hc_dev`
[INFO] [stdout]     --> src/dsv4.rs:7577:9
[INFO] [stdout]      |
[INFO] [stdout] 7577 |     let hc_dev = false;
[INFO] [stdout]      |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hc_dev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_layers`
[INFO] [stdout]     --> src/dsv41.rs:2527:5
[INFO] [stdout]      |
[INFO] [stdout] 2527 |     n_layers: usize,
[INFO] [stdout]      |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_layers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state`
[INFO] [stdout]     --> src/dsv41.rs:2528:5
[INFO] [stdout]      |
[INFO] [stdout] 2528 |     state: &mut Dsv41State,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `stop` is never read
[INFO] [stdout]     --> src/dsv41_encoding.rs:1260:32
[INFO] [stdout]      |
[INFO] [stdout] 1260 |     let (mut index, reasoning, mut stop) = if mode == ThinkingMode::Thinking {
[INFO] [stdout]      |                                ^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 1287 |         stop = matched;
[INFO] [stdout]      |         ---- `stop` is overwritten here before the previous value is read
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `stop` is never read
[INFO] [stdout]     --> src/dsv41_encoding.rs:1287:9
[INFO] [stdout]      |
[INFO] [stdout] 1287 |         stop = matched;
[INFO] [stdout]      |         ^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p`
[INFO] [stdout]    --> src/dsv41_vision.rs:401:9
[INFO] [stdout]     |
[INFO] [stdout] 401 |     let p = config.vision_patch_size as u32;
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_p`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/fcd.rs:1133:13
[INFO] [stdout]      |
[INFO] [stdout] 1133 |         let mut fused = false;
[INFO] [stdout]      |             ----^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bias_cat`
[INFO] [stdout]     --> src/fcd.rs:1234:13
[INFO] [stdout]      |
[INFO] [stdout] 1234 |             bias_cat,
[INFO] [stdout]      |             ^^^^^^^^ help: try ignoring the field: `bias_cat: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/fcd.rs:1650:13
[INFO] [stdout]      |
[INFO] [stdout] 1650 |         let mut bwd_fused = false;
[INFO] [stdout]      |             ----^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]   --> src/f32_backend.rs:80:22
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub(crate) fn matvec(w: &[f32], x: &[f32], y: &mut [f32]) -> bool {
[INFO] [stdout]    |                      ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/f32_backend.rs:80:33
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub(crate) fn matvec(w: &[f32], x: &[f32], y: &mut [f32]) -> bool {
[INFO] [stdout]    |                                 ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]   --> src/f32_backend.rs:80:44
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub(crate) fn matvec(w: &[f32], x: &[f32], y: &mut [f32]) -> bool {
[INFO] [stdout]    |                                            ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]    --> src/f32_backend.rs:127:5
[INFO] [stdout]     |
[INFO] [stdout] 127 |     w: &[f32],
[INFO] [stdout]     |     ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/f32_backend.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 128 |     x: &[f32],
[INFO] [stdout]     |     ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch`
[INFO] [stdout]    --> src/f32_backend.rs:129:5
[INFO] [stdout]     |
[INFO] [stdout] 129 |     batch: usize,
[INFO] [stdout]     |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_batch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]    --> src/f32_backend.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 130 |     rows: usize,
[INFO] [stdout]     |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]    --> src/f32_backend.rs:131:5
[INFO] [stdout]     |
[INFO] [stdout] 131 |     cols: usize,
[INFO] [stdout]     |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]    --> src/f32_backend.rs:132:5
[INFO] [stdout]     |
[INFO] [stdout] 132 |     y: &mut [f32],
[INFO] [stdout]     |     ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]    --> src/gpu.rs:403:5
[INFO] [stdout]     |
[INFO] [stdout] 403 |     model: &Arc<CmfModel>,
[INFO] [stdout]     |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_layers`
[INFO] [stdout]    --> src/gpu.rs:404:5
[INFO] [stdout]     |
[INFO] [stdout] 404 |     num_layers: usize,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_layers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `physical_layers`
[INFO] [stdout]    --> src/gpu.rs:405:5
[INFO] [stdout]     |
[INFO] [stdout] 405 |     physical_layers: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_physical_layers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:1448:5
[INFO] [stdout]      |
[INFO] [stdout] 1448 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:1449:5
[INFO] [stdout]      |
[INFO] [stdout] 1449 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row_scale`
[INFO] [stdout]     --> src/gpu.rs:1450:5
[INFO] [stdout]      |
[INFO] [stdout] 1450 |     row_scale: &[f32],
[INFO] [stdout]      |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_row_scale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pre`
[INFO] [stdout]     --> src/gpu.rs:1451:5
[INFO] [stdout]      |
[INFO] [stdout] 1451 |     pre: &[f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_pre`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/gpu.rs:1452:5
[INFO] [stdout]      |
[INFO] [stdout] 1452 |     b: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:1453:5
[INFO] [stdout]      |
[INFO] [stdout] 1453 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:1454:5
[INFO] [stdout]      |
[INFO] [stdout] 1454 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:1455:5
[INFO] [stdout]      |
[INFO] [stdout] 1455 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:1493:5
[INFO] [stdout]      |
[INFO] [stdout] 1493 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kv_id`
[INFO] [stdout]     --> src/gpu.rs:1494:5
[INFO] [stdout]      |
[INFO] [stdout] 1494 |     kv_id: u64,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_kv_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `layer`
[INFO] [stdout]     --> src/gpu.rs:1495:5
[INFO] [stdout]      |
[INFO] [stdout] 1495 |     layer: usize,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_layer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `normed`
[INFO] [stdout]     --> src/gpu.rs:1496:5
[INFO] [stdout]      |
[INFO] [stdout] 1496 |     normed: &[f32],
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_normed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wq_idx`
[INFO] [stdout]     --> src/gpu.rs:1497:5
[INFO] [stdout]      |
[INFO] [stdout] 1497 |     wq_idx: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_wq_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wk_idx`
[INFO] [stdout]     --> src/gpu.rs:1498:5
[INFO] [stdout]      |
[INFO] [stdout] 1498 |     wk_idx: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_wk_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wv_idx`
[INFO] [stdout]     --> src/gpu.rs:1499:5
[INFO] [stdout]      |
[INFO] [stdout] 1499 |     wv_idx: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_wv_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wo_idx`
[INFO] [stdout]     --> src/gpu.rs:1500:5
[INFO] [stdout]      |
[INFO] [stdout] 1500 |     wo_idx: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_wo_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `q_norm`
[INFO] [stdout]     --> src/gpu.rs:1501:5
[INFO] [stdout]      |
[INFO] [stdout] 1501 |     q_norm: Option<&[f32]>,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_q_norm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k_norm`
[INFO] [stdout]     --> src/gpu.rs:1502:5
[INFO] [stdout]      |
[INFO] [stdout] 1502 |     k_norm: Option<&[f32]>,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_k_norm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `late_qk_norm`
[INFO] [stdout]     --> src/gpu.rs:1503:5
[INFO] [stdout]      |
[INFO] [stdout] 1503 |     late_qk_norm: bool,
[INFO] [stdout]      |     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_late_qk_norm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `invf`
[INFO] [stdout]     --> src/gpu.rs:1504:5
[INFO] [stdout]      |
[INFO] [stdout] 1504 |     invf: &[f32],
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_invf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nh`
[INFO] [stdout]     --> src/gpu.rs:1505:5
[INFO] [stdout]      |
[INFO] [stdout] 1505 |     nh: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nkv`
[INFO] [stdout]     --> src/gpu.rs:1506:5
[INFO] [stdout]      |
[INFO] [stdout] 1506 |     nkv: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_nkv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hd`
[INFO] [stdout]     --> src/gpu.rs:1507:5
[INFO] [stdout]      |
[INFO] [stdout] 1507 |     hd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_hd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rd`
[INFO] [stdout]     --> src/gpu.rs:1508:5
[INFO] [stdout]      |
[INFO] [stdout] 1508 |     rd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_rd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hidden`
[INFO] [stdout]     --> src/gpu.rs:1509:5
[INFO] [stdout]      |
[INFO] [stdout] 1509 |     hidden: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hidden`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pos`
[INFO] [stdout]     --> src/gpu.rs:1510:5
[INFO] [stdout]      |
[INFO] [stdout] 1510 |     pos: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cap`
[INFO] [stdout]     --> src/gpu.rs:1511:5
[INFO] [stdout]      |
[INFO] [stdout] 1511 |     cap: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_cap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gemma`
[INFO] [stdout]     --> src/gpu.rs:1512:5
[INFO] [stdout]      |
[INFO] [stdout] 1512 |     gemma: bool,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_gemma`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `eps`
[INFO] [stdout]     --> src/gpu.rs:1513:5
[INFO] [stdout]      |
[INFO] [stdout] 1513 |     eps: f32,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_eps`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu_k`
[INFO] [stdout]     --> src/gpu.rs:1514:5
[INFO] [stdout]      |
[INFO] [stdout] 1514 |     cpu_k: &[Vec<f32>],
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_cpu_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cpu_v`
[INFO] [stdout]     --> src/gpu.rs:1515:5
[INFO] [stdout]      |
[INFO] [stdout] 1515 |     cpu_v: &[Vec<f32>],
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_cpu_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:1516:5
[INFO] [stdout]      |
[INFO] [stdout] 1516 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:1760:5
[INFO] [stdout]      |
[INFO] [stdout] 1760 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kv_id`
[INFO] [stdout]     --> src/gpu.rs:1761:5
[INFO] [stdout]      |
[INFO] [stdout] 1761 |     kv_id: u64,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_kv_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `layers`
[INFO] [stdout]     --> src/gpu.rs:1762:5
[INFO] [stdout]      |
[INFO] [stdout] 1762 |     layers: &[GraphLayer],
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_layers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `o1`
[INFO] [stdout]     --> src/gpu.rs:1765:5
[INFO] [stdout]      |
[INFO] [stdout] 1765 |     o1: &[Option<Vec<crate::nystrom::O1DeviceView<'_>>>],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_o1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `o1_epoch`
[INFO] [stdout]     --> src/gpu.rs:1766:5
[INFO] [stdout]      |
[INFO] [stdout] 1766 |     o1_epoch: u64,
[INFO] [stdout]      |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_o1_epoch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `invf`
[INFO] [stdout]     --> src/gpu.rs:1767:5
[INFO] [stdout]      |
[INFO] [stdout] 1767 |     invf: &[f32],
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_invf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h`
[INFO] [stdout]     --> src/gpu.rs:1768:5
[INFO] [stdout]      |
[INFO] [stdout] 1768 |     h: &mut [f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nh`
[INFO] [stdout]     --> src/gpu.rs:1769:5
[INFO] [stdout]      |
[INFO] [stdout] 1769 |     nh: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nkv`
[INFO] [stdout]     --> src/gpu.rs:1770:5
[INFO] [stdout]      |
[INFO] [stdout] 1770 |     nkv: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_nkv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hd`
[INFO] [stdout]     --> src/gpu.rs:1771:5
[INFO] [stdout]      |
[INFO] [stdout] 1771 |     hd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_hd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rd`
[INFO] [stdout]     --> src/gpu.rs:1773:5
[INFO] [stdout]      |
[INFO] [stdout] 1773 |     rd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_rd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hidden`
[INFO] [stdout]     --> src/gpu.rs:1774:5
[INFO] [stdout]      |
[INFO] [stdout] 1774 |     hidden: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hidden`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inter`
[INFO] [stdout]     --> src/gpu.rs:1775:5
[INFO] [stdout]      |
[INFO] [stdout] 1775 |     inter: usize,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_inter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `position`
[INFO] [stdout]     --> src/gpu.rs:1776:5
[INFO] [stdout]      |
[INFO] [stdout] 1776 |     position: usize,
[INFO] [stdout]      |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_position`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cap`
[INFO] [stdout]     --> src/gpu.rs:1777:5
[INFO] [stdout]      |
[INFO] [stdout] 1777 |     cap: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_cap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gemma`
[INFO] [stdout]     --> src/gpu.rs:1778:5
[INFO] [stdout]      |
[INFO] [stdout] 1778 |     gemma: bool,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_gemma`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `eps`
[INFO] [stdout]     --> src/gpu.rs:1779:5
[INFO] [stdout]      |
[INFO] [stdout] 1779 |     eps: f32,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_eps`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `steps`
[INFO] [stdout]     --> src/gpu.rs:1784:5
[INFO] [stdout]      |
[INFO] [stdout] 1784 |     steps: usize,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_steps`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `embed`
[INFO] [stdout]     --> src/gpu.rs:1785:5
[INFO] [stdout]      |
[INFO] [stdout] 1785 |     embed: Option<(&GraphW, usize, f32)>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_embed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ids_out`
[INFO] [stdout]     --> src/gpu.rs:1786:5
[INFO] [stdout]      |
[INFO] [stdout] 1786 |     ids_out: Option<&mut Vec<u32>>,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ids_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:1971:5
[INFO] [stdout]      |
[INFO] [stdout] 1971 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kv_id`
[INFO] [stdout]     --> src/gpu.rs:1972:5
[INFO] [stdout]      |
[INFO] [stdout] 1972 |     kv_id: u64,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_kv_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `layer_base`
[INFO] [stdout]     --> src/gpu.rs:1973:5
[INFO] [stdout]      |
[INFO] [stdout] 1973 |     layer_base: usize,
[INFO] [stdout]      |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_layer_base`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `layers`
[INFO] [stdout]     --> src/gpu.rs:1974:5
[INFO] [stdout]      |
[INFO] [stdout] 1974 |     layers: &[GraphLayer],
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_layers`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `invf`
[INFO] [stdout]     --> src/gpu.rs:1975:5
[INFO] [stdout]      |
[INFO] [stdout] 1975 |     invf: &[f32],
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_invf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h`
[INFO] [stdout]     --> src/gpu.rs:1976:5
[INFO] [stdout]      |
[INFO] [stdout] 1976 |     h: &mut [f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nh`
[INFO] [stdout]     --> src/gpu.rs:1977:5
[INFO] [stdout]      |
[INFO] [stdout] 1977 |     nh: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nkv`
[INFO] [stdout]     --> src/gpu.rs:1978:5
[INFO] [stdout]      |
[INFO] [stdout] 1978 |     nkv: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_nkv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hd`
[INFO] [stdout]     --> src/gpu.rs:1979:5
[INFO] [stdout]      |
[INFO] [stdout] 1979 |     hd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_hd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rd`
[INFO] [stdout]     --> src/gpu.rs:1980:5
[INFO] [stdout]      |
[INFO] [stdout] 1980 |     rd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_rd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hidden`
[INFO] [stdout]     --> src/gpu.rs:1981:5
[INFO] [stdout]      |
[INFO] [stdout] 1981 |     hidden: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hidden`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inter`
[INFO] [stdout]     --> src/gpu.rs:1982:5
[INFO] [stdout]      |
[INFO] [stdout] 1982 |     inter: usize,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_inter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `positions`
[INFO] [stdout]     --> src/gpu.rs:1983:5
[INFO] [stdout]      |
[INFO] [stdout] 1983 |     positions: &[usize],
[INFO] [stdout]      |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_positions`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cap`
[INFO] [stdout]     --> src/gpu.rs:1984:5
[INFO] [stdout]      |
[INFO] [stdout] 1984 |     cap: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_cap`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gemma`
[INFO] [stdout]     --> src/gpu.rs:1985:5
[INFO] [stdout]      |
[INFO] [stdout] 1985 |     gemma: bool,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_gemma`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `eps`
[INFO] [stdout]     --> src/gpu.rs:1986:5
[INFO] [stdout]      |
[INFO] [stdout] 1986 |     eps: f32,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_eps`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `attn_scale`
[INFO] [stdout]     --> src/gpu.rs:1987:5
[INFO] [stdout]      |
[INFO] [stdout] 1987 |     attn_scale: f32,
[INFO] [stdout]      |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_attn_scale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]     --> src/gpu.rs:1988:5
[INFO] [stdout]      |
[INFO] [stdout] 1988 |     k: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kv_id`
[INFO] [stdout]     --> src/gpu.rs:2036:28
[INFO] [stdout]      |
[INFO] [stdout] 2036 | pub fn graph_kv_set_stored(kv_id: u64, layer: usize, stored: usize) -> bool {
[INFO] [stdout]      |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_kv_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `layer`
[INFO] [stdout]     --> src/gpu.rs:2036:40
[INFO] [stdout]      |
[INFO] [stdout] 2036 | pub fn graph_kv_set_stored(kv_id: u64, layer: usize, stored: usize) -> bool {
[INFO] [stdout]      |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_layer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stored`
[INFO] [stdout]     --> src/gpu.rs:2036:54
[INFO] [stdout]      |
[INFO] [stdout] 2036 | pub fn graph_kv_set_stored(kv_id: u64, layer: usize, stored: usize) -> bool {
[INFO] [stdout]      |                                                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stored`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:2119:5
[INFO] [stdout]      |
[INFO] [stdout] 2119 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:2120:5
[INFO] [stdout]      |
[INFO] [stdout] 2120 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:2121:5
[INFO] [stdout]      |
[INFO] [stdout] 2121 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:2122:5
[INFO] [stdout]      |
[INFO] [stdout] 2122 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:2123:5
[INFO] [stdout]      |
[INFO] [stdout] 2123 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:2124:5
[INFO] [stdout]      |
[INFO] [stdout] 2124 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:2164:5
[INFO] [stdout]      |
[INFO] [stdout] 2164 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:2165:5
[INFO] [stdout]      |
[INFO] [stdout] 2165 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:2166:5
[INFO] [stdout]      |
[INFO] [stdout] 2166 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/gpu.rs:2167:5
[INFO] [stdout]      |
[INFO] [stdout] 2167 |     b: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:2168:5
[INFO] [stdout]      |
[INFO] [stdout] 2168 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:2169:5
[INFO] [stdout]      |
[INFO] [stdout] 2169 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:2170:5
[INFO] [stdout]      |
[INFO] [stdout] 2170 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:2196:5
[INFO] [stdout]      |
[INFO] [stdout] 2196 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:2197:5
[INFO] [stdout]      |
[INFO] [stdout] 2197 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:2198:5
[INFO] [stdout]      |
[INFO] [stdout] 2198 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/gpu.rs:2199:5
[INFO] [stdout]      |
[INFO] [stdout] 2199 |     b: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:2200:5
[INFO] [stdout]      |
[INFO] [stdout] 2200 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:2201:5
[INFO] [stdout]      |
[INFO] [stdout] 2201 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:2202:5
[INFO] [stdout]      |
[INFO] [stdout] 2202 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:2642:5
[INFO] [stdout]      |
[INFO] [stdout] 2642 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w1`
[INFO] [stdout]     --> src/gpu.rs:2643:5
[INFO] [stdout]      |
[INFO] [stdout] 2643 |     w1: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_w1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w3`
[INFO] [stdout]     --> src/gpu.rs:2644:5
[INFO] [stdout]      |
[INFO] [stdout] 2644 |     w3: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_w3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w2`
[INFO] [stdout]     --> src/gpu.rs:2645:5
[INFO] [stdout]      |
[INFO] [stdout] 2645 |     w2: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_w2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:2646:5
[INFO] [stdout]      |
[INFO] [stdout] 2646 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/gpu.rs:2647:5
[INFO] [stdout]      |
[INFO] [stdout] 2647 |     b: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hidden`
[INFO] [stdout]     --> src/gpu.rs:2648:5
[INFO] [stdout]      |
[INFO] [stdout] 2648 |     hidden: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hidden`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inter`
[INFO] [stdout]     --> src/gpu.rs:2649:5
[INFO] [stdout]      |
[INFO] [stdout] 2649 |     inter: usize,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_inter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:2650:5
[INFO] [stdout]      |
[INFO] [stdout] 2650 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:2767:5
[INFO] [stdout]      |
[INFO] [stdout] 2767 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w1`
[INFO] [stdout]     --> src/gpu.rs:2768:5
[INFO] [stdout]      |
[INFO] [stdout] 2768 |     w1: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_w1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w3`
[INFO] [stdout]     --> src/gpu.rs:2769:5
[INFO] [stdout]      |
[INFO] [stdout] 2769 |     w3: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_w3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w2`
[INFO] [stdout]     --> src/gpu.rs:2770:5
[INFO] [stdout]      |
[INFO] [stdout] 2770 |     w2: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_w2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:2771:5
[INFO] [stdout]      |
[INFO] [stdout] 2771 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/gpu.rs:2772:5
[INFO] [stdout]      |
[INFO] [stdout] 2772 |     b: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hidden`
[INFO] [stdout]     --> src/gpu.rs:2773:5
[INFO] [stdout]      |
[INFO] [stdout] 2773 |     hidden: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hidden`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inter`
[INFO] [stdout]     --> src/gpu.rs:2774:5
[INFO] [stdout]      |
[INFO] [stdout] 2774 |     inter: usize,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_inter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:2775:5
[INFO] [stdout]      |
[INFO] [stdout] 2775 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3142:5
[INFO] [stdout]      |
[INFO] [stdout] 3142 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]     --> src/gpu.rs:3143:5
[INFO] [stdout]      |
[INFO] [stdout] 3143 |     a: &DitBlockArgs,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `segs`
[INFO] [stdout]     --> src/gpu.rs:3144:5
[INFO] [stdout]      |
[INFO] [stdout] 3144 |     segs: &[usize],
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_segs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]     --> src/gpu.rs:3145:5
[INFO] [stdout]      |
[INFO] [stdout] 3145 |     x: &mut [f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3290:5
[INFO] [stdout]      |
[INFO] [stdout] 3290 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `qkv_idx`
[INFO] [stdout]     --> src/gpu.rs:3291:5
[INFO] [stdout]      |
[INFO] [stdout] 3291 |     qkv_idx: usize,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_qkv_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out_idx`
[INFO] [stdout]     --> src/gpu.rs:3292:5
[INFO] [stdout]      |
[INFO] [stdout] 3292 |     out_idx: usize,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_out_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xn`
[INFO] [stdout]     --> src/gpu.rs:3293:5
[INFO] [stdout]      |
[INFO] [stdout] 3293 |     xn: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]     --> src/gpu.rs:3294:5
[INFO] [stdout]      |
[INFO] [stdout] 3294 |     n: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hidden`
[INFO] [stdout]     --> src/gpu.rs:3295:5
[INFO] [stdout]      |
[INFO] [stdout] 3295 |     hidden: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hidden`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nh`
[INFO] [stdout]     --> src/gpu.rs:3296:5
[INFO] [stdout]      |
[INFO] [stdout] 3296 |     nh: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hd`
[INFO] [stdout]     --> src/gpu.rs:3297:5
[INFO] [stdout]      |
[INFO] [stdout] 3297 |     hd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_hd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scale`
[INFO] [stdout]     --> src/gpu.rs:3298:5
[INFO] [stdout]      |
[INFO] [stdout] 3298 |     scale: f32,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_scale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nr`
[INFO] [stdout]     --> src/gpu.rs:3299:5
[INFO] [stdout]      |
[INFO] [stdout] 3299 |     nr: (&[f32], &[f32], &[f32], f32),
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proj`
[INFO] [stdout]     --> src/gpu.rs:3300:5
[INFO] [stdout]      |
[INFO] [stdout] 3300 |     proj: &mut [f32],
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_proj`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3315:5
[INFO] [stdout]      |
[INFO] [stdout] 3315 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `qkv_idx`
[INFO] [stdout]     --> src/gpu.rs:3316:5
[INFO] [stdout]      |
[INFO] [stdout] 3316 |     qkv_idx: usize,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_qkv_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out_idx`
[INFO] [stdout]     --> src/gpu.rs:3317:5
[INFO] [stdout]      |
[INFO] [stdout] 3317 |     out_idx: usize,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_out_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xn`
[INFO] [stdout]     --> src/gpu.rs:3318:5
[INFO] [stdout]      |
[INFO] [stdout] 3318 |     xn: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]     --> src/gpu.rs:3319:5
[INFO] [stdout]      |
[INFO] [stdout] 3319 |     n: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dim`
[INFO] [stdout]     --> src/gpu.rs:3320:5
[INFO] [stdout]      |
[INFO] [stdout] 3320 |     dim: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_dim`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nh`
[INFO] [stdout]     --> src/gpu.rs:3321:5
[INFO] [stdout]      |
[INFO] [stdout] 3321 |     nh: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hd`
[INFO] [stdout]     --> src/gpu.rs:3322:5
[INFO] [stdout]      |
[INFO] [stdout] 3322 |     hd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_hd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scale`
[INFO] [stdout]     --> src/gpu.rs:3323:5
[INFO] [stdout]      |
[INFO] [stdout] 3323 |     scale: f32,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_scale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `angles`
[INFO] [stdout]     --> src/gpu.rs:3324:5
[INFO] [stdout]      |
[INFO] [stdout] 3324 |     angles: &[f32],
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_angles`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `eps`
[INFO] [stdout]     --> src/gpu.rs:3325:5
[INFO] [stdout]      |
[INFO] [stdout] 3325 |     eps: f32,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_eps`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `qkv_bias`
[INFO] [stdout]     --> src/gpu.rs:3326:5
[INFO] [stdout]      |
[INFO] [stdout] 3326 |     qkv_bias: &[f32],
[INFO] [stdout]      |     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_qkv_bias`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `proj`
[INFO] [stdout]     --> src/gpu.rs:3327:5
[INFO] [stdout]      |
[INFO] [stdout] 3327 |     proj: &mut [f32],
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_proj`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `qkv`
[INFO] [stdout]     --> src/gpu.rs:3355:5
[INFO] [stdout]      |
[INFO] [stdout] 3355 |     qkv: &[f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_qkv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nh`
[INFO] [stdout]     --> src/gpu.rs:3356:5
[INFO] [stdout]      |
[INFO] [stdout] 3356 |     nh: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]     --> src/gpu.rs:3357:5
[INFO] [stdout]      |
[INFO] [stdout] 3357 |     n: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hd`
[INFO] [stdout]     --> src/gpu.rs:3358:5
[INFO] [stdout]      |
[INFO] [stdout] 3358 |     hd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_hd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scale`
[INFO] [stdout]     --> src/gpu.rs:3359:5
[INFO] [stdout]      |
[INFO] [stdout] 3359 |     scale: f32,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_scale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `angles`
[INFO] [stdout]     --> src/gpu.rs:3360:5
[INFO] [stdout]      |
[INFO] [stdout] 3360 |     angles: &[f32],
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_angles`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `eps`
[INFO] [stdout]     --> src/gpu.rs:3361:5
[INFO] [stdout]      |
[INFO] [stdout] 3361 |     eps: f32,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_eps`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3362:5
[INFO] [stdout]      |
[INFO] [stdout] 3362 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `layout`
[INFO] [stdout]     --> src/gpu.rs:3363:5
[INFO] [stdout]      |
[INFO] [stdout] 3363 |     layout: u32,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_layout`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `qkv`
[INFO] [stdout]     --> src/gpu.rs:3377:5
[INFO] [stdout]      |
[INFO] [stdout] 3377 |     qkv: &[f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_qkv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nh`
[INFO] [stdout]     --> src/gpu.rs:3378:5
[INFO] [stdout]      |
[INFO] [stdout] 3378 |     nh: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]     --> src/gpu.rs:3379:5
[INFO] [stdout]      |
[INFO] [stdout] 3379 |     n: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hd`
[INFO] [stdout]     --> src/gpu.rs:3380:5
[INFO] [stdout]      |
[INFO] [stdout] 3380 |     hd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_hd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `layout`
[INFO] [stdout]     --> src/gpu.rs:3381:5
[INFO] [stdout]      |
[INFO] [stdout] 3381 |     layout: u32,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_layout`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `norm`
[INFO] [stdout]     --> src/gpu.rs:3382:5
[INFO] [stdout]      |
[INFO] [stdout] 3382 |     norm: Option<(&[f32], f32)>,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_norm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out_q`
[INFO] [stdout]     --> src/gpu.rs:3383:5
[INFO] [stdout]      |
[INFO] [stdout] 3383 |     out_q: &mut [f32],
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_out_q`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]     --> src/gpu.rs:3401:5
[INFO] [stdout]      |
[INFO] [stdout] 3401 |     x: &[f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]     --> src/gpu.rs:3402:5
[INFO] [stdout]      |
[INFO] [stdout] 3402 |     w: &[f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]     --> src/gpu.rs:3403:5
[INFO] [stdout]      |
[INFO] [stdout] 3403 |     y: &mut [f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]     --> src/gpu.rs:3404:5
[INFO] [stdout]      |
[INFO] [stdout] 3404 |     n: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]     --> src/gpu.rs:3405:5
[INFO] [stdout]      |
[INFO] [stdout] 3405 |     k: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `m`
[INFO] [stdout]     --> src/gpu.rs:3406:5
[INFO] [stdout]      |
[INFO] [stdout] 3406 |     m: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_m`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]     --> src/gpu.rs:3416:20
[INFO] [stdout]      |
[INFO] [stdout] 3416 | pub fn gemm_nt_f32(x: &[f32], w: &[f32], y: &mut [f32], n: usize, k: usize, m: usize) -> bool {
[INFO] [stdout]      |                    ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]     --> src/gpu.rs:3416:31
[INFO] [stdout]      |
[INFO] [stdout] 3416 | pub fn gemm_nt_f32(x: &[f32], w: &[f32], y: &mut [f32], n: usize, k: usize, m: usize) -> bool {
[INFO] [stdout]      |                               ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y`
[INFO] [stdout]     --> src/gpu.rs:3416:42
[INFO] [stdout]      |
[INFO] [stdout] 3416 | pub fn gemm_nt_f32(x: &[f32], w: &[f32], y: &mut [f32], n: usize, k: usize, m: usize) -> bool {
[INFO] [stdout]      |                                          ^ help: if this is intentional, prefix it with an underscore: `_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]     --> src/gpu.rs:3416:57
[INFO] [stdout]      |
[INFO] [stdout] 3416 | pub fn gemm_nt_f32(x: &[f32], w: &[f32], y: &mut [f32], n: usize, k: usize, m: usize) -> bool {
[INFO] [stdout]      |                                                         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]     --> src/gpu.rs:3416:67
[INFO] [stdout]      |
[INFO] [stdout] 3416 | pub fn gemm_nt_f32(x: &[f32], w: &[f32], y: &mut [f32], n: usize, k: usize, m: usize) -> bool {
[INFO] [stdout]      |                                                                   ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `m`
[INFO] [stdout]     --> src/gpu.rs:3416:77
[INFO] [stdout]      |
[INFO] [stdout] 3416 | pub fn gemm_nt_f32(x: &[f32], w: &[f32], y: &mut [f32], n: usize, k: usize, m: usize) -> bool {
[INFO] [stdout]      |                                                                             ^ help: if this is intentional, prefix it with an underscore: `_m`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3429:5
[INFO] [stdout]      |
[INFO] [stdout] 3429 |     model: &std::sync::Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx_in`
[INFO] [stdout]     --> src/gpu.rs:3430:5
[INFO] [stdout]      |
[INFO] [stdout] 3430 |     idx_in: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_idx_in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx_out`
[INFO] [stdout]     --> src/gpu.rs:3431:5
[INFO] [stdout]      |
[INFO] [stdout] 3431 |     idx_out: usize,
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_idx_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h`
[INFO] [stdout]     --> src/gpu.rs:3432:5
[INFO] [stdout]      |
[INFO] [stdout] 3432 |     h: &[f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bias_in`
[INFO] [stdout]     --> src/gpu.rs:3433:5
[INFO] [stdout]      |
[INFO] [stdout] 3433 |     bias_in: &[f32],
[INFO] [stdout]      |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bias_in`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]     --> src/gpu.rs:3434:5
[INFO] [stdout]      |
[INFO] [stdout] 3434 |     n: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hs`
[INFO] [stdout]     --> src/gpu.rs:3435:5
[INFO] [stdout]      |
[INFO] [stdout] 3435 |     hs: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_hs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inter`
[INFO] [stdout]     --> src/gpu.rs:3436:5
[INFO] [stdout]      |
[INFO] [stdout] 3436 |     inter: usize,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_inter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3437:5
[INFO] [stdout]      |
[INFO] [stdout] 3437 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]     --> src/gpu.rs:3454:5
[INFO] [stdout]      |
[INFO] [stdout] 3454 |     x: &[f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]     --> src/gpu.rs:3455:5
[INFO] [stdout]      |
[INFO] [stdout] 3455 |     w: &[f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ic`
[INFO] [stdout]     --> src/gpu.rs:3456:5
[INFO] [stdout]      |
[INFO] [stdout] 3456 |     ic: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_ic`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `oc`
[INFO] [stdout]     --> src/gpu.rs:3457:5
[INFO] [stdout]      |
[INFO] [stdout] 3457 |     oc: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_oc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]     --> src/gpu.rs:3458:5
[INFO] [stdout]      |
[INFO] [stdout] 3458 |     n: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]     --> src/gpu.rs:3459:5
[INFO] [stdout]      |
[INFO] [stdout] 3459 |     k: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pad`
[INFO] [stdout]     --> src/gpu.rs:3460:5
[INFO] [stdout]      |
[INFO] [stdout] 3460 |     pad: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_pad`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dil`
[INFO] [stdout]     --> src/gpu.rs:3461:5
[INFO] [stdout]      |
[INFO] [stdout] 3461 |     dil: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_dil`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out_n`
[INFO] [stdout]     --> src/gpu.rs:3462:5
[INFO] [stdout]      |
[INFO] [stdout] 3462 |     out_n: usize,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_out_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `yt`
[INFO] [stdout]     --> src/gpu.rs:3463:5
[INFO] [stdout]      |
[INFO] [stdout] 3463 |     yt: &mut [f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_yt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w`
[INFO] [stdout]     --> src/gpu.rs:3478:5
[INFO] [stdout]      |
[INFO] [stdout] 3478 |     w: &[f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_w`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bias`
[INFO] [stdout]     --> src/gpu.rs:3479:5
[INFO] [stdout]      |
[INFO] [stdout] 3479 |     bias: Option<&[f32]>,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_bias`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]     --> src/gpu.rs:3480:5
[INFO] [stdout]      |
[INFO] [stdout] 3480 |     x: &[f32],
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ic`
[INFO] [stdout]     --> src/gpu.rs:3481:5
[INFO] [stdout]      |
[INFO] [stdout] 3481 |     ic: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_ic`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `oc`
[INFO] [stdout]     --> src/gpu.rs:3482:5
[INFO] [stdout]      |
[INFO] [stdout] 3482 |     oc: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_oc`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `h`
[INFO] [stdout]     --> src/gpu.rs:3483:5
[INFO] [stdout]      |
[INFO] [stdout] 3483 |     h: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_h`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `wi`
[INFO] [stdout]     --> src/gpu.rs:3484:5
[INFO] [stdout]      |
[INFO] [stdout] 3484 |     wi: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_wi`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k`
[INFO] [stdout]     --> src/gpu.rs:3485:5
[INFO] [stdout]      |
[INFO] [stdout] 3485 |     k: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_k`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3486:5
[INFO] [stdout]      |
[INFO] [stdout] 3486 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `qkv`
[INFO] [stdout]     --> src/gpu.rs:3497:5
[INFO] [stdout]      |
[INFO] [stdout] 3497 |     qkv: &[f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_qkv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nh`
[INFO] [stdout]     --> src/gpu.rs:3498:5
[INFO] [stdout]      |
[INFO] [stdout] 3498 |     nh: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]     --> src/gpu.rs:3499:5
[INFO] [stdout]      |
[INFO] [stdout] 3499 |     n: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hd`
[INFO] [stdout]     --> src/gpu.rs:3500:5
[INFO] [stdout]      |
[INFO] [stdout] 3500 |     hd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_hd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scale`
[INFO] [stdout]     --> src/gpu.rs:3501:5
[INFO] [stdout]      |
[INFO] [stdout] 3501 |     scale: f32,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_scale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nr`
[INFO] [stdout]     --> src/gpu.rs:3504:5
[INFO] [stdout]      |
[INFO] [stdout] 3504 |     nr: Option<(&[f32], &[f32], &[f32], f32)>,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nr`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3505:5
[INFO] [stdout]      |
[INFO] [stdout] 3505 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `qh`
[INFO] [stdout]     --> src/gpu.rs:3538:5
[INFO] [stdout]      |
[INFO] [stdout] 3538 |     qh: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_qh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kh`
[INFO] [stdout]     --> src/gpu.rs:3539:5
[INFO] [stdout]      |
[INFO] [stdout] 3539 |     kh: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_kh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `vh`
[INFO] [stdout]     --> src/gpu.rs:3540:5
[INFO] [stdout]      |
[INFO] [stdout] 3540 |     vh: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_vh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nh`
[INFO] [stdout]     --> src/gpu.rs:3541:5
[INFO] [stdout]      |
[INFO] [stdout] 3541 |     nh: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_nh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nkv`
[INFO] [stdout]     --> src/gpu.rs:3542:5
[INFO] [stdout]      |
[INFO] [stdout] 3542 |     nkv: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_nkv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]     --> src/gpu.rs:3543:5
[INFO] [stdout]      |
[INFO] [stdout] 3543 |     n: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hd`
[INFO] [stdout]     --> src/gpu.rs:3544:5
[INFO] [stdout]      |
[INFO] [stdout] 3544 |     hd: usize,
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_hd`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scale`
[INFO] [stdout]     --> src/gpu.rs:3545:5
[INFO] [stdout]      |
[INFO] [stdout] 3545 |     scale: f32,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_scale`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3546:5
[INFO] [stdout]      |
[INFO] [stdout] 3546 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3585:5
[INFO] [stdout]      |
[INFO] [stdout] 3585 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:3586:5
[INFO] [stdout]      |
[INFO] [stdout] 3586 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:3587:5
[INFO] [stdout]      |
[INFO] [stdout] 3587 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/gpu.rs:3588:5
[INFO] [stdout]      |
[INFO] [stdout] 3588 |     b: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:3589:5
[INFO] [stdout]      |
[INFO] [stdout] 3589 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:3590:5
[INFO] [stdout]      |
[INFO] [stdout] 3590 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3591:5
[INFO] [stdout]      |
[INFO] [stdout] 3591 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3606:5
[INFO] [stdout]      |
[INFO] [stdout] 3606 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:3607:5
[INFO] [stdout]      |
[INFO] [stdout] 3607 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:3608:5
[INFO] [stdout]      |
[INFO] [stdout] 3608 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/gpu.rs:3609:5
[INFO] [stdout]      |
[INFO] [stdout] 3609 |     b: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:3610:5
[INFO] [stdout]      |
[INFO] [stdout] 3610 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:3611:5
[INFO] [stdout]      |
[INFO] [stdout] 3611 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3612:5
[INFO] [stdout]      |
[INFO] [stdout] 3612 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3626:5
[INFO] [stdout]      |
[INFO] [stdout] 3626 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:3627:5
[INFO] [stdout]      |
[INFO] [stdout] 3627 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:3628:5
[INFO] [stdout]      |
[INFO] [stdout] 3628 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:3629:5
[INFO] [stdout]      |
[INFO] [stdout] 3629 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:3630:5
[INFO] [stdout]      |
[INFO] [stdout] 3630 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3631:5
[INFO] [stdout]      |
[INFO] [stdout] 3631 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3647:5
[INFO] [stdout]      |
[INFO] [stdout] 3647 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:3648:5
[INFO] [stdout]      |
[INFO] [stdout] 3648 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:3649:5
[INFO] [stdout]      |
[INFO] [stdout] 3649 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:3650:5
[INFO] [stdout]      |
[INFO] [stdout] 3650 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:3651:5
[INFO] [stdout]      |
[INFO] [stdout] 3651 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3652:5
[INFO] [stdout]      |
[INFO] [stdout] 3652 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3669:5
[INFO] [stdout]      |
[INFO] [stdout] 3669 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:3670:5
[INFO] [stdout]      |
[INFO] [stdout] 3670 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:3671:5
[INFO] [stdout]      |
[INFO] [stdout] 3671 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:3672:5
[INFO] [stdout]      |
[INFO] [stdout] 3672 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:3673:5
[INFO] [stdout]      |
[INFO] [stdout] 3673 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3674:5
[INFO] [stdout]      |
[INFO] [stdout] 3674 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3692:5
[INFO] [stdout]      |
[INFO] [stdout] 3692 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:3693:5
[INFO] [stdout]      |
[INFO] [stdout] 3693 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:3694:5
[INFO] [stdout]      |
[INFO] [stdout] 3694 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:3695:5
[INFO] [stdout]      |
[INFO] [stdout] 3695 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:3696:5
[INFO] [stdout]      |
[INFO] [stdout] 3696 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3697:5
[INFO] [stdout]      |
[INFO] [stdout] 3697 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `model`
[INFO] [stdout]     --> src/gpu.rs:3708:5
[INFO] [stdout]      |
[INFO] [stdout] 3708 |     model: &Arc<CmfModel>,
[INFO] [stdout]      |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_model`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `idx`
[INFO] [stdout]     --> src/gpu.rs:3709:5
[INFO] [stdout]      |
[INFO] [stdout] 3709 |     idx: usize,
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_idx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `xs`
[INFO] [stdout]     --> src/gpu.rs:3710:5
[INFO] [stdout]      |
[INFO] [stdout] 3710 |     xs: &[f32],
[INFO] [stdout]      |     ^^ help: if this is intentional, prefix it with an underscore: `_xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `b`
[INFO] [stdout]     --> src/gpu.rs:3711:5
[INFO] [stdout]      |
[INFO] [stdout] 3711 |     b: usize,
[INFO] [stdout]      |     ^ help: if this is intentional, prefix it with an underscore: `_b`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]     --> src/gpu.rs:3712:5
[INFO] [stdout]      |
[INFO] [stdout] 3712 |     rows: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cols`
[INFO] [stdout]     --> src/gpu.rs:3713:5
[INFO] [stdout]      |
[INFO] [stdout] 3713 |     cols: usize,
[INFO] [stdout]      |     ^^^^ help: if this is intentional, prefix it with an underscore: `_cols`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out`
[INFO] [stdout]     --> src/gpu.rs:3714:5
[INFO] [stdout]      |
[INFO] [stdout] 3714 |     out: &mut [f32],
[INFO] [stdout]      |     ^^^ help: if this is intentional, prefix it with an underscore: `_out`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/gpu.rs:4094:9
[INFO] [stdout]      |
[INFO] [stdout] 4094 |     let mut total = 0u64;
[INFO] [stdout]      |         ----^^^^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]     --> src/qtensor.rs:5115:5
[INFO] [stdout]      |
[INFO] [stdout] 5115 |     unsafe {
[INFO] [stdout]      |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]     --> src/qtensor.rs:9786:5
[INFO] [stdout]      |
[INFO] [stdout] 9786 |     unsafe {
[INFO] [stdout]      |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hidden`
[INFO] [stdout]     --> src/qwen_image.rs:1188:5
[INFO] [stdout]      |
[INFO] [stdout] 1188 |     hidden: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hidden`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/qwen_image.rs:1428:9
[INFO] [stdout]      |
[INFO] [stdout] 1428 |     let mut append = |ids: [i64; 3], cos: &mut Vec<f32>, sin: &mut Vec<f32>| {
[INFO] [stdout]      |         ----^^^^^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/qwen_image_encoder.rs:299:9
[INFO] [stdout]     |
[INFO] [stdout] 299 |     let mut out = if let Some(values) = values {
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `in_channels`
[INFO] [stdout]    --> src/qwen_image_vision.rs:460:13
[INFO] [stdout]     |
[INFO] [stdout] 460 |         let in_channels = cfg_usize_default(cfg, "in_channels", 3);
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_in_channels`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `npos`
[INFO] [stdout]     --> src/ltxaudio.rs:1218:13
[INFO] [stdout]      |
[INFO] [stdout] 1218 |         let npos = out.n();
[INFO] [stdout]      |             ^^^^ help: if this is intentional, prefix it with an underscore: `_npos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sh`
[INFO] [stdout]    --> src/ltxenc.rs:190:18
[INFO] [stdout]     |
[INFO] [stdout] 190 |         let (sf, sh, sw) = self.stride;
[INFO] [stdout]     |                  ^^ help: if this is intentional, prefix it with an underscore: `_sh`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sw`
[INFO] [stdout]    --> src/ltxenc.rs:190:22
[INFO] [stdout]     |
[INFO] [stdout] 190 |         let (sf, sh, sw) = self.stride;
[INFO] [stdout]     |                      ^^ help: if this is intentional, prefix it with an underscore: `_sw`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:522:29
[INFO] [stdout]     |
[INFO] [stdout] 522 | ...                   xp.add(i * k + kb),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/zimage.rs:497:5
[INFO] [stdout]     |
[INFO] [stdout] 497 | /     unsafe fn tile(
[INFO] [stdout] 498 | |         x: &[f32],
[INFO] [stdout] 499 | |         w: &[f32],
[INFO] [stdout] 500 | |         y: *mut f32,
[INFO] [stdout] ...   |
[INFO] [stdout] 506 | |         j1: usize,
[INFO] [stdout] 507 | |     ) {
[INFO] [stdout]     | |_____^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:523:29
[INFO] [stdout]     |
[INFO] [stdout] 523 | ...                   xp.add((i + 1) * k + kb),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:524:29
[INFO] [stdout]     |
[INFO] [stdout] 524 | ...                   xp.add((i + 2) * k + kb),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:527:29
[INFO] [stdout]     |
[INFO] [stdout] 527 | ...                   wp.add(j * k + kb),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:528:29
[INFO] [stdout]     |
[INFO] [stdout] 528 | ...                   wp.add((j + 1) * k + kb),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:529:29
[INFO] [stdout]     |
[INFO] [stdout] 529 | ...                   wp.add((j + 2) * k + kb),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:534:38
[INFO] [stdout]     |
[INFO] [stdout] 534 | ...                   let b0 = _mm256_loadu_ps(w0.add(kk));
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:534:54
[INFO] [stdout]     |
[INFO] [stdout] 534 | ...                   let b0 = _mm256_loadu_ps(w0.add(kk));
[INFO] [stdout]     |                                                ^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:535:38
[INFO] [stdout]     |
[INFO] [stdout] 535 | ...                   let b1 = _mm256_loadu_ps(w1.add(kk));
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:535:54
[INFO] [stdout]     |
[INFO] [stdout] 535 | ...                   let b1 = _mm256_loadu_ps(w1.add(kk));
[INFO] [stdout]     |                                                ^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:536:38
[INFO] [stdout]     |
[INFO] [stdout] 536 | ...                   let b2 = _mm256_loadu_ps(w2.add(kk));
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:536:54
[INFO] [stdout]     |
[INFO] [stdout] 536 | ...                   let b2 = _mm256_loadu_ps(w2.add(kk));
[INFO] [stdout]     |                                                ^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:537:38
[INFO] [stdout]     |
[INFO] [stdout] 537 | ...                   let r0 = _mm256_loadu_ps(x0.add(kk));
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:537:54
[INFO] [stdout]     |
[INFO] [stdout] 537 | ...                   let r0 = _mm256_loadu_ps(x0.add(kk));
[INFO] [stdout]     |                                                ^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:541:38
[INFO] [stdout]     |
[INFO] [stdout] 541 | ...                   let r1 = _mm256_loadu_ps(x1.add(kk));
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:541:54
[INFO] [stdout]     |
[INFO] [stdout] 541 | ...                   let r1 = _mm256_loadu_ps(x1.add(kk));
[INFO] [stdout]     |                                                ^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:545:38
[INFO] [stdout]     |
[INFO] [stdout] 545 | ...                   let r2 = _mm256_loadu_ps(x2.add(kk));
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:545:54
[INFO] [stdout]     |
[INFO] [stdout] 545 | ...                   let r2 = _mm256_loadu_ps(x2.add(kk));
[INFO] [stdout]     |                                                ^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:553:33
[INFO] [stdout]     |
[INFO] [stdout] 553 | ...                   *y.add((i + r) * ldy + j + c) += hsum(a[r * 3 + c]);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout]     |
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:553:34
[INFO] [stdout]     |
[INFO] [stdout] 553 | ...                   *y.add((i + r) * ldy + j + c) += hsum(a[r * 3 + c]);
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `zimage::host_gemm::hsum` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:553:66
[INFO] [stdout]     |
[INFO] [stdout] 553 | ...                   *y.add((i + r) * ldy + j + c) += hsum(a[r * 3 + c]);
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:559:49
[INFO] [stdout]     |
[INFO] [stdout] 559 | ...                   let (xr, wr) = (xp.add((i + r) * k + kb), wp.add((j + c) * k + kb));
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:559:75
[INFO] [stdout]     |
[INFO] [stdout] 559 | ...                   let (xr, wr) = (xp.add((i + r) * k + kb), wp.add((j + c) * k + kb));
[INFO] [stdout]     |                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:564:41
[INFO] [stdout]     |
[INFO] [stdout] 564 | ...                   _mm256_loadu_ps(xr.add(kk)),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:564:57
[INFO] [stdout]     |
[INFO] [stdout] 564 | ...                   _mm256_loadu_ps(xr.add(kk)),
[INFO] [stdout]     |                                       ^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:565:41
[INFO] [stdout]     |
[INFO] [stdout] 565 | ...                   _mm256_loadu_ps(wr.add(kk)),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:565:57
[INFO] [stdout]     |
[INFO] [stdout] 565 | ...                   _mm256_loadu_ps(wr.add(kk)),
[INFO] [stdout]     |                                       ^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:570:33
[INFO] [stdout]     |
[INFO] [stdout] 570 | ...                   *y.add((i + r) * ldy + j + c) += hsum(acc);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout]     |
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:570:34
[INFO] [stdout]     |
[INFO] [stdout] 570 | ...                   *y.add((i + r) * ldy + j + c) += hsum(acc);
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `zimage::host_gemm::hsum` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:570:66
[INFO] [stdout]     |
[INFO] [stdout] 570 | ...                   *y.add((i + r) * ldy + j + c) += hsum(acc);
[INFO] [stdout]     |                                                        ^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/mmh3.rs:873:25
[INFO] [stdout]     |
[INFO] [stdout] 873 |                     let mut take = |suffix: &str, p: &Proj| -> Result<Option<LoraBranch>, String> {
[INFO] [stdout]     |                         ----^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `finish_projection_debug` is never used
[INFO] [stdout]    --> src/attention.rs:945:15
[INFO] [stdout]     |
[INFO] [stdout] 945 | pub(crate) fn finish_projection_debug(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `q4tp_mapped` and `matvec_rows` are never used
[INFO] [stdout]    --> src/dit.rs:61:19
[INFO] [stdout]     |
[INFO] [stdout]  37 | impl Proj {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  61 |     pub(crate) fn q4tp_mapped(&self) -> Option<(&Arc<CmfModel>, usize)> {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     pub(crate) fn matvec_rows(&self, xs: &[f32], b: usize, out: &mut [f32], pool: Option<&Pool>) {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `gpu_block` is never used
[INFO] [stdout]    --> src/dit.rs:727:8
[INFO] [stdout]     |
[INFO] [stdout] 391 | impl NextDit {
[INFO] [stdout]     | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 727 |     fn gpu_block(
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `host_cpu_moe` is never used
[INFO] [stdout]     --> src/dsv4.rs:3108:4
[INFO] [stdout]      |
[INFO] [stdout] 3108 | fn host_cpu_moe() -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chain_enabled` is never used
[INFO] [stdout]     --> src/dsv4.rs:3113:4
[INFO] [stdout]      |
[INFO] [stdout] 3113 | fn chain_enabled() -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cold_step_block` is never used
[INFO] [stdout]     --> src/dsv4.rs:5544:4
[INFO] [stdout]      |
[INFO] [stdout] 5544 | fn cold_step_block(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dspark_wants` is never used
[INFO] [stdout]     --> src/dsv4.rs:9181:4
[INFO] [stdout]      |
[INFO] [stdout] 9181 | fn dspark_wants(li: usize) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `gpu_expert_ids` and `gpu_shared_ids` are never read
[INFO] [stdout]    --> src/dsv41.rs:863:5
[INFO] [stdout]     |
[INFO] [stdout] 835 | pub struct Dsv41Layer {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 863 |     gpu_expert_ids: Vec<(usize, usize, usize)>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 864 |     gpu_shared_ids: Option<(usize, usize, usize)>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `note_gpu_moe` is never used
[INFO] [stdout]   --> src/dsv41.rs:83:12
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn note_gpu_moe() {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `note_cold` is never used
[INFO] [stdout]   --> src/dsv41.rs:97:12
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn note_cold(count: usize) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `note_gpu_attn` is never used
[INFO] [stdout]    --> src/dsv41.rs:103:12
[INFO] [stdout]     |
[INFO] [stdout] 103 |     pub fn note_gpu_attn() {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `note_gpu_attn_fallback` is never used
[INFO] [stdout]    --> src/dsv41.rs:109:12
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub fn note_gpu_attn_fallback() {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_GAP` is never used
[INFO] [stdout]   --> src/expert_store.rs:56:7
[INFO] [stdout]    |
[INFO] [stdout] 56 | const MAX_GAP: usize = 64 << 10;
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `abs` and `len` are never read
[INFO] [stdout]   --> src/expert_store.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub(crate) struct Part {
[INFO] [stdout]    |                   ---- fields in this struct
[INFO] [stdout] 60 |     pub abs: u64,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 61 |     pub len: usize,
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Part` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `parts` is never read
[INFO] [stdout]   --> src/expert_store.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub(crate) struct ExpertLoc {
[INFO] [stdout]    |                   --------- field in this struct
[INFO] [stdout] 67 |     pub parts: [Part; 3],
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExpertLoc` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `total`, `span`, and `contiguous` are never used
[INFO] [stdout]   --> src/expert_store.rs:71:8
[INFO] [stdout]    |
[INFO] [stdout] 70 | impl ExpertLoc {
[INFO] [stdout]    | -------------- methods in this implementation
[INFO] [stdout] 71 |     fn total(&self) -> usize {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     fn span(&self) -> (u64, u64) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 85 |     fn contiguous(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `slot_bytes_for` is never used
[INFO] [stdout]   --> src/expert_store.rs:95:4
[INFO] [stdout]    |
[INFO] [stdout] 95 | fn slot_bytes_for(max_total: usize) -> usize {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AlignedBuf` is never constructed
[INFO] [stdout]    --> src/expert_store.rs:100:8
[INFO] [stdout]     |
[INFO] [stdout] 100 | struct AlignedBuf {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `empty`, `ensure`, and `free` are never used
[INFO] [stdout]    --> src/expert_store.rs:106:14
[INFO] [stdout]     |
[INFO] [stdout] 105 | impl AlignedBuf {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 106 |     const fn empty() -> Self {
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     fn ensure(&mut self, n: usize) -> &mut [u8] {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     fn free(&mut self) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Mmap`, `Pread`, and `Direct` are never constructed
[INFO] [stdout]    --> src/expert_store.rs:149:5
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub(crate) enum IoMode {
[INFO] [stdout]     |                 ------ variants in this enum
[INFO] [stdout] 148 |     /// copy out of the memory map (page faults on a miss)
[INFO] [stdout] 149 |     Mmap,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 150 |     /// one positioned read per expert through the page cache
[INFO] [stdout] 151 |     Pread,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 152 |     /// page cache when it has the bytes, else O_DIRECT (Linux)
[INFO] [stdout] 153 |     Direct,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `IoMode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pread_full` is never used
[INFO] [stdout]    --> src/expert_store.rs:157:4
[INFO] [stdout]     |
[INFO] [stdout] 157 | fn pread_full(f: &std::fs::File, buf: &mut [u8], off: u64) -> std::io::Result<usize> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pread_cached` is never used
[INFO] [stdout]    --> src/expert_store.rs:177:4
[INFO] [stdout]     |
[INFO] [stdout] 177 | fn pread_cached(f: &std::fs::File, buf: &mut [u8], off: u64) -> Result<usize, ()> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `model`, `mode`, `file`, `direct`, `direct_broken`, and `nowait_ok` are never read
[INFO] [stdout]    --> src/expert_store.rs:213:5
[INFO] [stdout]     |
[INFO] [stdout] 212 | pub(crate) struct FileReader {
[INFO] [stdout]     |                   ---------- fields in this struct
[INFO] [stdout] 213 |     model: Arc<CmfModel>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 214 |     mode: IoMode,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 215 |     file: Option<std::fs::File>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 216 |     #[cfg(target_os = "linux")]
[INFO] [stdout] 217 |     direct: Option<std::fs::File>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 218 |     /// O_DIRECT failed once (filesystem without support): buffered from then on
[INFO] [stdout] 219 |     direct_broken: AtomicBool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 222 |     nowait_ok: AtomicBool,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `open`, `mode`, `read`, `read_span`, `resident`, and `read_mmap` are never used
[INFO] [stdout]    --> src/expert_store.rs:226:19
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl FileReader {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 226 |     pub(crate) fn open(model: &Arc<CmfModel>) -> Self {
[INFO] [stdout]     |                   ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 258 |     pub(crate) fn mode(&self) -> IoMode {
[INFO] [stdout]     |                   ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |     fn read(&self, loc: &ExpertLoc, buf: &mut [u8]) -> Option<(Ranges, bool)> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 307 |     fn read_span(&self, s: u64, e: u64, s_al: u64, buf: &mut [u8]) -> Option<bool> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 359 |     fn resident(&self, s: u64, len: usize) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 375 |     fn read_mmap(&self, loc: &ExpertLoc, buf: &mut [u8]) -> Option<Ranges> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/expert_store.rs:397:5
[INFO] [stdout]     |
[INFO] [stdout] 395 | struct Meta {
[INFO] [stdout]     |        ---- fields in this struct
[INFO] [stdout] 396 |     /// key → slot, for slots whose bytes are complete
[INFO] [stdout] 397 |     slot_of: Vec<u32>,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 398 |     /// slot → key (u32::MAX = free)
[INFO] [stdout] 399 |     key_of: Vec<u32>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 400 |     valid: Vec<bool>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 401 |     pins: Vec<u32>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 402 |     last: Vec<u64>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 403 |     ranges: Vec<Ranges>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 404 |     /// per key: the VRAM arena holds it (its copy here is redundant)
[INFO] [stdout] 405 |     in_vram: Vec<bool>,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 406 |     free: Vec<u32>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 407 |     clock: u64,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 408 |     cursor: usize,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 409 |     /// slots ever handed out (the high-water mark of allocated segments)
[INFO] [stdout] 410 |     touched: usize,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `cap` and `meta` are never read
[INFO] [stdout]    --> src/expert_store.rs:415:5
[INFO] [stdout]     |
[INFO] [stdout] 413 | pub(crate) struct RamTier {
[INFO] [stdout]     |                   ------- fields in this struct
[INFO] [stdout] 414 |     slot_bytes: usize,
[INFO] [stdout] 415 |     cap: usize,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] ...
[INFO] [stdout] 418 |     meta: Mutex<Meta>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/expert_store.rs:422:8
[INFO] [stdout]     |
[INFO] [stdout] 421 | impl RamTier {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 422 |     fn new(n_keys: usize, cap: usize, slot_bytes: usize) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 447 |     fn slot_ptr(&self, slot: usize) -> Option<*mut u8> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 465 |     fn lookup_pin(&self, key: usize) -> Option<(usize, Ranges)> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 478 |     fn unpin(&self, slot: usize) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 486 |     fn reserve(&self, key: usize, evict_cold: bool) -> Option<usize> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 510 |     fn pick_victim(m: &mut Meta, cap: usize, evict_cold: bool) -> Option<usize> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 536 |     fn commit(&self, slot: usize, key: usize, ranges: Option<Ranges>) {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 558 |     fn holds(&self, key: usize) -> bool {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 564 |     fn usage(&self) -> (usize, usize, usize) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ram_hits`, `file_reads`, `cache_hits`, `file_bytes`, `file_ns`, and `bg_loads` are never read
[INFO] [stdout]    --> src/expert_store.rs:596:9
[INFO] [stdout]     |
[INFO] [stdout] 595 | pub(crate) struct StoreStats {
[INFO] [stdout]     |                   ---------- fields in this struct
[INFO] [stdout] 596 |     pub ram_hits: AtomicU64,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 597 |     pub file_reads: AtomicU64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 598 |     pub cache_hits: AtomicU64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 599 |     pub file_bytes: AtomicU64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 600 |     pub file_ns: AtomicU64,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 601 |     pub bg_loads: AtomicU64,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `urgent` and `warm` are never read
[INFO] [stdout]    --> src/expert_store.rs:606:5
[INFO] [stdout]     |
[INFO] [stdout] 604 | struct Background {
[INFO] [stdout]     |        ---------- fields in this struct
[INFO] [stdout] 605 |     /// experts the arena just evicted: wanted back soon
[INFO] [stdout] 606 |     urgent: VecDeque<u32>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 607 |     /// warm-up order (profile ranking, then the rest)
[INFO] [stdout] 608 |     warm: VecDeque<u32>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/expert_store.rs:613:5
[INFO] [stdout]     |
[INFO] [stdout] 612 | pub(crate) struct ExpertStore {
[INFO] [stdout]     |                   ----------- fields in this struct
[INFO] [stdout] 613 |     reader: FileReader,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 614 |     locs: Vec<Option<ExpertLoc>>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 615 |     n_experts: usize,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 616 |     slot_bytes: usize,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 617 |     tier: Option<RamTier>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 618 |     pub stats: StoreStats,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 622 |     fg_reads: AtomicU64,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 623 |     /// page-cache mode: release / prefetch file pages as the arena moves
[INFO] [stdout] 624 |     hints: bool,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 625 |     file: Option<std::fs::File>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Foreground` is never constructed
[INFO] [stdout]    --> src/expert_store.rs:629:8
[INFO] [stdout]     |
[INFO] [stdout] 629 | struct Foreground<'a>(&'a AtomicU64);
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `enter` is never used
[INFO] [stdout]    --> src/expert_store.rs:632:8
[INFO] [stdout]     |
[INFO] [stdout] 631 | impl<'a> Foreground<'a> {
[INFO] [stdout]     | ----------------------- associated function in this implementation
[INFO] [stdout] 632 |     fn enter(c: &'a AtomicU64) -> Self {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `host_available_bytes` is never used
[INFO] [stdout]    --> src/expert_store.rs:647:15
[INFO] [stdout]     |
[INFO] [stdout] 647 | pub(crate) fn host_available_bytes() -> Option<u64> {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]     --> src/expert_store.rs:694:19
[INFO] [stdout]      |
[INFO] [stdout]  690 | impl ExpertStore {
[INFO] [stdout]      | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  694 |     pub(crate) fn new(
[INFO] [stdout]      |                   ^^^
[INFO] [stdout] ...
[INFO] [stdout]  767 |     pub(crate) fn io_mode(&self) -> IoMode {
[INFO] [stdout]      |                   ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  771 |     pub(crate) fn tier_capacity(&self) -> usize {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  775 |     fn key(&self, layer: usize, expert: usize) -> usize {
[INFO] [stdout]      |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  782 |     pub(crate) fn with_expert<R>(
[INFO] [stdout]      |                   ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  833 |     fn with_mapped<R>(&self, loc: &ExpertLoc, f: impl FnOnce([&[u8]; 3]) -> R) -> Option<R> {
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  856 |     pub(crate) fn prefetch(&self, layer: usize, experts: &[usize]) {
[INFO] [stdout]      |                   ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  868 |     fn read_file(&self, loc: &ExpertLoc, buf: &mut [u8]) -> Option<Ranges> {
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  885 |     pub(crate) fn note_vram(&self, layer: usize, expert: usize, resident: bool) {
[INFO] [stdout]      |                   ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  914 |     fn advise(&self, loc: &ExpertLoc, in_vram: bool) {
[INFO] [stdout]      |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  940 |     pub(crate) fn start_background(self: &Arc<Self>, order: Vec<(usize, usize)>) {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  964 |     fn loader(me: std::sync::Weak<Self>) {
[INFO] [stdout]      |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1039 |     pub(crate) fn report(&self) -> String {
[INFO] [stdout]      |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split` is never used
[INFO] [stdout]     --> src/expert_store.rs:1070:4
[INFO] [stdout]      |
[INFO] [stdout] 1070 | fn split<'a>(buf: &'a [u8], r: &Ranges) -> [&'a [u8]; 3] {
[INFO] [stdout]      |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `willneed_on` is never used
[INFO] [stdout]     --> src/expert_store.rs:1076:4
[INFO] [stdout]      |
[INFO] [stdout] 1076 | fn willneed_on() -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `will_need` is never used
[INFO] [stdout]     --> src/expert_store.rs:1083:4
[INFO] [stdout]      |
[INFO] [stdout] 1083 | fn will_need(bytes: &[u8], loc: &ExpertLoc) {
[INFO] [stdout]      |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `advise_random` is never used
[INFO] [stdout]     --> src/expert_store.rs:1105:15
[INFO] [stdout]      |
[INFO] [stdout] 1105 | pub(crate) fn advise_random(model: &CmfModel, pred: impl Fn(&str) -> bool) -> usize {
[INFO] [stdout]      |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `rope_tab` is never read
[INFO] [stdout]    --> src/fcd.rs:338:5
[INFO] [stdout]     |
[INFO] [stdout] 311 | pub struct FcdModel {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 338 |     rope_tab: std::sync::Mutex<Option<(usize, std::sync::Arc<Vec<f32>>)>>,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `probe_note_cold` is never used
[INFO] [stdout]    --> src/gpu.rs:378:15
[INFO] [stdout]     |
[INFO] [stdout] 378 | pub(crate) fn probe_note_cold() {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mimo_attention_scratch_enabled` is never used
[INFO] [stdout]     --> src/gpu.rs:1929:15
[INFO] [stdout]      |
[INFO] [stdout] 1929 | pub(crate) fn mimo_attention_scratch_enabled() -> bool {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fp_bytes` is never used
[INFO] [stdout]     --> src/gpu.rs:3931:15
[INFO] [stdout]      |
[INFO] [stdout] 3931 | pub(crate) fn fp_bytes(data: &[u8]) -> u64 {
[INFO] [stdout]      |               ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fp_f32` is never used
[INFO] [stdout]     --> src/gpu.rs:3958:15
[INFO] [stdout]      |
[INFO] [stdout] 3958 | pub(crate) fn fp_f32(data: &[f32]) -> u64 {
[INFO] [stdout]      |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `has_lora`, `add_lora`, and `add_bias` are never used
[INFO] [stdout]    --> src/ltxdit.rs:195:19
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl Lin {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub(crate) fn has_lora(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 |     pub(crate) fn add_lora(&self, out: &mut [f32], x: &[f32], n: usize, pool: Option<&Pool>) {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 214 |     pub(crate) fn add_bias(&self, out: &mut [f32], n: usize, pool: Option<&Pool>) {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/ltxlora.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct LoraBranch {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 40 |     id: usize,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `mapped_bytes` is never read
[INFO] [stdout]    --> src/ltxte.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub struct LtxTextEncoder {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] 123 |     embed: QTensor,
[INFO] [stdout] 124 |     mapped_bytes: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `spec_q`, `spec_p`, `spec_res`, `spec_qs`, `spec_ps`, and `spec_ress` are never read
[INFO] [stdout]    --> src/pipeline.rs:248:5
[INFO] [stdout]     |
[INFO] [stdout]  54 | pub struct Pipeline {
[INFO] [stdout]     |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 248 |     spec_q: Vec<Vec<f32>>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 249 |     spec_p: Vec<f32>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 250 |     spec_res: Vec<f32>,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 251 |     /// The same three for the sparse chain (top-k configs).
[INFO] [stdout] 252 |     spec_qs: Vec<sampler::Sparse>,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 253 |     spec_ps: sampler::Sparse,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 254 |     spec_ress: sampler::Sparse,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `t0`, `gen0`, and `rounds` are never read
[INFO] [stdout]    --> src/pipeline.rs:950:9
[INFO] [stdout]     |
[INFO] [stdout] 949 |     Spec {
[INFO] [stdout]     |     ---- fields in this variant
[INFO] [stdout] 950 |         t0: std::time::Instant,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 951 |         gen0: usize,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 952 |         rounds: usize,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SpecTrial` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Plain` is never constructed
[INFO] [stdout]    --> src/pipeline.rs:954:5
[INFO] [stdout]     |
[INFO] [stdout] 948 | enum SpecTrial {
[INFO] [stdout]     |      --------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 954 |     Plain {
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SpecTrial` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `spec_time_level` is never used
[INFO] [stdout]    --> src/pipeline.rs:967:15
[INFO] [stdout]     |
[INFO] [stdout] 967 | pub(crate) fn spec_time_level() -> u8 {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SpecStampLog` is never constructed
[INFO] [stdout]    --> src/pipeline.rs:980:8
[INFO] [stdout]     |
[INFO] [stdout] 980 | struct SpecStampLog {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `SPEC_STAMPS` is never used
[INFO] [stdout]    --> src/pipeline.rs:985:8
[INFO] [stdout]     |
[INFO] [stdout] 985 | static SPEC_STAMPS: std::sync::Mutex<Option<SpecStampLog>> = std::sync::Mutex::new(None);
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `spec_stamp` is never used
[INFO] [stdout]    --> src/pipeline.rs:987:15
[INFO] [stdout]     |
[INFO] [stdout] 987 | pub(crate) fn spec_stamp(name: &'static str) {
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `spec_stamps_begin` is never used
[INFO] [stdout]     --> src/pipeline.rs:1001:4
[INFO] [stdout]      |
[INFO] [stdout] 1001 | fn spec_stamps_begin() {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `spec_stamps_take` is never used
[INFO] [stdout]     --> src/pipeline.rs:1013:4
[INFO] [stdout]      |
[INFO] [stdout] 1013 | fn spec_stamps_take() -> Vec<(&'static str, f32)> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `spec_stamps_format` is never used
[INFO] [stdout]     --> src/pipeline.rs:1024:4
[INFO] [stdout]      |
[INFO] [stdout] 1024 | fn spec_stamps_format(items: &[(&'static str, f32)]) -> String {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `round` is never used
[INFO] [stdout]     --> src/pipeline.rs:1085:8
[INFO] [stdout]      |
[INFO] [stdout] 1084 | impl SpecMon {
[INFO] [stdout]      | ------------ method in this implementation
[INFO] [stdout] 1085 |     fn round(&mut self, dt_ms: f64, produced: usize) {
[INFO] [stdout]      |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `spec_trial_round`, `MTP_LAYER_BASE`, `graph_gdn_layer_count`, `mtp_block_input`, `draft_head_rows`, and `mtp_chain_on` are never used
[INFO] [stdout]      --> src/pipeline.rs:5967:8
[INFO] [stdout]       |
[INFO] [stdout]  1540 | impl Pipeline {
[INFO] [stdout]       | ------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  5967 |     fn spec_trial_round(trial: SpecTrial, mon: &mut SpecMon, generated: usize) -> SpecTrial {
[INFO] [stdout]       |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  6061 |     const MTP_LAYER_BASE: usize = 0;
[INFO] [stdout]       |           ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  6099 |     fn graph_gdn_layer_count(&self) -> usize {
[INFO] [stdout]       |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  6112 |     fn mtp_block_input(&mut self, m: &MtpModule, hidden: &[f32], next_token: u32) -> Vec<f32> {
[INFO] [stdout]       |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 12478 |     fn draft_head_rows(&self, head_rows: usize) -> usize {
[INFO] [stdout]       |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 12707 |     fn mtp_chain_on() -> bool {
[INFO] [stdout]       |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `accum_outer` is never used
[INFO] [stdout]      --> src/pipeline.rs:17138:4
[INFO] [stdout]       |
[INFO] [stdout] 17138 | fn accum_outer(
[INFO] [stdout]       |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dequant_dense_f32` is never used
[INFO] [stdout]      --> src/pipeline.rs:18014:4
[INFO] [stdout]       |
[INFO] [stdout] 18014 | fn dequant_dense_f32(d: &DenseFfn) -> (Vec<f32>, Vec<f32>, Vec<f32>) {
[INFO] [stdout]       |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `logits` is never read
[INFO] [stdout]      --> src/pipeline.rs:18225:9
[INFO] [stdout]       |
[INFO] [stdout] 18221 | pub(crate) struct MoeRoute {
[INFO] [stdout]       |                   -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18225 |     pub logits: Vec<f32>,
[INFO] [stdout]       |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `moe_cold_experts_cpu` is never used
[INFO] [stdout]      --> src/pipeline.rs:18497:15
[INFO] [stdout]       |
[INFO] [stdout] 18497 | pub(crate) fn moe_cold_experts_cpu(
[INFO] [stdout]       |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `moe_cold_experts_rows_cpu` is never used
[INFO] [stdout]      --> src/pipeline.rs:18533:15
[INFO] [stdout]       |
[INFO] [stdout] 18533 | pub(crate) fn moe_cold_experts_rows_cpu(
[INFO] [stdout]       |               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `f32_parts`, `q1_parts`, and `q8_row_parts` are never used
[INFO] [stdout]    --> src/qtensor.rs:371:19
[INFO] [stdout]     |
[INFO] [stdout] 180 | impl QTensor {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 371 |     pub(crate) fn f32_parts(&self) -> Option<(&[f32], usize, usize)> {
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 |     pub(crate) fn q1_parts(&self) -> Option<(usize, usize, usize)> {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 479 |     pub(crate) fn q8_row_parts(&self) -> Option<(usize, usize, usize, &[f32])> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SIGN5_I8` is never used
[INFO] [stdout]     --> src/qtensor.rs:7633:7
[INFO] [stdout]      |
[INFO] [stdout] 7633 | const SIGN5_I8: [[i8; 5]; 256] = {
[INFO] [stdout]      |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `expert_ids`, `shared_ids`, and `idx` are never read
[INFO] [stdout]   --> src/qwen4_exp.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct Layer {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 90 |     expert_ids: Vec<(usize, usize, usize)>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 94 |     shared_ids: Option<(usize, usize, usize)>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 95 |     idx: Option<LayerIdx>,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `lm_head_idx`, `embed_idx`, and `skeleton_idxs` are never read
[INFO] [stdout]    --> src/qwen4_exp.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout]  98 | pub struct Globals {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 102 |     lm_head_idx: Option<usize>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 103 |     /// The embedding table, re-read on the card by the MTP draft chain.
[INFO] [stdout] 104 |     embed_idx: Option<usize>,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     skeleton_idxs: Vec<usize>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `gpu_pool`, `picks_prev`, `device_off`, `verify_window`, `window_logits`, and `mtp_tried` are never read
[INFO] [stdout]    --> src/qwen4_exp.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 148 | pub struct State {
[INFO] [stdout]     |            ----- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 152 |     gpu_pool: Option<QwenGpuPool>,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     picks_prev: Vec<Vec<usize>>,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 162 |     /// The device path refused once (setup or mid-token); stay on the host.
[INFO] [stdout] 163 |     device_off: bool,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 173 |     verify_window: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 174 |     window_logits: Vec<Vec<f32>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 177 |     mtp_tried: bool,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `FILL_NS` is never used
[INFO] [stdout]    --> src/qwen4_exp.rs:183:19
[INFO] [stdout]     |
[INFO] [stdout] 183 | pub(crate) static FILL_NS: std::sync::atomic::AtomicU64 = std::sync::atomic::AtomicU64::new(0);
[INFO] [stdout]     |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `FILL_N` is never used
[INFO] [stdout]    --> src/qwen4_exp.rs:184:19
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub(crate) static FILL_N: std::sync::atomic::AtomicU64 = std::sync::atomic::AtomicU64::new(0);
[INFO] [stdout]     |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fill_trace` is never used
[INFO] [stdout]    --> src/qwen4_exp.rs:187:4
[INFO] [stdout]     |
[INFO] [stdout] 187 | fn fill_trace() -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/qwen4_exp.rs:195:16
[INFO] [stdout]     |
[INFO] [stdout] 192 | pub(crate) struct QwenGpuPool {
[INFO] [stdout]     |                   ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub(crate) hold_layers: [Option<usize>; 2],
[INFO] [stdout]     |                ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 |     staging_base: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 200 |     staging: usize,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 207 |     pub(crate) store: Option<Arc<crate::expert_store::ExpertStore>>,
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout] 208 |     pub(crate) segment_slots: usize,
[INFO] [stdout]     |                ^^^^^^^^^^^^^
[INFO] [stdout] 209 |     floor: usize,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 210 |     n_experts: usize,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 211 |     fetch_quota: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 212 |     fetch_min_seen: u16,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 213 |     fetch_max_env: &'static str,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 214 |     fetch_min_env: &'static str,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 215 |     owner: Vec<Option<(usize, usize)>>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 219 |     slot_for: Vec<u32>,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 220 |     shared_slot: Vec<u32>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 221 |     seen: Vec<u16>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 222 |     seen_epoch: Vec<u32>,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     free: Vec<usize>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 226 |     occupancy: Vec<usize>,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 227 |     last: Vec<u64>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 228 |     clock: u64,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bounded_pool_pct` is never used
[INFO] [stdout]    --> src/qwen4_exp.rs:234:4
[INFO] [stdout]     |
[INFO] [stdout] 234 | fn bounded_pool_pct(raw: Option<&str>, default: usize, min: usize, max: usize) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bounded_pool_slots` is never used
[INFO] [stdout]    --> src/qwen4_exp.rs:240:4
[INFO] [stdout]     |
[INFO] [stdout] 240 | fn bounded_pool_slots(raw: Option<&str>, safe: usize, cap_override: bool) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ple_frame_rows` is never used
[INFO] [stdout]     --> src/qwen4_exp.rs:2004:4
[INFO] [stdout]      |
[INFO] [stdout] 2004 | fn ple_frame_rows(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `mapped_device_gemm` is never used
[INFO] [stdout]    --> src/qwen_image_ops.rs:132:19
[INFO] [stdout]     |
[INFO] [stdout]  50 | impl Linear {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub(crate) fn mapped_device_gemm(&self) -> Option<(&Arc<CmfModel>, usize)> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `num_cpus` is never used
[INFO] [stdout]    --> src/runtime.rs:308:4
[INFO] [stdout]     |
[INFO] [stdout] 308 | fn num_cpus() -> usize {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `apply_top_k` is never used
[INFO] [stdout]     --> src/sampler.rs:1097:4
[INFO] [stdout]      |
[INFO] [stdout] 1097 | fn apply_top_k(probs: &mut [f32], k: usize, sel: &mut Vec<f32>) {
[INFO] [stdout]      |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `chunk` is never used
[INFO] [stdout]    --> src/skillbake.rs:513:8
[INFO] [stdout]     |
[INFO] [stdout] 397 | impl Pass<'_> {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 513 |     fn chunk(
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `chatml_fallback` is never used
[INFO] [stdout]     --> src/tokenizer.rs:1199:8
[INFO] [stdout]      |
[INFO] [stdout]  305 | impl Tokenizer {
[INFO] [stdout]      | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1199 |     fn chatml_fallback(&self, messages: &[(String, String)]) -> Vec<u32> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/pipeline.rs:4214:13
[INFO] [stdout]      |
[INFO] [stdout] 4214 |         let mut dsv4_spec_bad = 0usize;
[INFO] [stdout]      |             ----^^^^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/pipeline.rs:4215:13
[INFO] [stdout]      |
[INFO] [stdout] 4215 |         let mut dsv4_spec_retry_at = 0usize;
[INFO] [stdout]      |             ----^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/pipeline.rs:5012:13
[INFO] [stdout]      |
[INFO] [stdout] 5012 |         let mut spec_walls: Vec<f32> = Vec::new();
[INFO] [stdout]      |             ----^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/pipeline.rs:5015:13
[INFO] [stdout]      |
[INFO] [stdout] 5015 |         let mut spec_round_end: Option<std::time::Instant> = None;
[INFO] [stdout]      |             ----^^^^^^^^^^^^^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dsv4_spec_bad`
[INFO] [stdout]     --> src/pipeline.rs:4214:13
[INFO] [stdout]      |
[INFO] [stdout] 4214 |         let mut dsv4_spec_bad = 0usize;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dsv4_spec_bad`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dsv4_spec_retry_at`
[INFO] [stdout]     --> src/pipeline.rs:4215:13
[INFO] [stdout]      |
[INFO] [stdout] 4215 |         let mut dsv4_spec_retry_at = 0usize;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dsv4_spec_retry_at`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `spec_watchdog_off` is assigned to, but never used
[INFO] [stdout]     --> src/pipeline.rs:5009:13
[INFO] [stdout]      |
[INFO] [stdout] 5009 |         let mut spec_watchdog_off = false;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_spec_watchdog_off` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `spec_walls`
[INFO] [stdout]     --> src/pipeline.rs:5012:13
[INFO] [stdout]      |
[INFO] [stdout] 5012 |         let mut spec_walls: Vec<f32> = Vec::new();
[INFO] [stdout]      |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_spec_walls`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `spec_round_end`
[INFO] [stdout]     --> src/pipeline.rs:5015:13
[INFO] [stdout]      |
[INFO] [stdout] 5015 |         let mut spec_round_end: Option<std::time::Instant> = None;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_spec_round_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `spec_watchdog_off` is never read
[INFO] [stdout]     --> src/pipeline.rs:5207:17
[INFO] [stdout]      |
[INFO] [stdout] 5207 | /                 spec_watchdog_off = matches!(
[INFO] [stdout] 5208 | |                     spec_trial,
[INFO] [stdout] 5209 | |                     SpecTrial::Plain { .. } | SpecTrial::Decided { spec: false, .. }
[INFO] [stdout] 5210 | |                 );
[INFO] [stdout]      | |_________________^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `attention_values` is never used
[INFO] [stdout]    --> examples/qwen_image_denoiser_speed_fixture.rs:477:4
[INFO] [stdout]     |
[INFO] [stdout] 477 | fn attention_values(len: usize, seed: usize) -> Vec<f32> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]     --> src/qtensor.rs:5115:5
[INFO] [stdout]      |
[INFO] [stdout] 5115 |     unsafe {
[INFO] [stdout]      |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gpu_serial` is never used
[INFO] [stdout]   --> tests/gpu_q4tp.rs:29:4
[INFO] [stdout]    |
[INFO] [stdout] 29 | fn gpu_serial() -> std::sync::MutexGuard<'static, ()> {
[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 `synth` is never used
[INFO] [stdout]   --> tests/gpu_q4tp.rs:36:4
[INFO] [stdout]    |
[INFO] [stdout] 36 | fn synth(rows: usize, cols: usize) -> Vec<u8> {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tiny_model` is never used
[INFO] [stdout]   --> tests/gpu_q4tp.rs:63:4
[INFO] [stdout]    |
[INFO] [stdout] 63 | fn tiny_model(
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]    --> tests/gpu_q4tp.rs:127:4
[INFO] [stdout]     |
[INFO] [stdout] 127 | fn check(
[INFO] [stdout]     |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_mm` is never used
[INFO] [stdout]    --> tests/gpu_q4tp.rs:457:4
[INFO] [stdout]     |
[INFO] [stdout] 457 | fn check_mm(
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_mm_b` is never used
[INFO] [stdout]    --> tests/gpu_q4tp.rs:468:4
[INFO] [stdout]     |
[INFO] [stdout] 468 | fn check_mm_b(
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]     --> src/qtensor.rs:9786:5
[INFO] [stdout]      |
[INFO] [stdout] 9786 |     unsafe {
[INFO] [stdout]      |     ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hidden`
[INFO] [stdout]     --> src/qwen_image.rs:1188:5
[INFO] [stdout]      |
[INFO] [stdout] 1188 |     hidden: usize,
[INFO] [stdout]      |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_hidden`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/qwen_image.rs:1428:9
[INFO] [stdout]      |
[INFO] [stdout] 1428 |     let mut append = |ids: [i64; 3], cos: &mut Vec<f32>, sin: &mut Vec<f32>| {
[INFO] [stdout]      |         ----^^^^^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> tests/zimage_parity.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |     I64(Vec<usize>, Vec<i64>),
[INFO] [stdout]    |     --- ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 22 -     I64(Vec<usize>, Vec<i64>),
[INFO] [stdout] 22 +     I64((), Vec<i64>),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> tests/zimage_parity.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 |     U8(Vec<usize>, Vec<u8>),
[INFO] [stdout]    |     -- ^^^^^^^^^^  ^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 23 -     U8(Vec<usize>, Vec<u8>),
[INFO] [stdout] 23 +     U8((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/qwen_image_encoder.rs:299:9
[INFO] [stdout]     |
[INFO] [stdout] 299 |     let mut out = if let Some(values) = values {
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `in_channels`
[INFO] [stdout]    --> src/qwen_image_vision.rs:460:13
[INFO] [stdout]     |
[INFO] [stdout] 460 |         let in_channels = cfg_usize_default(cfg, "in_channels", 3);
[INFO] [stdout]     |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_in_channels`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:522:29
[INFO] [stdout]     |
[INFO] [stdout] 522 | ...                   xp.add(i * k + kb),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/zimage.rs:497:5
[INFO] [stdout]     |
[INFO] [stdout] 497 | /     unsafe fn tile(
[INFO] [stdout] 498 | |         x: &[f32],
[INFO] [stdout] 499 | |         w: &[f32],
[INFO] [stdout] 500 | |         y: *mut f32,
[INFO] [stdout] ...   |
[INFO] [stdout] 506 | |         j1: usize,
[INFO] [stdout] 507 | |     ) {
[INFO] [stdout]     | |_____^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:523:29
[INFO] [stdout]     |
[INFO] [stdout] 523 | ...                   xp.add((i + 1) * k + kb),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:524:29
[INFO] [stdout]     |
[INFO] [stdout] 524 | ...                   xp.add((i + 2) * k + kb),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:527:29
[INFO] [stdout]     |
[INFO] [stdout] 527 | ...                   wp.add(j * k + kb),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:528:29
[INFO] [stdout]     |
[INFO] [stdout] 528 | ...                   wp.add((j + 1) * k + kb),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:529:29
[INFO] [stdout]     |
[INFO] [stdout] 529 | ...                   wp.add((j + 2) * k + kb),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:534:38
[INFO] [stdout]     |
[INFO] [stdout] 534 | ...                   let b0 = _mm256_loadu_ps(w0.add(kk));
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:534:54
[INFO] [stdout]     |
[INFO] [stdout] 534 | ...                   let b0 = _mm256_loadu_ps(w0.add(kk));
[INFO] [stdout]     |                                                ^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:535:38
[INFO] [stdout]     |
[INFO] [stdout] 535 | ...                   let b1 = _mm256_loadu_ps(w1.add(kk));
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:535:54
[INFO] [stdout]     |
[INFO] [stdout] 535 | ...                   let b1 = _mm256_loadu_ps(w1.add(kk));
[INFO] [stdout]     |                                                ^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:536:38
[INFO] [stdout]     |
[INFO] [stdout] 536 | ...                   let b2 = _mm256_loadu_ps(w2.add(kk));
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:536:54
[INFO] [stdout]     |
[INFO] [stdout] 536 | ...                   let b2 = _mm256_loadu_ps(w2.add(kk));
[INFO] [stdout]     |                                                ^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:537:38
[INFO] [stdout]     |
[INFO] [stdout] 537 | ...                   let r0 = _mm256_loadu_ps(x0.add(kk));
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:537:54
[INFO] [stdout]     |
[INFO] [stdout] 537 | ...                   let r0 = _mm256_loadu_ps(x0.add(kk));
[INFO] [stdout]     |                                                ^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:541:38
[INFO] [stdout]     |
[INFO] [stdout] 541 | ...                   let r1 = _mm256_loadu_ps(x1.add(kk));
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:541:54
[INFO] [stdout]     |
[INFO] [stdout] 541 | ...                   let r1 = _mm256_loadu_ps(x1.add(kk));
[INFO] [stdout]     |                                                ^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:545:38
[INFO] [stdout]     |
[INFO] [stdout] 545 | ...                   let r2 = _mm256_loadu_ps(x2.add(kk));
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:545:54
[INFO] [stdout]     |
[INFO] [stdout] 545 | ...                   let r2 = _mm256_loadu_ps(x2.add(kk));
[INFO] [stdout]     |                                                ^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:553:33
[INFO] [stdout]     |
[INFO] [stdout] 553 | ...                   *y.add((i + r) * ldy + j + c) += hsum(a[r * 3 + c]);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout]     |
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:553:34
[INFO] [stdout]     |
[INFO] [stdout] 553 | ...                   *y.add((i + r) * ldy + j + c) += hsum(a[r * 3 + c]);
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `zimage::host_gemm::hsum` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:553:66
[INFO] [stdout]     |
[INFO] [stdout] 553 | ...                   *y.add((i + r) * ldy + j + c) += hsum(a[r * 3 + c]);
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:559:49
[INFO] [stdout]     |
[INFO] [stdout] 559 | ...                   let (xr, wr) = (xp.add((i + r) * k + kb), wp.add((j + c) * k + kb));
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:559:75
[INFO] [stdout]     |
[INFO] [stdout] 559 | ...                   let (xr, wr) = (xp.add((i + r) * k + kb), wp.add((j + c) * k + kb));
[INFO] [stdout]     |                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:564:41
[INFO] [stdout]     |
[INFO] [stdout] 564 | ...                   _mm256_loadu_ps(xr.add(kk)),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:564:57
[INFO] [stdout]     |
[INFO] [stdout] 564 | ...                   _mm256_loadu_ps(xr.add(kk)),
[INFO] [stdout]     |                                       ^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:565:41
[INFO] [stdout]     |
[INFO] [stdout] 565 | ...                   _mm256_loadu_ps(wr.add(kk)),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:565:57
[INFO] [stdout]     |
[INFO] [stdout] 565 | ...                   _mm256_loadu_ps(wr.add(kk)),
[INFO] [stdout]     |                                       ^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:570:33
[INFO] [stdout]     |
[INFO] [stdout] 570 | ...                   *y.add((i + r) * ldy + j + c) += hsum(acc);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ dereference of raw pointer
[INFO] [stdout]     |
[INFO] [stdout]     = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:570:34
[INFO] [stdout]     |
[INFO] [stdout] 570 | ...                   *y.add((i + r) * ldy + j + c) += hsum(acc);
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `zimage::host_gemm::hsum` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/zimage.rs:570:66
[INFO] [stdout]     |
[INFO] [stdout] 570 | ...                   *y.add((i + r) * ldy + j + c) += hsum(acc);
[INFO] [stdout]     |                                                        ^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `finish_projection_debug` is never used
[INFO] [stdout]    --> src/attention.rs:945:15
[INFO] [stdout]     |
[INFO] [stdout] 945 | pub(crate) fn finish_projection_debug(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `q4tp_mapped` and `matvec_rows` are never used
[INFO] [stdout]    --> src/dit.rs:61:19
[INFO] [stdout]     |
[INFO] [stdout]  37 | impl Proj {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  61 |     pub(crate) fn q4tp_mapped(&self) -> Option<(&Arc<CmfModel>, usize)> {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     pub(crate) fn matvec_rows(&self, xs: &[f32], b: usize, out: &mut [f32], pool: Option<&Pool>) {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `gpu_block` is never used
[INFO] [stdout]    --> src/dit.rs:727:8
[INFO] [stdout]     |
[INFO] [stdout] 391 | impl NextDit {
[INFO] [stdout]     | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 727 |     fn gpu_block(
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `host_cpu_moe` is never used
[INFO] [stdout]     --> src/dsv4.rs:3108:4
[INFO] [stdout]      |
[INFO] [stdout] 3108 | fn host_cpu_moe() -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `chain_enabled` is never used
[INFO] [stdout]     --> src/dsv4.rs:3113:4
[INFO] [stdout]      |
[INFO] [stdout] 3113 | fn chain_enabled() -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cold_step_block` is never used
[INFO] [stdout]     --> src/dsv4.rs:5544:4
[INFO] [stdout]      |
[INFO] [stdout] 5544 | fn cold_step_block(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dspark_wants` is never used
[INFO] [stdout]     --> src/dsv4.rs:9181:4
[INFO] [stdout]      |
[INFO] [stdout] 9181 | fn dspark_wants(li: usize) -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `gpu_expert_ids` and `gpu_shared_ids` are never read
[INFO] [stdout]    --> src/dsv41.rs:863:5
[INFO] [stdout]     |
[INFO] [stdout] 835 | pub struct Dsv41Layer {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 863 |     gpu_expert_ids: Vec<(usize, usize, usize)>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 864 |     gpu_shared_ids: Option<(usize, usize, usize)>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `note_gpu_moe` is never used
[INFO] [stdout]   --> src/dsv41.rs:83:12
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn note_gpu_moe() {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `note_cold` is never used
[INFO] [stdout]   --> src/dsv41.rs:97:12
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn note_cold(count: usize) {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `note_gpu_attn` is never used
[INFO] [stdout]    --> src/dsv41.rs:103:12
[INFO] [stdout]     |
[INFO] [stdout] 103 |     pub fn note_gpu_attn() {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `note_gpu_attn_fallback` is never used
[INFO] [stdout]    --> src/dsv41.rs:109:12
[INFO] [stdout]     |
[INFO] [stdout] 109 |     pub fn note_gpu_attn_fallback() {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AlignedBuf` is never constructed
[INFO] [stdout]    --> src/expert_store.rs:100:8
[INFO] [stdout]     |
[INFO] [stdout] 100 | struct AlignedBuf {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `empty`, `ensure`, and `free` are never used
[INFO] [stdout]    --> src/expert_store.rs:106:14
[INFO] [stdout]     |
[INFO] [stdout] 105 | impl AlignedBuf {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 106 |     const fn empty() -> Self {
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     fn ensure(&mut self, n: usize) -> &mut [u8] {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     fn free(&mut self) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Mmap`, `Pread`, and `Direct` are never constructed
[INFO] [stdout]    --> src/expert_store.rs:149:5
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub(crate) enum IoMode {
[INFO] [stdout]     |                 ------ variants in this enum
[INFO] [stdout] 148 |     /// copy out of the memory map (page faults on a miss)
[INFO] [stdout] 149 |     Mmap,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 150 |     /// one positioned read per expert through the page cache
[INFO] [stdout] 151 |     Pread,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 152 |     /// page cache when it has the bytes, else O_DIRECT (Linux)
[INFO] [stdout] 153 |     Direct,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `IoMode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pread_full` is never used
[INFO] [stdout]    --> src/expert_store.rs:157:4
[INFO] [stdout]     |
[INFO] [stdout] 157 | fn pread_full(f: &std::fs::File, buf: &mut [u8], off: u64) -> std::io::Result<usize> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pread_cached` is never used
[INFO] [stdout]    --> src/expert_store.rs:177:4
[INFO] [stdout]     |
[INFO] [stdout] 177 | fn pread_cached(f: &std::fs::File, buf: &mut [u8], off: u64) -> Result<usize, ()> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `model`, `mode`, `file`, `direct`, `direct_broken`, and `nowait_ok` are never read
[INFO] [stdout]    --> src/expert_store.rs:213:5
[INFO] [stdout]     |
[INFO] [stdout] 212 | pub(crate) struct FileReader {
[INFO] [stdout]     |                   ---------- fields in this struct
[INFO] [stdout] 213 |     model: Arc<CmfModel>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 214 |     mode: IoMode,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 215 |     file: Option<std::fs::File>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 216 |     #[cfg(target_os = "linux")]
[INFO] [stdout] 217 |     direct: Option<std::fs::File>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 218 |     /// O_DIRECT failed once (filesystem without support): buffered from then on
[INFO] [stdout] 219 |     direct_broken: AtomicBool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 222 |     nowait_ok: AtomicBool,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `open`, `mode`, `read`, `read_span`, `resident`, and `read_mmap` are never used
[INFO] [stdout]    --> src/expert_store.rs:226:19
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl FileReader {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 226 |     pub(crate) fn open(model: &Arc<CmfModel>) -> Self {
[INFO] [stdout]     |                   ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 258 |     pub(crate) fn mode(&self) -> IoMode {
[INFO] [stdout]     |                   ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |     fn read(&self, loc: &ExpertLoc, buf: &mut [u8]) -> Option<(Ranges, bool)> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 307 |     fn read_span(&self, s: u64, e: u64, s_al: u64, buf: &mut [u8]) -> Option<bool> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 359 |     fn resident(&self, s: u64, len: usize) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 375 |     fn read_mmap(&self, loc: &ExpertLoc, buf: &mut [u8]) -> Option<Ranges> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `slot_ptr`, `unpin`, and `usage` are never used
[INFO] [stdout]    --> src/expert_store.rs:447:8
[INFO] [stdout]     |
[INFO] [stdout] 421 | impl RamTier {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 447 |     fn slot_ptr(&self, slot: usize) -> Option<*mut u8> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 478 |     fn unpin(&self, slot: usize) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 564 |     fn usage(&self) -> (usize, usize, usize) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ram_hits`, `file_reads`, `cache_hits`, `file_bytes`, `file_ns`, and `bg_loads` are never read
[INFO] [stdout]    --> src/expert_store.rs:596:9
[INFO] [stdout]     |
[INFO] [stdout] 595 | pub(crate) struct StoreStats {
[INFO] [stdout]     |                   ---------- fields in this struct
[INFO] [stdout] 596 |     pub ram_hits: AtomicU64,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 597 |     pub file_reads: AtomicU64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 598 |     pub cache_hits: AtomicU64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 599 |     pub file_bytes: AtomicU64,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 600 |     pub file_ns: AtomicU64,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 601 |     pub bg_loads: AtomicU64,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `urgent` and `warm` are never read
[INFO] [stdout]    --> src/expert_store.rs:606:5
[INFO] [stdout]     |
[INFO] [stdout] 604 | struct Background {
[INFO] [stdout]     |        ---------- fields in this struct
[INFO] [stdout] 605 |     /// experts the arena just evicted: wanted back soon
[INFO] [stdout] 606 |     urgent: VecDeque<u32>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 607 |     /// warm-up order (profile ranking, then the rest)
[INFO] [stdout] 608 |     warm: VecDeque<u32>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/expert_store.rs:613:5
[INFO] [stdout]     |
[INFO] [stdout] 612 | pub(crate) struct ExpertStore {
[INFO] [stdout]     |                   ----------- fields in this struct
[INFO] [stdout] 613 |     reader: FileReader,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 614 |     locs: Vec<Option<ExpertLoc>>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 615 |     n_experts: usize,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 616 |     slot_bytes: usize,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 617 |     tier: Option<RamTier>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 618 |     pub stats: StoreStats,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 622 |     fg_reads: AtomicU64,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 623 |     /// page-cache mode: release / prefetch file pages as the arena moves
[INFO] [stdout] 624 |     hints: bool,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 625 |     file: Option<std::fs::File>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Foreground` is never constructed
[INFO] [stdout]    --> src/expert_store.rs:629:8
[INFO] [stdout]     |
[INFO] [stdout] 629 | struct Foreground<'a>(&'a AtomicU64);
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `enter` is never used
[INFO] [stdout]    --> src/expert_store.rs:632:8
[INFO] [stdout]     |
[INFO] [stdout] 631 | impl<'a> Foreground<'a> {
[INFO] [stdout]     | ----------------------- associated function in this implementation
[INFO] [stdout] 632 |     fn enter(c: &'a AtomicU64) -> Self {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `host_available_bytes` is never used
[INFO] [stdout]    --> src/expert_store.rs:647:15
[INFO] [stdout]     |
[INFO] [stdout] 647 | pub(crate) fn host_available_bytes() -> Option<u64> {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]     --> src/expert_store.rs:694:19
[INFO] [stdout]      |
[INFO] [stdout]  690 | impl ExpertStore {
[INFO] [stdout]      | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  694 |     pub(crate) fn new(
[INFO] [stdout]      |                   ^^^
[INFO] [stdout] ...
[INFO] [stdout]  767 |     pub(crate) fn io_mode(&self) -> IoMode {
[INFO] [stdout]      |                   ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  771 |     pub(crate) fn tier_capacity(&self) -> usize {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  775 |     fn key(&self, layer: usize, expert: usize) -> usize {
[INFO] [stdout]      |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  782 |     pub(crate) fn with_expert<R>(
[INFO] [stdout]      |                   ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  833 |     fn with_mapped<R>(&self, loc: &ExpertLoc, f: impl FnOnce([&[u8]; 3]) -> R) -> Option<R> {
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  856 |     pub(crate) fn prefetch(&self, layer: usize, experts: &[usize]) {
[INFO] [stdout]      |                   ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  868 |     fn read_file(&self, loc: &ExpertLoc, buf: &mut [u8]) -> Option<Ranges> {
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  885 |     pub(crate) fn note_vram(&self, layer: usize, expert: usize, resident: bool) {
[INFO] [stdout]      |                   ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  914 |     fn advise(&self, loc: &ExpertLoc, in_vram: bool) {
[INFO] [stdout]      |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  940 |     pub(crate) fn start_background(self: &Arc<Self>, order: Vec<(usize, usize)>) {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  964 |     fn loader(me: std::sync::Weak<Self>) {
[INFO] [stdout]      |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1039 |     pub(crate) fn report(&self) -> String {
[INFO] [stdout]      |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split` is never used
[INFO] [stdout]     --> src/expert_store.rs:1070:4
[INFO] [stdout]      |
[INFO] [stdout] 1070 | fn split<'a>(buf: &'a [u8], r: &Ranges) -> [&'a [u8]; 3] {
[INFO] [stdout]      |    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `willneed_on` is never used
[INFO] [stdout]     --> src/expert_store.rs:1076:4
[INFO] [stdout]      |
[INFO] [stdout] 1076 | fn willneed_on() -> bool {
[INFO] [stdout]      |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `will_need` is never used
[INFO] [stdout]     --> src/expert_store.rs:1083:4
[INFO] [stdout]      |
[INFO] [stdout] 1083 | fn will_need(bytes: &[u8], loc: &ExpertLoc) {
[INFO] [stdout]      |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `advise_random` is never used
[INFO] [stdout]     --> src/expert_store.rs:1105:15
[INFO] [stdout]      |
[INFO] [stdout] 1105 | pub(crate) fn advise_random(model: &CmfModel, pred: impl Fn(&str) -> bool) -> usize {
[INFO] [stdout]      |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `rope_tab` is never read
[INFO] [stdout]    --> src/fcd.rs:338:5
[INFO] [stdout]     |
[INFO] [stdout] 311 | pub struct FcdModel {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 338 |     rope_tab: std::sync::Mutex<Option<(usize, std::sync::Arc<Vec<f32>>)>>,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mimo_attention_scratch_enabled` is never used
[INFO] [stdout]     --> src/gpu.rs:1929:15
[INFO] [stdout]      |
[INFO] [stdout] 1929 | pub(crate) fn mimo_attention_scratch_enabled() -> bool {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fp_f32` is never used
[INFO] [stdout]     --> src/gpu.rs:3958:15
[INFO] [stdout]      |
[INFO] [stdout] 3958 | pub(crate) fn fp_f32(data: &[f32]) -> u64 {
[INFO] [stdout]      |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `has_lora`, `add_lora`, and `add_bias` are never used
[INFO] [stdout]    --> src/ltxdit.rs:195:19
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl Lin {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub(crate) fn has_lora(&self) -> bool {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 |     pub(crate) fn add_lora(&self, out: &mut [f32], x: &[f32], n: usize, pool: Option<&Pool>) {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 214 |     pub(crate) fn add_bias(&self, out: &mut [f32], n: usize, pool: Option<&Pool>) {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/ltxlora.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct LoraBranch {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 40 |     id: usize,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `mapped_bytes` is never read
[INFO] [stdout]    --> src/ltxte.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub struct LtxTextEncoder {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] 123 |     embed: QTensor,
[INFO] [stdout] 124 |     mapped_bytes: u64,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `spec_q`, `spec_p`, `spec_res`, `spec_qs`, `spec_ps`, and `spec_ress` are never read
[INFO] [stdout]    --> src/pipeline.rs:248:5
[INFO] [stdout]     |
[INFO] [stdout]  54 | pub struct Pipeline {
[INFO] [stdout]     |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 248 |     spec_q: Vec<Vec<f32>>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 249 |     spec_p: Vec<f32>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 250 |     spec_res: Vec<f32>,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 251 |     /// The same three for the sparse chain (top-k configs).
[INFO] [stdout] 252 |     spec_qs: Vec<sampler::Sparse>,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 253 |     spec_ps: sampler::Sparse,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 254 |     spec_ress: sampler::Sparse,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `t0`, `gen0`, and `rounds` are never read
[INFO] [stdout]    --> src/pipeline.rs:950:9
[INFO] [stdout]     |
[INFO] [stdout] 949 |     Spec {
[INFO] [stdout]     |     ---- fields in this variant
[INFO] [stdout] 950 |         t0: std::time::Instant,
[INFO] [stdout]     |         ^^
[INFO] [stdout] 951 |         gen0: usize,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 952 |         rounds: usize,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SpecTrial` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Plain` is never constructed
[INFO] [stdout]    --> src/pipeline.rs:954:5
[INFO] [stdout]     |
[INFO] [stdout] 948 | enum SpecTrial {
[INFO] [stdout]     |      --------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 954 |     Plain {
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SpecTrial` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `spec_time_level` is never used
[INFO] [stdout]    --> src/pipeline.rs:967:15
[INFO] [stdout]     |
[INFO] [stdout] 967 | pub(crate) fn spec_time_level() -> u8 {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SpecStampLog` is never constructed
[INFO] [stdout]    --> src/pipeline.rs:980:8
[INFO] [stdout]     |
[INFO] [stdout] 980 | struct SpecStampLog {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `SPEC_STAMPS` is never used
[INFO] [stdout]    --> src/pipeline.rs:985:8
[INFO] [stdout]     |
[INFO] [stdout] 985 | static SPEC_STAMPS: std::sync::Mutex<Option<SpecStampLog>> = std::sync::Mutex::new(None);
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `spec_stamp` is never used
[INFO] [stdout]    --> src/pipeline.rs:987:15
[INFO] [stdout]     |
[INFO] [stdout] 987 | pub(crate) fn spec_stamp(name: &'static str) {
[INFO] [stdout]     |               ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `spec_stamps_begin` is never used
[INFO] [stdout]     --> src/pipeline.rs:1001:4
[INFO] [stdout]      |
[INFO] [stdout] 1001 | fn spec_stamps_begin() {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `spec_stamps_take` is never used
[INFO] [stdout]     --> src/pipeline.rs:1013:4
[INFO] [stdout]      |
[INFO] [stdout] 1013 | fn spec_stamps_take() -> Vec<(&'static str, f32)> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `spec_stamps_format` is never used
[INFO] [stdout]     --> src/pipeline.rs:1024:4
[INFO] [stdout]      |
[INFO] [stdout] 1024 | fn spec_stamps_format(items: &[(&'static str, f32)]) -> String {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `round` is never used
[INFO] [stdout]     --> src/pipeline.rs:1085:8
[INFO] [stdout]      |
[INFO] [stdout] 1084 | impl SpecMon {
[INFO] [stdout]      | ------------ method in this implementation
[INFO] [stdout] 1085 |     fn round(&mut self, dt_ms: f64, produced: usize) {
[INFO] [stdout]      |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]      --> src/pipeline.rs:5967:8
[INFO] [stdout]       |
[INFO] [stdout]  1540 | impl Pipeline {
[INFO] [stdout]       | ------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  5967 |     fn spec_trial_round(trial: SpecTrial, mon: &mut SpecMon, generated: usize) -> SpecTrial {
[INFO] [stdout]       |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  6061 |     const MTP_LAYER_BASE: usize = 0;
[INFO] [stdout]       |           ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  6099 |     fn graph_gdn_layer_count(&self) -> usize {
[INFO] [stdout]       |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  6112 |     fn mtp_block_input(&mut self, m: &MtpModule, hidden: &[f32], next_token: u32) -> Vec<f32> {
[INFO] [stdout]       |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 10468 |     pub(crate) fn test_graph_kv_id(&self) -> u64 {
[INFO] [stdout]       |                   ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 12478 |     fn draft_head_rows(&self, head_rows: usize) -> usize {
[INFO] [stdout]       |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 12707 |     fn mtp_chain_on() -> bool {
[INFO] [stdout]       |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `accum_outer` is never used
[INFO] [stdout]      --> src/pipeline.rs:17138:4
[INFO] [stdout]       |
[INFO] [stdout] 17138 | fn accum_outer(
[INFO] [stdout]       |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dequant_dense_f32` is never used
[INFO] [stdout]      --> src/pipeline.rs:18014:4
[INFO] [stdout]       |
[INFO] [stdout] 18014 | fn dequant_dense_f32(d: &DenseFfn) -> (Vec<f32>, Vec<f32>, Vec<f32>) {
[INFO] [stdout]       |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `logits` is never read
[INFO] [stdout]      --> src/pipeline.rs:18225:9
[INFO] [stdout]       |
[INFO] [stdout] 18221 | pub(crate) struct MoeRoute {
[INFO] [stdout]       |                   -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18225 |     pub logits: Vec<f32>,
[INFO] [stdout]       |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `moe_cold_experts_cpu` is never used
[INFO] [stdout]      --> src/pipeline.rs:18497:15
[INFO] [stdout]       |
[INFO] [stdout] 18497 | pub(crate) fn moe_cold_experts_cpu(
[INFO] [stdout]       |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `moe_cold_experts_rows_cpu` is never used
[INFO] [stdout]      --> src/pipeline.rs:18533:15
[INFO] [stdout]       |
[INFO] [stdout] 18533 | pub(crate) fn moe_cold_experts_rows_cpu(
[INFO] [stdout]       |               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `f32_parts`, `q1_parts`, and `q8_row_parts` are never used
[INFO] [stdout]    --> src/qtensor.rs:371:19
[INFO] [stdout]     |
[INFO] [stdout] 180 | impl QTensor {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 371 |     pub(crate) fn f32_parts(&self) -> Option<(&[f32], usize, usize)> {
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 |     pub(crate) fn q1_parts(&self) -> Option<(usize, usize, usize)> {
[INFO] [stdout]     |                   ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 479 |     pub(crate) fn q8_row_parts(&self) -> Option<(usize, usize, usize, &[f32])> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SIGN5_I8` is never used
[INFO] [stdout]     --> src/qtensor.rs:7633:7
[INFO] [stdout]      |
[INFO] [stdout] 7633 | const SIGN5_I8: [[i8; 5]; 256] = {
[INFO] [stdout]      |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `expert_ids`, `shared_ids`, and `idx` are never read
[INFO] [stdout]   --> src/qwen4_exp.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct Layer {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 90 |     expert_ids: Vec<(usize, usize, usize)>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 94 |     shared_ids: Option<(usize, usize, usize)>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 95 |     idx: Option<LayerIdx>,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `lm_head_idx`, `embed_idx`, and `skeleton_idxs` are never read
[INFO] [stdout]    --> src/qwen4_exp.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout]  98 | pub struct Globals {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 102 |     lm_head_idx: Option<usize>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 103 |     /// The embedding table, re-read on the card by the MTP draft chain.
[INFO] [stdout] 104 |     embed_idx: Option<usize>,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     skeleton_idxs: Vec<usize>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `gpu_pool`, `picks_prev`, `device_off`, `verify_window`, `window_logits`, and `mtp_tried` are never read
[INFO] [stdout]    --> src/qwen4_exp.rs:152:5
[INFO] [stdout]     |
[INFO] [stdout] 148 | pub struct State {
[INFO] [stdout]     |            ----- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 152 |     gpu_pool: Option<QwenGpuPool>,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     picks_prev: Vec<Vec<usize>>,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 162 |     /// The device path refused once (setup or mid-token); stay on the host.
[INFO] [stdout] 163 |     device_off: bool,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 173 |     verify_window: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 174 |     window_logits: Vec<Vec<f32>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 177 |     mtp_tried: bool,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `FILL_NS` is never used
[INFO] [stdout]    --> src/qwen4_exp.rs:183:19
[INFO] [stdout]     |
[INFO] [stdout] 183 | pub(crate) static FILL_NS: std::sync::atomic::AtomicU64 = std::sync::atomic::AtomicU64::new(0);
[INFO] [stdout]     |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `FILL_N` is never used
[INFO] [stdout]    --> src/qwen4_exp.rs:184:19
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub(crate) static FILL_N: std::sync::atomic::AtomicU64 = std::sync::atomic::AtomicU64::new(0);
[INFO] [stdout]     |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fill_trace` is never used
[INFO] [stdout]    --> src/qwen4_exp.rs:187:4
[INFO] [stdout]     |
[INFO] [stdout] 187 | fn fill_trace() -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/qwen4_exp.rs:195:16
[INFO] [stdout]     |
[INFO] [stdout] 192 | pub(crate) struct QwenGpuPool {
[INFO] [stdout]     |                   ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub(crate) hold_layers: [Option<usize>; 2],
[INFO] [stdout]     |                ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 |     staging_base: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 200 |     staging: usize,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 207 |     pub(crate) store: Option<Arc<crate::expert_store::ExpertStore>>,
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout] 208 |     pub(crate) segment_slots: usize,
[INFO] [stdout]     |                ^^^^^^^^^^^^^
[INFO] [stdout] 209 |     floor: usize,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 210 |     n_experts: usize,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 211 |     fetch_quota: usize,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 212 |     fetch_min_seen: u16,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] 213 |     fetch_max_env: &'static str,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 214 |     fetch_min_env: &'static str,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 215 |     owner: Vec<Option<(usize, usize)>>,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 219 |     slot_for: Vec<u32>,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 220 |     shared_slot: Vec<u32>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 221 |     seen: Vec<u16>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 222 |     seen_epoch: Vec<u32>,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     free: Vec<usize>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 226 |     occupancy: Vec<usize>,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 227 |     last: Vec<u64>,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 228 |     clock: u64,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ple_frame_rows` is never used
[INFO] [stdout]     --> src/qwen4_exp.rs:2004:4
[INFO] [stdout]      |
[INFO] [stdout] 2004 | fn ple_frame_rows(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `mapped_device_gemm` is never used
[INFO] [stdout]    --> src/qwen_image_ops.rs:132:19
[INFO] [stdout]     |
[INFO] [stdout]  50 | impl Linear {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub(crate) fn mapped_device_gemm(&self) -> Option<(&Arc<CmfModel>, usize)> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `num_cpus` is never used
[INFO] [stdout]    --> src/runtime.rs:308:4
[INFO] [stdout]     |
[INFO] [stdout] 308 | fn num_cpus() -> usize {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `chunk` is never used
[INFO] [stdout]    --> src/skillbake.rs:513:8
[INFO] [stdout]     |
[INFO] [stdout] 397 | impl Pass<'_> {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 513 |     fn chunk(
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `chatml_fallback` is never used
[INFO] [stdout]     --> src/tokenizer.rs:1199:8
[INFO] [stdout]      |
[INFO] [stdout]  305 | impl Tokenizer {
[INFO] [stdout]      | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1199 |     fn chatml_fallback(&self, messages: &[(String, String)]) -> Vec<u32> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 35s
[INFO] running `Command { std: "docker" "inspect" "93d5c3cf95347e77574ac4d47e2f46af351f4be0e4702846211b6d2fd39f415d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "93d5c3cf95347e77574ac4d47e2f46af351f4be0e4702846211b6d2fd39f415d", kill_on_drop: false }`
[INFO] [stdout] 93d5c3cf95347e77574ac4d47e2f46af351f4be0e4702846211b6d2fd39f415d
