[INFO] fetching crate tibet-oomllama 0.1.0...
[INFO] testing tibet-oomllama-0.1.0 against 1.95.0 for beta-1.96-2
[INFO] extracting crate tibet-oomllama 0.1.0 into /workspace/builds/worker-2-tc1/source
[INFO] started tweaking crates.io crate tibet-oomllama 0.1.0
[INFO] finished tweaking crates.io crate tibet-oomllama 0.1.0
[INFO] tweaked toml for crates.io crate tibet-oomllama 0.1.0 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate tibet-oomllama 0.1.0 on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate tibet-oomllama 0.1.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded safetensors v0.4.5
[INFO] [stderr]   Downloaded bindgen_cuda v0.1.6
[INFO] [stderr]   Downloaded zerocopy-derive v0.8.42
[INFO] [stderr]   Downloaded candle-kernels v0.9.2
[INFO] [stderr]   Downloaded gemm-c32 v0.18.2
[INFO] [stderr]   Downloaded gemm v0.19.0
[INFO] [stderr]   Downloaded typed-path v0.12.3
[INFO] [stderr]   Downloaded gemm-f16 v0.18.2
[INFO] [stderr]   Downloaded float8 v0.6.1
[INFO] [stderr]   Downloaded gemm-f16 v0.19.0
[INFO] [stderr]   Downloaded gemm-common v0.19.0
[INFO] [stderr]   Downloaded pulp v0.21.5
[INFO] [stderr]   Downloaded fancy-regex v0.17.0
[INFO] [stderr]   Downloaded candle-nn v0.9.2
[INFO] [stderr]   Downloaded gemm-c64 v0.18.2
[INFO] [stderr]   Downloaded pulp v0.22.2
[INFO] [stderr]   Downloaded gemm-f32 v0.18.2
[INFO] [stderr]   Downloaded gemm-common v0.18.2
[INFO] [stderr]   Downloaded candle-transformers v0.9.2
[INFO] [stderr]   Downloaded gemm-f64 v0.18.2
[INFO] [stderr]   Downloaded ug v0.5.0
[INFO] [stderr]   Downloaded candle-core v0.9.2
[INFO] [stderr]   Downloaded ug-cuda v0.5.0
[INFO] [stderr]   Downloaded zip v7.2.0
[INFO] [stderr]   Downloaded candle-ug v0.9.2
[INFO] [stderr]   Downloaded float8 v0.7.0
[INFO] [stderr]   Downloaded libloading v0.9.0
[INFO] [stderr]   Downloaded gemm-c32 v0.19.0
[INFO] [stderr]   Downloaded cudarc v0.19.3
[INFO] [stderr]   Downloaded dyn-stack v0.13.2
[INFO] [stderr]   Downloaded pulp-wasm-simd-flag v0.1.0
[INFO] [stderr]   Downloaded gemm-f64 v0.19.0
[INFO] [stderr]   Downloaded zerocopy v0.8.42
[INFO] [stderr]   Downloaded gemm v0.18.2
[INFO] [stderr]   Downloaded gemm-c64 v0.19.0
[INFO] [stderr]   Downloaded gemm-f32 v0.19.0
[INFO] [stderr]   Downloaded dyn-stack-macros v0.1.3
[INFO] [stderr]   Downloaded reborrow v0.5.5
[INFO] [stderr]   Downloaded cudarc v0.17.8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fcb4a422b6de061eae39e94c4e4f77b2e1e459d19165a985e3593912d9ad4127
[INFO] running `Command { std: "docker" "start" "-a" "fcb4a422b6de061eae39e94c4e4f77b2e1e459d19165a985e3593912d9ad4127", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fcb4a422b6de061eae39e94c4e4f77b2e1e459d19165a985e3593912d9ad4127", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fcb4a422b6de061eae39e94c4e4f77b2e1e459d19165a985e3593912d9ad4127", kill_on_drop: false }`
[INFO] [stdout] fcb4a422b6de061eae39e94c4e4f77b2e1e459d19165a985e3593912d9ad4127
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 48ddfa6d80432744c4166405d9808761bb4fce54221defc496be630a3565c23d
[INFO] running `Command { std: "docker" "start" "-a" "48ddfa6d80432744c4166405d9808761bb4fce54221defc496be630a3565c23d", kill_on_drop: false }`
[INFO] [stderr]    Compiling zerocopy v0.8.42
[INFO] [stderr]    Compiling libm v0.2.16
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stderr]    Compiling pulp v0.22.2
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling zerocopy-derive v0.8.42
[INFO] [stderr]    Compiling bytemuck_derive v1.10.2
[INFO] [stderr]    Compiling tokio-macros v2.6.1
[INFO] [stderr]    Compiling raw-cpuid v11.6.0
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling pulp-wasm-simd-flag v0.1.0
[INFO] [stderr]    Compiling dyn-stack-macros v0.1.3
[INFO] [stderr]    Compiling reborrow v0.5.5
[INFO] [stderr]    Compiling http v1.4.0
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling tokio v1.50.0
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling indexmap v2.13.0
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling bytemuck v1.25.0
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling onig_sys v69.9.1
[INFO] [stderr]    Compiling dyn-stack v0.13.2
[INFO] [stderr]    Compiling simd-adler32 v0.3.8
[INFO] [stderr]    Compiling rustls v0.23.37
[INFO] [stderr]    Compiling typed-path v0.12.3
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling safetensors v0.7.0
[INFO] [stderr]    Compiling webpki-roots v1.0.6
[INFO] [stderr]    Compiling memmap2 v0.9.10
[INFO] [stderr]    Compiling esaxx-rs v0.1.10
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling zip v7.2.0
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling option-ext v0.2.0
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling webpki-roots v0.26.11
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling socks v0.3.4
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling console v0.15.11
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling monostate-impl v0.1.18
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling number_prefix v0.4.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling base64 v0.13.1
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling macro_rules_attribute-proc_macro v0.2.2
[INFO] [stderr]    Compiling indicatif v0.17.11
[INFO] [stderr]    Compiling derive_builder_core v0.20.2
[INFO] [stderr]    Compiling monostate v0.1.18
[INFO] [stderr]    Compiling macro_rules_attribute v0.2.2
[INFO] [stderr]    Compiling compact_str v0.9.0
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling dirs v6.0.0
[INFO] [stderr]    Compiling serde_plain v1.0.2
[INFO] [stderr]    Compiling dary_heap v0.3.8
[INFO] [stderr]    Compiling unicode-normalization-alignments v0.1.12
[INFO] [stderr]    Compiling spm_precompiled v0.1.4
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling uuid v1.22.0
[INFO] [stderr]    Compiling safetensors v0.4.5
[INFO] [stderr]    Compiling derive_builder_macro v0.20.2
[INFO] [stderr]    Compiling rustls-webpki v0.103.9
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling rayon-cond v0.4.0
[INFO] [stderr]    Compiling fancy-regex v0.17.0
[INFO] [stderr]    Compiling derive_builder v0.20.2
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling onig v6.5.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling h2 v0.4.13
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling rand_distr v0.5.1
[INFO] [stderr]    Compiling tokenizers v0.22.2
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling gemm-common v0.19.0
[INFO] [stderr]    Compiling float8 v0.6.1
[INFO] [stderr]    Compiling gemm-f32 v0.19.0
[INFO] [stderr]    Compiling gemm-f64 v0.19.0
[INFO] [stderr]    Compiling gemm-c32 v0.19.0
[INFO] [stderr]    Compiling gemm-c64 v0.19.0
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling gemm-f16 v0.19.0
[INFO] [stderr]    Compiling ureq v2.12.1
[INFO] [stderr]    Compiling gemm v0.19.0
[INFO] [stderr]    Compiling candle-core v0.9.2
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling hf-hub v0.4.3
[INFO] [stderr]    Compiling candle-nn v0.9.2
[INFO] [stderr]    Compiling candle-transformers v0.9.2
[INFO] [stderr]    Compiling tibet-oomllama v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Read`, `SeekFrom`, and `Seek`
[INFO] [stdout]   --> src/oom_inference.rs:12:15
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::io::{Read, Seek, SeekFrom};
[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: `candle_nn::VarBuilder`
[INFO] [stdout]   --> src/oomllama.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use candle_nn::VarBuilder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Cache`
[INFO] [stdout]   --> src/oomllama.rs:13:50
[INFO] [stdout]    |
[INFO] [stdout] 13 | use candle_transformers::models::llama::{Config, Cache, LlamaEosToks};
[INFO] [stdout]    |                                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]   --> src/oomllama.rs:20:22
[INFO] [stdout]    |
[INFO] [stdout] 20 | use std::sync::{Arc, Mutex};
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/oomllama.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Shape`
[INFO] [stdout]   --> src/oomllama_turbo.rs:14:42
[INFO] [stdout]    |
[INFO] [stdout] 14 | use candle_core::{Device, Tensor, DType, Shape, D};
[INFO] [stdout]    |                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `RwLock`
[INFO] [stdout]   --> src/oomllama_turbo.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::sync::{Arc, RwLock};
[INFO] [stdout]    |                 ^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Read`, `SeekFrom`, and `Seek`
[INFO] [stdout]  --> src/gguf2oom.rs:9:26
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::io::{BufWriter, Read, Write, Seek, SeekFrom};
[INFO] [stdout]   |                          ^^^^         ^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Q2_K` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Q2_K = 10,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Q2K`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Q3_K` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     Q3_K = 11,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Q3K`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Q4_K` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     Q4_K = 12,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Q4K`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Q5_K` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     Q5_K = 13,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Q5K`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Q6_K` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     Q6_K = 14,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Q6K`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Q8_K` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     Q8_K = 15,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Q8K`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ2_XXS` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     IQ2_XXS = 16,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case: `Iq2Xxs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ2_XS` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     IQ2_XS = 17,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case: `Iq2Xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ3_XXS` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 |     IQ3_XXS = 18,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case: `Iq3Xxs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ1_S` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     IQ1_S = 19,
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case: `Iq1S`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ4_NL` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 |     IQ4_NL = 20,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case: `Iq4Nl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ3_S` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 44 |     IQ3_S = 21,
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case: `Iq3S`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ2_S` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     IQ2_S = 22,
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case: `Iq2S`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ4_XS` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     IQ4_XS = 23,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case: `Iq4Xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/gguf2oom.rs:713:21
[INFO] [stdout]     |
[INFO] [stdout] 713 |                     (norm.round() as u8)
[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] 713 -                     (norm.round() as u8)
[INFO] [stdout] 713 +                     norm.round() as u8
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/safetensors2oom.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_tensors`
[INFO] [stdout]    --> src/oom_inference.rs:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |         let n_tensors = u32::from_le_bytes(mmap[8..12].try_into()?);
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_tensors`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_kv`
[INFO] [stdout]    --> src/oom_inference.rs:309:13
[INFO] [stdout]     |
[INFO] [stdout] 309 |         let n_kv = u32::from_le_bytes(mmap[12..16].try_into()?);
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_n_kv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scale_vec`
[INFO] [stdout]   --> src/quant.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |     let scale_vec = _mm256_set1_ps(scale);
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_scale_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `min_vec`
[INFO] [stdout]   --> src/quant.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let min_vec = _mm256_set1_ps(min);
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lookup`
[INFO] [stdout]   --> src/quant.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let lookup = _mm256_setr_epi32(0, 1, 2, 3, 0, 1, 2, 3);
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_lookup`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bytes`
[INFO] [stdout]   --> src/quant.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |         let bytes = _mm_loadl_epi64(data.as_ptr().add(byte_idx) as *const __m128i);
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_bytes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row1`
[INFO] [stdout]    --> src/oomllama.rs:668:17
[INFO] [stdout]     |
[INFO] [stdout] 668 |             let row1 = cpu_tensor.narrow(0, 1, 1)?.flatten_all()?.to_vec1::<f32>()?;
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_row1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `emb_min`
[INFO] [stdout]    --> src/oomllama.rs:770:17
[INFO] [stdout]     |
[INFO] [stdout] 770 |             let emb_min = emb_flat.iter().cloned().fold(f32::INFINITY, f32::min);
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_emb_min`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `emb_max`
[INFO] [stdout]    --> src/oomllama.rs:771:17
[INFO] [stdout]     |
[INFO] [stdout] 771 |             let emb_max = emb_flat.iter().cloned().fold(f32::NEG_INFINITY, f32::max);
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_emb_max`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch`
[INFO] [stdout]    --> src/oomllama_turbo.rs:467:10
[INFO] [stdout]     |
[INFO] [stdout] 467 |     let (batch, n_heads, seq_len, head_dim) = x.dims4()?;
[INFO] [stdout]     |          ^^^^^ help: if this is intentional, prefix it with an underscore: `_batch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_heads`
[INFO] [stdout]    --> src/oomllama_turbo.rs:467:17
[INFO] [stdout]     |
[INFO] [stdout] 467 |     let (batch, n_heads, seq_len, head_dim) = x.dims4()?;
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_heads`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `q_inf`
[INFO] [stdout]    --> src/oomllama_turbo.rs:676:17
[INFO] [stdout]     |
[INFO] [stdout] 676 |             let q_inf = q_flat.iter().any(|v| v.is_infinite());
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_q_inf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k_inf`
[INFO] [stdout]    --> src/oomllama_turbo.rs:677:17
[INFO] [stdout]     |
[INFO] [stdout] 677 |             let k_inf = k_flat.iter().any(|v| v.is_infinite());
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_k_inf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]    --> src/oomllama_turbo.rs:799:17
[INFO] [stdout]     |
[INFO] [stdout] 799 |             let rows = wq.dim(0)?;
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `col_sum`
[INFO] [stdout]    --> src/oomllama_turbo.rs:804:21
[INFO] [stdout]     |
[INFO] [stdout] 804 |                 let col_sum: f32 = col.iter().sum();
[INFO] [stdout]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_col_sum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row_mean`
[INFO] [stdout]    --> src/oomllama_turbo.rs:821:21
[INFO] [stdout]     |
[INFO] [stdout] 821 |                 let row_mean = row_sum / row.len() as f32;
[INFO] [stdout]     |                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_row_mean`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row_min`
[INFO] [stdout]    --> src/oomllama_turbo.rs:822:21
[INFO] [stdout]     |
[INFO] [stdout] 822 |                 let row_min = row.iter().cloned().fold(f32::INFINITY, f32::min);
[INFO] [stdout]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_row_min`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row_max`
[INFO] [stdout]    --> src/oomllama_turbo.rs:823:21
[INFO] [stdout]     |
[INFO] [stdout] 823 |                 let row_max = row.iter().cloned().fold(f32::NEG_INFINITY, f32::max);
[INFO] [stdout]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_row_max`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]    --> src/oomllama_turbo.rs:842:17
[INFO] [stdout]     |
[INFO] [stdout] 842 |             let rows = q.dim(0)?;
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `col0`
[INFO] [stdout]    --> src/oomllama_turbo.rs:845:17
[INFO] [stdout]     |
[INFO] [stdout] 845 |             let col0 = q.narrow(1, 0, 1)?.flatten_all()?.to_vec1::<f32>()?;
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_col0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `min_row`
[INFO] [stdout]    --> src/oomllama_turbo.rs:851:17
[INFO] [stdout]     |
[INFO] [stdout] 851 |             let min_row = min_idx / cols;
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `min_col`
[INFO] [stdout]    --> src/oomllama_turbo.rs:852:17
[INFO] [stdout]     |
[INFO] [stdout] 852 |             let min_col = min_idx % cols;
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_col`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_row`
[INFO] [stdout]    --> src/oomllama_turbo.rs:853:17
[INFO] [stdout]     |
[INFO] [stdout] 853 |             let max_row = max_idx / cols;
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w_col_mean`
[INFO] [stdout]    --> src/oomllama_turbo.rs:860:17
[INFO] [stdout]     |
[INFO] [stdout] 860 |             let w_col_mean = w_col_sum / w_col_max.len() as f32;
[INFO] [stdout]     |                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_w_col_mean`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w_col_min`
[INFO] [stdout]    --> src/oomllama_turbo.rs:861:17
[INFO] [stdout]     |
[INFO] [stdout] 861 |             let w_col_min = w_col_max.iter().cloned().fold(f32::INFINITY, f32::min);
[INFO] [stdout]     |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_w_col_min`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w_col_max_v`
[INFO] [stdout]    --> src/oomllama_turbo.rs:862:17
[INFO] [stdout]     |
[INFO] [stdout] 862 |             let w_col_max_v = w_col_max.iter().cloned().fold(f32::NEG_INFINITY, f32::max);
[INFO] [stdout]     |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_w_col_max_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `AllocationRequest` is more private than the item `BettiManager::request`
[INFO] [stdout]   --> src/oomllama.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn request(&self, _req: AllocationRequest) -> Result<BettiStub, String> { Ok(BettiStub { id: Uuid::new_v4() }) }
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `BettiManager::request` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `AllocationRequest` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/oomllama.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub(crate) struct AllocationRequest {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `BettiStub` is more private than the item `BettiManager::request`
[INFO] [stdout]   --> src/oomllama.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn request(&self, _req: AllocationRequest) -> Result<BettiStub, String> { Ok(BettiStub { id: Uuid::new_v4() }) }
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `BettiManager::request` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `BettiStub` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/oomllama.rs:49:1
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub(crate) struct BettiStub { pub id: Uuid }
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_avx512` is never used
[INFO] [stdout]   --> src/quant.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn has_avx512() -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/oomllama.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub(crate) struct AllocationRequest {
[INFO] [stdout]    |                   ----------------- fields in this struct
[INFO] [stdout] 55 |     pub idd_name: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 56 |     pub resource_type: ResourceType,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 57 |     pub amount: f64,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 58 |     pub duration_secs: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 59 |     pub purpose: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 60 |     pub priority: u32,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 61 |     pub humotica: Option<Humotica>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `sense`, `context`, `intent`, and `explanation` are never read
[INFO] [stdout]   --> src/oomllama.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub(crate) struct Humotica {
[INFO] [stdout]    |                   -------- fields in this struct
[INFO] [stdout] 66 |     pub sense: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 67 |     pub context: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 68 |     pub intent: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 69 |     pub explanation: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Humotica` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `loader` is never read
[INFO] [stdout]     --> src/oomllama.rs:1072:5
[INFO] [stdout]      |
[INFO] [stdout] 1059 | pub struct GhostLlama {
[INFO] [stdout]      |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1072 |     loader: Arc<OomLoader>,
[INFO] [stdout]      |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `load_tensor` is never used
[INFO] [stdout]     --> src/oomllama.rs:1642:8
[INFO] [stdout]      |
[INFO] [stdout] 1087 | impl GhostLlama {
[INFO] [stdout]      | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1642 |     fn load_tensor(&self, name: &str) -> Result<Tensor, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `max_seq_len` is never read
[INFO] [stdout]   --> src/oomllama_turbo.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub struct ModelKVCache {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 75 |     layers: Vec<LayerKVCache>,
[INFO] [stdout] 76 |     max_seq_len: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `lookahead` is never read
[INFO] [stdout]    --> src/oomllama_turbo.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 213 | pub struct AsyncPrefetcher {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 217 |     lookahead: usize,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `layer_pin` and `device` are never read
[INFO] [stdout]    --> src/oomllama_turbo.rs:551:5
[INFO] [stdout]     |
[INFO] [stdout] 548 | pub struct TurboEngine {
[INFO] [stdout]     |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 551 |     layer_pin: LayerPin,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 552 |     // prefetcher: Option<AsyncPrefetcher>,
[INFO] [stdout] 553 |     device: Device,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 07s
[INFO] running `Command { std: "docker" "inspect" "48ddfa6d80432744c4166405d9808761bb4fce54221defc496be630a3565c23d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "48ddfa6d80432744c4166405d9808761bb4fce54221defc496be630a3565c23d", kill_on_drop: false }`
[INFO] [stdout] 48ddfa6d80432744c4166405d9808761bb4fce54221defc496be630a3565c23d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 338aade057fd5d9a0819fe8e97b3466fa58de677899e57a8d0f91742a1ef69ea
[INFO] running `Command { std: "docker" "start" "-a" "338aade057fd5d9a0819fe8e97b3466fa58de677899e57a8d0f91742a1ef69ea", kill_on_drop: false }`
[INFO] [stdout] warning: unused imports: `Read`, `SeekFrom`, and `Seek`
[INFO] [stdout]   --> src/oom_inference.rs:12:15
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::io::{Read, Seek, SeekFrom};
[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: `candle_nn::VarBuilder`
[INFO] [stdout]   --> src/oomllama.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use candle_nn::VarBuilder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Cache`
[INFO] [stdout]   --> src/oomllama.rs:13:50
[INFO] [stdout]    |
[INFO] [stdout] 13 | use candle_transformers::models::llama::{Config, Cache, LlamaEosToks};
[INFO] [stdout]    |                                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]   --> src/oomllama.rs:20:22
[INFO] [stdout]    |
[INFO] [stdout] 20 | use std::sync::{Arc, Mutex};
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/oomllama.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Shape`
[INFO] [stdout]   --> src/oomllama_turbo.rs:14:42
[INFO] [stdout]    |
[INFO] [stdout] 14 | use candle_core::{Device, Tensor, DType, Shape, D};
[INFO] [stdout]    |                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `RwLock`
[INFO] [stdout]   --> src/oomllama_turbo.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::sync::{Arc, RwLock};
[INFO] [stdout]    |                 ^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Read`, `SeekFrom`, and `Seek`
[INFO] [stdout]  --> src/gguf2oom.rs:9:26
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::io::{BufWriter, Read, Write, Seek, SeekFrom};
[INFO] [stdout]   |                          ^^^^         ^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Q2_K` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Q2_K = 10,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Q2K`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Q3_K` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     Q3_K = 11,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Q3K`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Q4_K` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     Q4_K = 12,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Q4K`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Q5_K` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     Q5_K = 13,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Q5K`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Q6_K` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     Q6_K = 14,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Q6K`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Q8_K` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     Q8_K = 15,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Q8K`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ2_XXS` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     IQ2_XXS = 16,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case: `Iq2Xxs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ2_XS` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     IQ2_XS = 17,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case: `Iq2Xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ3_XXS` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 |     IQ3_XXS = 18,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case: `Iq3Xxs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ1_S` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     IQ1_S = 19,
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case: `Iq1S`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ4_NL` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 |     IQ4_NL = 20,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case: `Iq4Nl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ3_S` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 44 |     IQ3_S = 21,
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case: `Iq3S`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ2_S` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     IQ2_S = 22,
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case: `Iq2S`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ4_XS` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     IQ4_XS = 23,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case: `Iq4Xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/gguf2oom.rs:713:21
[INFO] [stdout]     |
[INFO] [stdout] 713 |                     (norm.round() as u8)
[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] 713 -                     (norm.round() as u8)
[INFO] [stdout] 713 +                     norm.round() as u8
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/safetensors2oom.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_tensors`
[INFO] [stdout]    --> src/oom_inference.rs:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |         let n_tensors = u32::from_le_bytes(mmap[8..12].try_into()?);
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_tensors`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_kv`
[INFO] [stdout]    --> src/oom_inference.rs:309:13
[INFO] [stdout]     |
[INFO] [stdout] 309 |         let n_kv = u32::from_le_bytes(mmap[12..16].try_into()?);
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_n_kv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scale_vec`
[INFO] [stdout]   --> src/quant.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |     let scale_vec = _mm256_set1_ps(scale);
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_scale_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `min_vec`
[INFO] [stdout]   --> src/quant.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let min_vec = _mm256_set1_ps(min);
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lookup`
[INFO] [stdout]   --> src/quant.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let lookup = _mm256_setr_epi32(0, 1, 2, 3, 0, 1, 2, 3);
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_lookup`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bytes`
[INFO] [stdout]   --> src/quant.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |         let bytes = _mm_loadl_epi64(data.as_ptr().add(byte_idx) as *const __m128i);
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_bytes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row1`
[INFO] [stdout]    --> src/oomllama.rs:668:17
[INFO] [stdout]     |
[INFO] [stdout] 668 |             let row1 = cpu_tensor.narrow(0, 1, 1)?.flatten_all()?.to_vec1::<f32>()?;
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_row1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `emb_min`
[INFO] [stdout]    --> src/oomllama.rs:770:17
[INFO] [stdout]     |
[INFO] [stdout] 770 |             let emb_min = emb_flat.iter().cloned().fold(f32::INFINITY, f32::min);
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_emb_min`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `emb_max`
[INFO] [stdout]    --> src/oomllama.rs:771:17
[INFO] [stdout]     |
[INFO] [stdout] 771 |             let emb_max = emb_flat.iter().cloned().fold(f32::NEG_INFINITY, f32::max);
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_emb_max`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch`
[INFO] [stdout]    --> src/oomllama_turbo.rs:467:10
[INFO] [stdout]     |
[INFO] [stdout] 467 |     let (batch, n_heads, seq_len, head_dim) = x.dims4()?;
[INFO] [stdout]     |          ^^^^^ help: if this is intentional, prefix it with an underscore: `_batch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_heads`
[INFO] [stdout]    --> src/oomllama_turbo.rs:467:17
[INFO] [stdout]     |
[INFO] [stdout] 467 |     let (batch, n_heads, seq_len, head_dim) = x.dims4()?;
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_heads`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `q_inf`
[INFO] [stdout]    --> src/oomllama_turbo.rs:676:17
[INFO] [stdout]     |
[INFO] [stdout] 676 |             let q_inf = q_flat.iter().any(|v| v.is_infinite());
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_q_inf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k_inf`
[INFO] [stdout]    --> src/oomllama_turbo.rs:677:17
[INFO] [stdout]     |
[INFO] [stdout] 677 |             let k_inf = k_flat.iter().any(|v| v.is_infinite());
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_k_inf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]    --> src/oomllama_turbo.rs:799:17
[INFO] [stdout]     |
[INFO] [stdout] 799 |             let rows = wq.dim(0)?;
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `col_sum`
[INFO] [stdout]    --> src/oomllama_turbo.rs:804:21
[INFO] [stdout]     |
[INFO] [stdout] 804 |                 let col_sum: f32 = col.iter().sum();
[INFO] [stdout]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_col_sum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row_mean`
[INFO] [stdout]    --> src/oomllama_turbo.rs:821:21
[INFO] [stdout]     |
[INFO] [stdout] 821 |                 let row_mean = row_sum / row.len() as f32;
[INFO] [stdout]     |                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_row_mean`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row_min`
[INFO] [stdout]    --> src/oomllama_turbo.rs:822:21
[INFO] [stdout]     |
[INFO] [stdout] 822 |                 let row_min = row.iter().cloned().fold(f32::INFINITY, f32::min);
[INFO] [stdout]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_row_min`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row_max`
[INFO] [stdout]    --> src/oomllama_turbo.rs:823:21
[INFO] [stdout]     |
[INFO] [stdout] 823 |                 let row_max = row.iter().cloned().fold(f32::NEG_INFINITY, f32::max);
[INFO] [stdout]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_row_max`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]    --> src/oomllama_turbo.rs:842:17
[INFO] [stdout]     |
[INFO] [stdout] 842 |             let rows = q.dim(0)?;
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `col0`
[INFO] [stdout]    --> src/oomllama_turbo.rs:845:17
[INFO] [stdout]     |
[INFO] [stdout] 845 |             let col0 = q.narrow(1, 0, 1)?.flatten_all()?.to_vec1::<f32>()?;
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_col0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `min_row`
[INFO] [stdout]    --> src/oomllama_turbo.rs:851:17
[INFO] [stdout]     |
[INFO] [stdout] 851 |             let min_row = min_idx / cols;
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `min_col`
[INFO] [stdout]    --> src/oomllama_turbo.rs:852:17
[INFO] [stdout]     |
[INFO] [stdout] 852 |             let min_col = min_idx % cols;
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_col`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_row`
[INFO] [stdout]    --> src/oomllama_turbo.rs:853:17
[INFO] [stdout]     |
[INFO] [stdout] 853 |             let max_row = max_idx / cols;
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w_col_mean`
[INFO] [stdout]    --> src/oomllama_turbo.rs:860:17
[INFO] [stdout]     |
[INFO] [stdout] 860 |             let w_col_mean = w_col_sum / w_col_max.len() as f32;
[INFO] [stdout]     |                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_w_col_mean`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w_col_min`
[INFO] [stdout]    --> src/oomllama_turbo.rs:861:17
[INFO] [stdout]     |
[INFO] [stdout] 861 |             let w_col_min = w_col_max.iter().cloned().fold(f32::INFINITY, f32::min);
[INFO] [stdout]     |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_w_col_min`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w_col_max_v`
[INFO] [stdout]    --> src/oomllama_turbo.rs:862:17
[INFO] [stdout]     |
[INFO] [stdout] 862 |             let w_col_max_v = w_col_max.iter().cloned().fold(f32::NEG_INFINITY, f32::max);
[INFO] [stdout]     |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_w_col_max_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `AllocationRequest` is more private than the item `BettiManager::request`
[INFO] [stdout]   --> src/oomllama.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn request(&self, _req: AllocationRequest) -> Result<BettiStub, String> { Ok(BettiStub { id: Uuid::new_v4() }) }
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `BettiManager::request` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `AllocationRequest` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/oomllama.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub(crate) struct AllocationRequest {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `BettiStub` is more private than the item `BettiManager::request`
[INFO] [stdout]   --> src/oomllama.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn request(&self, _req: AllocationRequest) -> Result<BettiStub, String> { Ok(BettiStub { id: Uuid::new_v4() }) }
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `BettiManager::request` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `BettiStub` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/oomllama.rs:49:1
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub(crate) struct BettiStub { pub id: Uuid }
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_avx512` is never used
[INFO] [stdout]   --> src/quant.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn has_avx512() -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/oomllama.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub(crate) struct AllocationRequest {
[INFO] [stdout]    |                   ----------------- fields in this struct
[INFO] [stdout] 55 |     pub idd_name: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 56 |     pub resource_type: ResourceType,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 57 |     pub amount: f64,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 58 |     pub duration_secs: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 59 |     pub purpose: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 60 |     pub priority: u32,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 61 |     pub humotica: Option<Humotica>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `sense`, `context`, `intent`, and `explanation` are never read
[INFO] [stdout]   --> src/oomllama.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub(crate) struct Humotica {
[INFO] [stdout]    |                   -------- fields in this struct
[INFO] [stdout] 66 |     pub sense: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 67 |     pub context: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 68 |     pub intent: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 69 |     pub explanation: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Humotica` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `loader` is never read
[INFO] [stdout]     --> src/oomllama.rs:1072:5
[INFO] [stdout]      |
[INFO] [stdout] 1059 | pub struct GhostLlama {
[INFO] [stdout]      |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1072 |     loader: Arc<OomLoader>,
[INFO] [stdout]      |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `load_tensor` is never used
[INFO] [stdout]     --> src/oomllama.rs:1642:8
[INFO] [stdout]      |
[INFO] [stdout] 1087 | impl GhostLlama {
[INFO] [stdout]      | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1642 |     fn load_tensor(&self, name: &str) -> Result<Tensor, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling tibet-oomllama v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: field `max_seq_len` is never read
[INFO] [stdout]   --> src/oomllama_turbo.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub struct ModelKVCache {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 75 |     layers: Vec<LayerKVCache>,
[INFO] [stdout] 76 |     max_seq_len: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `lookahead` is never read
[INFO] [stdout]    --> src/oomllama_turbo.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 213 | pub struct AsyncPrefetcher {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 217 |     lookahead: usize,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `layer_pin` and `device` are never read
[INFO] [stdout]    --> src/oomllama_turbo.rs:551:5
[INFO] [stdout]     |
[INFO] [stdout] 548 | pub struct TurboEngine {
[INFO] [stdout]     |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 551 |     layer_pin: LayerPin,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 552 |     // prefetcher: Option<AsyncPrefetcher>,
[INFO] [stdout] 553 |     device: Device,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Read`, `SeekFrom`, and `Seek`
[INFO] [stdout]   --> src/oom_inference.rs:12:15
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::io::{Read, Seek, SeekFrom};
[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: `candle_nn::VarBuilder`
[INFO] [stdout]   --> src/oomllama.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use candle_nn::VarBuilder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Cache`
[INFO] [stdout]   --> src/oomllama.rs:13:50
[INFO] [stdout]    |
[INFO] [stdout] 13 | use candle_transformers::models::llama::{Config, Cache, LlamaEosToks};
[INFO] [stdout]    |                                                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]   --> src/oomllama.rs:20:22
[INFO] [stdout]    |
[INFO] [stdout] 20 | use std::sync::{Arc, Mutex};
[INFO] [stdout]    |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/oomllama.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 | use std::collections::HashMap;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Shape`
[INFO] [stdout]   --> src/oomllama_turbo.rs:14:42
[INFO] [stdout]    |
[INFO] [stdout] 14 | use candle_core::{Device, Tensor, DType, Shape, D};
[INFO] [stdout]    |                                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Arc` and `RwLock`
[INFO] [stdout]   --> src/oomllama_turbo.rs:15:17
[INFO] [stdout]    |
[INFO] [stdout] 15 | use std::sync::{Arc, RwLock};
[INFO] [stdout]    |                 ^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Read`, `SeekFrom`, and `Seek`
[INFO] [stdout]  --> src/gguf2oom.rs:9:26
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::io::{BufWriter, Read, Write, Seek, SeekFrom};
[INFO] [stdout]   |                          ^^^^         ^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Q2_K` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |     Q2_K = 10,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Q2K`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Q3_K` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     Q3_K = 11,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Q3K`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Q4_K` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     Q4_K = 12,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Q4K`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Q5_K` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 36 |     Q5_K = 13,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Q5K`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Q6_K` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 37 |     Q6_K = 14,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Q6K`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Q8_K` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 38 |     Q8_K = 15,
[INFO] [stdout]    |     ^^^^ help: convert the identifier to upper camel case: `Q8K`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ2_XXS` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:39:5
[INFO] [stdout]    |
[INFO] [stdout] 39 |     IQ2_XXS = 16,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case: `Iq2Xxs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ2_XS` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     IQ2_XS = 17,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case: `Iq2Xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ3_XXS` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 |     IQ3_XXS = 18,
[INFO] [stdout]    |     ^^^^^^^ help: convert the identifier to upper camel case: `Iq3Xxs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ1_S` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 42 |     IQ1_S = 19,
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case: `Iq1S`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ4_NL` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 43 |     IQ4_NL = 20,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case: `Iq4Nl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ3_S` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 44 |     IQ3_S = 21,
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case: `Iq3S`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ2_S` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     IQ2_S = 22,
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case: `Iq2S`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `IQ4_XS` should have an upper camel case name
[INFO] [stdout]   --> src/gguf2oom.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 |     IQ4_XS = 23,
[INFO] [stdout]    |     ^^^^^^ help: convert the identifier to upper camel case: `Iq4Xs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/gguf2oom.rs:713:21
[INFO] [stdout]     |
[INFO] [stdout] 713 |                     (norm.round() as u8)
[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] 713 -                     (norm.round() as u8)
[INFO] [stdout] 713 +                     norm.round() as u8
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/safetensors2oom.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_tensors`
[INFO] [stdout]    --> src/oom_inference.rs:308:13
[INFO] [stdout]     |
[INFO] [stdout] 308 |         let n_tensors = u32::from_le_bytes(mmap[8..12].try_into()?);
[INFO] [stdout]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_tensors`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_kv`
[INFO] [stdout]    --> src/oom_inference.rs:309:13
[INFO] [stdout]     |
[INFO] [stdout] 309 |         let n_kv = u32::from_le_bytes(mmap[12..16].try_into()?);
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_n_kv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scale_vec`
[INFO] [stdout]   --> src/quant.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |     let scale_vec = _mm256_set1_ps(scale);
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_scale_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `min_vec`
[INFO] [stdout]   --> src/quant.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let min_vec = _mm256_set1_ps(min);
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_vec`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lookup`
[INFO] [stdout]   --> src/quant.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let lookup = _mm256_setr_epi32(0, 1, 2, 3, 0, 1, 2, 3);
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_lookup`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bytes`
[INFO] [stdout]   --> src/quant.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |         let bytes = _mm_loadl_epi64(data.as_ptr().add(byte_idx) as *const __m128i);
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_bytes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row1`
[INFO] [stdout]    --> src/oomllama.rs:668:17
[INFO] [stdout]     |
[INFO] [stdout] 668 |             let row1 = cpu_tensor.narrow(0, 1, 1)?.flatten_all()?.to_vec1::<f32>()?;
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_row1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `emb_min`
[INFO] [stdout]    --> src/oomllama.rs:770:17
[INFO] [stdout]     |
[INFO] [stdout] 770 |             let emb_min = emb_flat.iter().cloned().fold(f32::INFINITY, f32::min);
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_emb_min`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `emb_max`
[INFO] [stdout]    --> src/oomllama.rs:771:17
[INFO] [stdout]     |
[INFO] [stdout] 771 |             let emb_max = emb_flat.iter().cloned().fold(f32::NEG_INFINITY, f32::max);
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_emb_max`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `batch`
[INFO] [stdout]    --> src/oomllama_turbo.rs:467:10
[INFO] [stdout]     |
[INFO] [stdout] 467 |     let (batch, n_heads, seq_len, head_dim) = x.dims4()?;
[INFO] [stdout]     |          ^^^^^ help: if this is intentional, prefix it with an underscore: `_batch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_heads`
[INFO] [stdout]    --> src/oomllama_turbo.rs:467:17
[INFO] [stdout]     |
[INFO] [stdout] 467 |     let (batch, n_heads, seq_len, head_dim) = x.dims4()?;
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_heads`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `q_inf`
[INFO] [stdout]    --> src/oomllama_turbo.rs:676:17
[INFO] [stdout]     |
[INFO] [stdout] 676 |             let q_inf = q_flat.iter().any(|v| v.is_infinite());
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_q_inf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `k_inf`
[INFO] [stdout]    --> src/oomllama_turbo.rs:677:17
[INFO] [stdout]     |
[INFO] [stdout] 677 |             let k_inf = k_flat.iter().any(|v| v.is_infinite());
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_k_inf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]    --> src/oomllama_turbo.rs:799:17
[INFO] [stdout]     |
[INFO] [stdout] 799 |             let rows = wq.dim(0)?;
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `col_sum`
[INFO] [stdout]    --> src/oomllama_turbo.rs:804:21
[INFO] [stdout]     |
[INFO] [stdout] 804 |                 let col_sum: f32 = col.iter().sum();
[INFO] [stdout]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_col_sum`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row_mean`
[INFO] [stdout]    --> src/oomllama_turbo.rs:821:21
[INFO] [stdout]     |
[INFO] [stdout] 821 |                 let row_mean = row_sum / row.len() as f32;
[INFO] [stdout]     |                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_row_mean`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row_min`
[INFO] [stdout]    --> src/oomllama_turbo.rs:822:21
[INFO] [stdout]     |
[INFO] [stdout] 822 |                 let row_min = row.iter().cloned().fold(f32::INFINITY, f32::min);
[INFO] [stdout]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_row_min`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row_max`
[INFO] [stdout]    --> src/oomllama_turbo.rs:823:21
[INFO] [stdout]     |
[INFO] [stdout] 823 |                 let row_max = row.iter().cloned().fold(f32::NEG_INFINITY, f32::max);
[INFO] [stdout]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_row_max`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rows`
[INFO] [stdout]    --> src/oomllama_turbo.rs:842:17
[INFO] [stdout]     |
[INFO] [stdout] 842 |             let rows = q.dim(0)?;
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `col0`
[INFO] [stdout]    --> src/oomllama_turbo.rs:845:17
[INFO] [stdout]     |
[INFO] [stdout] 845 |             let col0 = q.narrow(1, 0, 1)?.flatten_all()?.to_vec1::<f32>()?;
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_col0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `min_row`
[INFO] [stdout]    --> src/oomllama_turbo.rs:851:17
[INFO] [stdout]     |
[INFO] [stdout] 851 |             let min_row = min_idx / cols;
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `min_col`
[INFO] [stdout]    --> src/oomllama_turbo.rs:852:17
[INFO] [stdout]     |
[INFO] [stdout] 852 |             let min_col = min_idx % cols;
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_col`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_row`
[INFO] [stdout]    --> src/oomllama_turbo.rs:853:17
[INFO] [stdout]     |
[INFO] [stdout] 853 |             let max_row = max_idx / cols;
[INFO] [stdout]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w_col_mean`
[INFO] [stdout]    --> src/oomllama_turbo.rs:860:17
[INFO] [stdout]     |
[INFO] [stdout] 860 |             let w_col_mean = w_col_sum / w_col_max.len() as f32;
[INFO] [stdout]     |                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_w_col_mean`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w_col_min`
[INFO] [stdout]    --> src/oomllama_turbo.rs:861:17
[INFO] [stdout]     |
[INFO] [stdout] 861 |             let w_col_min = w_col_max.iter().cloned().fold(f32::INFINITY, f32::min);
[INFO] [stdout]     |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_w_col_min`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `w_col_max_v`
[INFO] [stdout]    --> src/oomllama_turbo.rs:862:17
[INFO] [stdout]     |
[INFO] [stdout] 862 |             let w_col_max_v = w_col_max.iter().cloned().fold(f32::NEG_INFINITY, f32::max);
[INFO] [stdout]     |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_w_col_max_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/oomllama_turbo.rs:1117:13
[INFO] [stdout]      |
[INFO] [stdout] 1117 |         let mut cache = ModelKVCache::new(4, 1024);
[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: type `AllocationRequest` is more private than the item `BettiManager::request`
[INFO] [stdout]   --> src/oomllama.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn request(&self, _req: AllocationRequest) -> Result<BettiStub, String> { Ok(BettiStub { id: Uuid::new_v4() }) }
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `BettiManager::request` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `AllocationRequest` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/oomllama.rs:54:1
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub(crate) struct AllocationRequest {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `BettiStub` is more private than the item `BettiManager::request`
[INFO] [stdout]   --> src/oomllama.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub fn request(&self, _req: AllocationRequest) -> Result<BettiStub, String> { Ok(BettiStub { id: Uuid::new_v4() }) }
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `BettiManager::request` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `BettiStub` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/oomllama.rs:49:1
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub(crate) struct BettiStub { pub id: Uuid }
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_avx512` is never used
[INFO] [stdout]   --> src/quant.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn has_avx512() -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/oomllama.rs:55:9
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub(crate) struct AllocationRequest {
[INFO] [stdout]    |                   ----------------- fields in this struct
[INFO] [stdout] 55 |     pub idd_name: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 56 |     pub resource_type: ResourceType,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 57 |     pub amount: f64,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 58 |     pub duration_secs: Option<u64>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 59 |     pub purpose: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 60 |     pub priority: u32,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 61 |     pub humotica: Option<Humotica>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `sense`, `context`, `intent`, and `explanation` are never read
[INFO] [stdout]   --> src/oomllama.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub(crate) struct Humotica {
[INFO] [stdout]    |                   -------- fields in this struct
[INFO] [stdout] 66 |     pub sense: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 67 |     pub context: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 68 |     pub intent: String,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 69 |     pub explanation: String,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Humotica` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `loader` is never read
[INFO] [stdout]     --> src/oomllama.rs:1072:5
[INFO] [stdout]      |
[INFO] [stdout] 1059 | pub struct GhostLlama {
[INFO] [stdout]      |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1072 |     loader: Arc<OomLoader>,
[INFO] [stdout]      |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `load_tensor` is never used
[INFO] [stdout]     --> src/oomllama.rs:1642:8
[INFO] [stdout]      |
[INFO] [stdout] 1087 | impl GhostLlama {
[INFO] [stdout]      | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1642 |     fn load_tensor(&self, name: &str) -> Result<Tensor, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stdout]      |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `max_seq_len` is never read
[INFO] [stdout]   --> src/oomllama_turbo.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub struct ModelKVCache {
[INFO] [stdout]    |            ------------ field in this struct
[INFO] [stdout] 75 |     layers: Vec<LayerKVCache>,
[INFO] [stdout] 76 |     max_seq_len: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `lookahead` is never read
[INFO] [stdout]    --> src/oomllama_turbo.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 213 | pub struct AsyncPrefetcher {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 217 |     lookahead: usize,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `layer_pin` and `device` are never read
[INFO] [stdout]    --> src/oomllama_turbo.rs:551:5
[INFO] [stdout]     |
[INFO] [stdout] 548 | pub struct TurboEngine {
[INFO] [stdout]     |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 551 |     layer_pin: LayerPin,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 552 |     // prefetcher: Option<AsyncPrefetcher>,
[INFO] [stdout] 553 |     device: Device,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.80s
[INFO] running `Command { std: "docker" "inspect" "338aade057fd5d9a0819fe8e97b3466fa58de677899e57a8d0f91742a1ef69ea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "338aade057fd5d9a0819fe8e97b3466fa58de677899e57a8d0f91742a1ef69ea", kill_on_drop: false }`
[INFO] [stdout] 338aade057fd5d9a0819fe8e97b3466fa58de677899e57a8d0f91742a1ef69ea
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 2ef9078aff3c363c98a14d6542b6515c9471c85d9adc4e7cd5d6ed9b7663daa1
[INFO] running `Command { std: "docker" "start" "-a" "2ef9078aff3c363c98a14d6542b6515c9471c85d9adc4e7cd5d6ed9b7663daa1", kill_on_drop: false }`
[INFO] [stderr] warning: unused imports: `Read`, `SeekFrom`, and `Seek`
[INFO] [stderr]   --> src/oom_inference.rs:12:15
[INFO] [stderr]    |
[INFO] [stderr] 12 | use std::io::{Read, Seek, SeekFrom};
[INFO] [stderr]    |               ^^^^  ^^^^  ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `candle_nn::VarBuilder`
[INFO] [stderr]   --> src/oomllama.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | use candle_nn::VarBuilder;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Cache`
[INFO] [stderr]   --> src/oomllama.rs:13:50
[INFO] [stderr]    |
[INFO] [stderr] 13 | use candle_transformers::models::llama::{Config, Cache, LlamaEosToks};
[INFO] [stderr]    |                                                  ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Mutex`
[INFO] [stderr]   --> src/oomllama.rs:20:22
[INFO] [stderr]    |
[INFO] [stderr] 20 | use std::sync::{Arc, Mutex};
[INFO] [stderr]    |                      ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]   --> src/oomllama.rs:21:5
[INFO] [stderr]    |
[INFO] [stderr] 21 | use std::collections::HashMap;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Shape`
[INFO] [stderr]   --> src/oomllama_turbo.rs:14:42
[INFO] [stderr]    |
[INFO] [stderr] 14 | use candle_core::{Device, Tensor, DType, Shape, D};
[INFO] [stderr]    |                                          ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Arc` and `RwLock`
[INFO] [stderr]   --> src/oomllama_turbo.rs:15:17
[INFO] [stderr]    |
[INFO] [stderr] 15 | use std::sync::{Arc, RwLock};
[INFO] [stderr]    |                 ^^^  ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Read`, `SeekFrom`, and `Seek`
[INFO] [stderr]  --> src/gguf2oom.rs:9:26
[INFO] [stderr]   |
[INFO] [stderr] 9 | use std::io::{BufWriter, Read, Write, Seek, SeekFrom};
[INFO] [stderr]   |                          ^^^^         ^^^^  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Q2_K` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:33:5
[INFO] [stderr]    |
[INFO] [stderr] 33 |     Q2_K = 10,
[INFO] [stderr]    |     ^^^^ help: convert the identifier to upper camel case: `Q2K`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Q3_K` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:34:5
[INFO] [stderr]    |
[INFO] [stderr] 34 |     Q3_K = 11,
[INFO] [stderr]    |     ^^^^ help: convert the identifier to upper camel case: `Q3K`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Q4_K` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:35:5
[INFO] [stderr]    |
[INFO] [stderr] 35 |     Q4_K = 12,
[INFO] [stderr]    |     ^^^^ help: convert the identifier to upper camel case: `Q4K`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Q5_K` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:36:5
[INFO] [stderr]    |
[INFO] [stderr] 36 |     Q5_K = 13,
[INFO] [stderr]    |     ^^^^ help: convert the identifier to upper camel case: `Q5K`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Q6_K` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:37:5
[INFO] [stderr]    |
[INFO] [stderr] 37 |     Q6_K = 14,
[INFO] [stderr]    |     ^^^^ help: convert the identifier to upper camel case: `Q6K`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Q8_K` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:38:5
[INFO] [stderr]    |
[INFO] [stderr] 38 |     Q8_K = 15,
[INFO] [stderr]    |     ^^^^ help: convert the identifier to upper camel case: `Q8K`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `IQ2_XXS` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:39:5
[INFO] [stderr]    |
[INFO] [stderr] 39 |     IQ2_XXS = 16,
[INFO] [stderr]    |     ^^^^^^^ help: convert the identifier to upper camel case: `Iq2Xxs`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `IQ2_XS` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:40:5
[INFO] [stderr]    |
[INFO] [stderr] 40 |     IQ2_XS = 17,
[INFO] [stderr]    |     ^^^^^^ help: convert the identifier to upper camel case: `Iq2Xs`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `IQ3_XXS` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:41:5
[INFO] [stderr]    |
[INFO] [stderr] 41 |     IQ3_XXS = 18,
[INFO] [stderr]    |     ^^^^^^^ help: convert the identifier to upper camel case: `Iq3Xxs`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `IQ1_S` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:42:5
[INFO] [stderr]    |
[INFO] [stderr] 42 |     IQ1_S = 19,
[INFO] [stderr]    |     ^^^^^ help: convert the identifier to upper camel case: `Iq1S`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `IQ4_NL` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:43:5
[INFO] [stderr]    |
[INFO] [stderr] 43 |     IQ4_NL = 20,
[INFO] [stderr]    |     ^^^^^^ help: convert the identifier to upper camel case: `Iq4Nl`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `IQ3_S` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:44:5
[INFO] [stderr]    |
[INFO] [stderr] 44 |     IQ3_S = 21,
[INFO] [stderr]    |     ^^^^^ help: convert the identifier to upper camel case: `Iq3S`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `IQ2_S` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:45:5
[INFO] [stderr]    |
[INFO] [stderr] 45 |     IQ2_S = 22,
[INFO] [stderr]    |     ^^^^^ help: convert the identifier to upper camel case: `Iq2S`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `IQ4_XS` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:46:5
[INFO] [stderr]    |
[INFO] [stderr] 46 |     IQ4_XS = 23,
[INFO] [stderr]    |     ^^^^^^ help: convert the identifier to upper camel case: `Iq4Xs`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around block return value
[INFO] [stderr]    --> src/gguf2oom.rs:713:21
[INFO] [stderr]     |
[INFO] [stderr] 713 |                     (norm.round() as u8)
[INFO] [stderr]     |                     ^                  ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 713 -                     (norm.round() as u8)
[INFO] [stderr] 713 +                     norm.round() as u8
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]  --> src/safetensors2oom.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use std::collections::HashMap;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `n_tensors`
[INFO] [stderr]    --> src/oom_inference.rs:308:13
[INFO] [stderr]     |
[INFO] [stderr] 308 |         let n_tensors = u32::from_le_bytes(mmap[8..12].try_into()?);
[INFO] [stderr]     |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_tensors`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `n_kv`
[INFO] [stderr]    --> src/oom_inference.rs:309:13
[INFO] [stderr]     |
[INFO] [stderr] 309 |         let n_kv = u32::from_le_bytes(mmap[12..16].try_into()?);
[INFO] [stderr]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_n_kv`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `scale_vec`
[INFO] [stderr]   --> src/quant.rs:44:9
[INFO] [stderr]    |
[INFO] [stderr] 44 |     let scale_vec = _mm256_set1_ps(scale);
[INFO] [stderr]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_scale_vec`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `min_vec`
[INFO] [stderr]   --> src/quant.rs:45:9
[INFO] [stderr]    |
[INFO] [stderr] 45 |     let min_vec = _mm256_set1_ps(min);
[INFO] [stderr]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_vec`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `lookup`
[INFO] [stderr]   --> src/quant.rs:48:9
[INFO] [stderr]    |
[INFO] [stderr] 48 |     let lookup = _mm256_setr_epi32(0, 1, 2, 3, 0, 1, 2, 3);
[INFO] [stderr]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_lookup`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `bytes`
[INFO] [stderr]   --> src/quant.rs:56:13
[INFO] [stderr]    |
[INFO] [stderr] 56 |         let bytes = _mm_loadl_epi64(data.as_ptr().add(byte_idx) as *const __m128i);
[INFO] [stderr]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_bytes`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `row1`
[INFO] [stderr]    --> src/oomllama.rs:668:17
[INFO] [stderr]     |
[INFO] [stderr] 668 |             let row1 = cpu_tensor.narrow(0, 1, 1)?.flatten_all()?.to_vec1::<f32>()?;
[INFO] [stderr]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_row1`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `emb_min`
[INFO] [stderr]    --> src/oomllama.rs:770:17
[INFO] [stderr]     |
[INFO] [stderr] 770 |             let emb_min = emb_flat.iter().cloned().fold(f32::INFINITY, f32::min);
[INFO] [stderr]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_emb_min`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `emb_max`
[INFO] [stderr]    --> src/oomllama.rs:771:17
[INFO] [stderr]     |
[INFO] [stderr] 771 |             let emb_max = emb_flat.iter().cloned().fold(f32::NEG_INFINITY, f32::max);
[INFO] [stderr]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_emb_max`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `batch`
[INFO] [stderr]    --> src/oomllama_turbo.rs:467:10
[INFO] [stderr]     |
[INFO] [stderr] 467 |     let (batch, n_heads, seq_len, head_dim) = x.dims4()?;
[INFO] [stderr]     |          ^^^^^ help: if this is intentional, prefix it with an underscore: `_batch`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `n_heads`
[INFO] [stderr]    --> src/oomllama_turbo.rs:467:17
[INFO] [stderr]     |
[INFO] [stderr] 467 |     let (batch, n_heads, seq_len, head_dim) = x.dims4()?;
[INFO] [stderr]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_heads`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `q_inf`
[INFO] [stderr]    --> src/oomllama_turbo.rs:676:17
[INFO] [stderr]     |
[INFO] [stderr] 676 |             let q_inf = q_flat.iter().any(|v| v.is_infinite());
[INFO] [stderr]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_q_inf`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `k_inf`
[INFO] [stderr]    --> src/oomllama_turbo.rs:677:17
[INFO] [stderr]     |
[INFO] [stderr] 677 |             let k_inf = k_flat.iter().any(|v| v.is_infinite());
[INFO] [stderr]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_k_inf`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `rows`
[INFO] [stderr]    --> src/oomllama_turbo.rs:799:17
[INFO] [stderr]     |
[INFO] [stderr] 799 |             let rows = wq.dim(0)?;
[INFO] [stderr]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `col_sum`
[INFO] [stderr]    --> src/oomllama_turbo.rs:804:21
[INFO] [stderr]     |
[INFO] [stderr] 804 |                 let col_sum: f32 = col.iter().sum();
[INFO] [stderr]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_col_sum`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `row_mean`
[INFO] [stderr]    --> src/oomllama_turbo.rs:821:21
[INFO] [stderr]     |
[INFO] [stderr] 821 |                 let row_mean = row_sum / row.len() as f32;
[INFO] [stderr]     |                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_row_mean`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `row_min`
[INFO] [stderr]    --> src/oomllama_turbo.rs:822:21
[INFO] [stderr]     |
[INFO] [stderr] 822 |                 let row_min = row.iter().cloned().fold(f32::INFINITY, f32::min);
[INFO] [stderr]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_row_min`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `row_max`
[INFO] [stderr]    --> src/oomllama_turbo.rs:823:21
[INFO] [stderr]     |
[INFO] [stderr] 823 |                 let row_max = row.iter().cloned().fold(f32::NEG_INFINITY, f32::max);
[INFO] [stderr]     |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_row_max`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `rows`
[INFO] [stderr]    --> src/oomllama_turbo.rs:842:17
[INFO] [stderr]     |
[INFO] [stderr] 842 |             let rows = q.dim(0)?;
[INFO] [stderr]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_rows`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `col0`
[INFO] [stderr]    --> src/oomllama_turbo.rs:845:17
[INFO] [stderr]     |
[INFO] [stderr] 845 |             let col0 = q.narrow(1, 0, 1)?.flatten_all()?.to_vec1::<f32>()?;
[INFO] [stderr]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_col0`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `min_row`
[INFO] [stderr]    --> src/oomllama_turbo.rs:851:17
[INFO] [stderr]     |
[INFO] [stderr] 851 |             let min_row = min_idx / cols;
[INFO] [stderr]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_row`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `min_col`
[INFO] [stderr]    --> src/oomllama_turbo.rs:852:17
[INFO] [stderr]     |
[INFO] [stderr] 852 |             let min_col = min_idx % cols;
[INFO] [stderr]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_col`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `max_row`
[INFO] [stderr]    --> src/oomllama_turbo.rs:853:17
[INFO] [stderr]     |
[INFO] [stderr] 853 |             let max_row = max_idx / cols;
[INFO] [stderr]     |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_row`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `w_col_mean`
[INFO] [stderr]    --> src/oomllama_turbo.rs:860:17
[INFO] [stderr]     |
[INFO] [stderr] 860 |             let w_col_mean = w_col_sum / w_col_max.len() as f32;
[INFO] [stderr]     |                 ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_w_col_mean`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `w_col_min`
[INFO] [stderr]    --> src/oomllama_turbo.rs:861:17
[INFO] [stderr]     |
[INFO] [stderr] 861 |             let w_col_min = w_col_max.iter().cloned().fold(f32::INFINITY, f32::min);
[INFO] [stderr]     |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_w_col_min`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `w_col_max_v`
[INFO] [stderr]    --> src/oomllama_turbo.rs:862:17
[INFO] [stderr]     |
[INFO] [stderr] 862 |             let w_col_max_v = w_col_max.iter().cloned().fold(f32::NEG_INFINITY, f32::max);
[INFO] [stderr]     |                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_w_col_max_v`
[INFO] [stderr] 
[INFO] [stderr] warning: type `AllocationRequest` is more private than the item `BettiManager::request`
[INFO] [stderr]   --> src/oomllama.rs:45:5
[INFO] [stderr]    |
[INFO] [stderr] 45 |     pub fn request(&self, _req: AllocationRequest) -> Result<BettiStub, String> { Ok(BettiStub { id: Uuid::new_v4() }) }
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `BettiManager::request` is reachable at visibility `pub`
[INFO] [stderr]    |
[INFO] [stderr] note: but type `AllocationRequest` is only usable at visibility `pub(crate)`
[INFO] [stderr]   --> src/oomllama.rs:54:1
[INFO] [stderr]    |
[INFO] [stderr] 54 | pub(crate) struct AllocationRequest {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    = note: `#[warn(private_interfaces)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: type `BettiStub` is more private than the item `BettiManager::request`
[INFO] [stderr]   --> src/oomllama.rs:45:5
[INFO] [stderr]    |
[INFO] [stderr] 45 |     pub fn request(&self, _req: AllocationRequest) -> Result<BettiStub, String> { Ok(BettiStub { id: Uuid::new_v4() }) }
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `BettiManager::request` is reachable at visibility `pub`
[INFO] [stderr]    |
[INFO] [stderr] note: but type `BettiStub` is only usable at visibility `pub(crate)`
[INFO] [stderr]   --> src/oomllama.rs:49:1
[INFO] [stderr]    |
[INFO] [stderr] 49 | pub(crate) struct BettiStub { pub id: Uuid }
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `has_avx512` is never used
[INFO] [stderr]   --> src/quant.rs:24:4
[INFO] [stderr]    |
[INFO] [stderr] 24 | fn has_avx512() -> bool {
[INFO] [stderr]    |    ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: multiple fields are never read
[INFO] [stderr]   --> src/oomllama.rs:55:9
[INFO] [stderr]    |
[INFO] [stderr] 54 | pub(crate) struct AllocationRequest {
[INFO] [stderr]    |                   ----------------- fields in this struct
[INFO] [stderr] 55 |     pub idd_name: String,
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 56 |     pub resource_type: ResourceType,
[INFO] [stderr]    |         ^^^^^^^^^^^^^
[INFO] [stderr] 57 |     pub amount: f64,
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr] 58 |     pub duration_secs: Option<u64>,
[INFO] [stderr]    |         ^^^^^^^^^^^^^
[INFO] [stderr] 59 |     pub purpose: String,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr] 60 |     pub priority: u32,
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 61 |     pub humotica: Option<Humotica>,
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `sense`, `context`, `intent`, and `explanation` are never read
[INFO] [stderr]   --> src/oomllama.rs:66:9
[INFO] [stderr]    |
[INFO] [stderr] 65 | pub(crate) struct Humotica {
[INFO] [stderr]    |                   -------- fields in this struct
[INFO] [stderr] 66 |     pub sense: String,
[INFO] [stderr]    |         ^^^^^
[INFO] [stderr] 67 |     pub context: String,
[INFO] [stderr]    |         ^^^^^^^
[INFO] [stderr] 68 |     pub intent: String,
[INFO] [stderr]    |         ^^^^^^
[INFO] [stderr] 69 |     pub explanation: String,
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `Humotica` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `loader` is never read
[INFO] [stderr]     --> src/oomllama.rs:1072:5
[INFO] [stderr]      |
[INFO] [stderr] 1059 | pub struct GhostLlama {
[INFO] [stderr]      |            ---------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 1072 |     loader: Arc<OomLoader>,
[INFO] [stderr]      |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `load_tensor` is never used
[INFO] [stderr]     --> src/oomllama.rs:1642:8
[INFO] [stderr]      |
[INFO] [stderr] 1087 | impl GhostLlama {
[INFO] [stderr]      | --------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 1642 |     fn load_tensor(&self, name: &str) -> Result<Tensor, Box<dyn std::error::Error + Send + Sync>> {
[INFO] [stderr]      |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `max_seq_len` is never read
[INFO] [stderr]   --> src/oomllama_turbo.rs:76:5
[INFO] [stderr]    |
[INFO] [stderr] 74 | pub struct ModelKVCache {
[INFO] [stderr]    |            ------------ field in this struct
[INFO] [stderr] 75 |     layers: Vec<LayerKVCache>,
[INFO] [stderr] 76 |     max_seq_len: usize,
[INFO] [stderr]    |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `lookahead` is never read
[INFO] [stderr]    --> src/oomllama_turbo.rs:217:5
[INFO] [stderr]     |
[INFO] [stderr] 213 | pub struct AsyncPrefetcher {
[INFO] [stderr]     |            --------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 217 |     lookahead: usize,
[INFO] [stderr]     |     ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `layer_pin` and `device` are never read
[INFO] [stderr]    --> src/oomllama_turbo.rs:551:5
[INFO] [stderr]     |
[INFO] [stderr] 548 | pub struct TurboEngine {
[INFO] [stderr]     |            ----------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 551 |     layer_pin: LayerPin,
[INFO] [stderr]     |     ^^^^^^^^^
[INFO] [stderr] 552 |     // prefetcher: Option<AsyncPrefetcher>,
[INFO] [stderr] 553 |     device: Device,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/oomllama_turbo.rs:1117:13
[INFO] [stderr]      |
[INFO] [stderr] 1117 |         let mut cache = ModelKVCache::new(4, 1024);
[INFO] [stderr]      |             ----^^^^^
[INFO] [stderr]      |             |
[INFO] [stderr]      |             help: remove this `mut`
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `tibet-oomllama` (lib) generated 60 warnings (run `cargo fix --lib -p tibet-oomllama` to apply 36 suggestions)
[INFO] [stderr] warning: `tibet-oomllama` (lib test) generated 61 warnings (60 duplicates) (run `cargo fix --lib -p tibet-oomllama --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.17s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/tibet_oomllama-3b9ebb23d94e4b89)
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test gguf2oom::tests::test_f16_conversion ... ok
[INFO] [stdout] test multi_gpu::tests::test_layer_strategy ... ok
[INFO] [stdout] test oom_inference::tests::test_f16_to_f32 ... ok
[INFO] [stdout] test oom_inference::tests::test_rms_norm ... ok
[INFO] [stdout] test oom_inference::tests::test_silu ... ok
[INFO] [stdout] test oom_inference::tests::test_softmax ... ok
[INFO] [stdout] test oomllama_turbo::tests::test_kv_cache ... ok
[INFO] [stdout] test oomllama_turbo::tests::test_pin_strategy ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/gguf2oom.rs (/opt/rustwide/target/debug/deps/gguf2oom-f63748f5e2c89b06)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/oomllama.rs (/opt/rustwide/target/debug/deps/oomllama-3e701eb9a46d9173)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/quantize.rs (/opt/rustwide/target/debug/deps/quantize-6ddae690f300fede)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/safetensors2oom.rs (/opt/rustwide/target/debug/deps/safetensors2oom-cd00f90d5661d4a3)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests tibet_oomllama
[INFO] [stderr] warning: variant `Q2_K` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:33:5
[INFO] [stderr]    |
[INFO] [stderr] 33 |     Q2_K = 10,
[INFO] [stderr]    |     ^^^^ help: convert the identifier to upper camel case: `Q2K`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Q3_K` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:34:5
[INFO] [stderr]    |
[INFO] [stderr] 34 |     Q3_K = 11,
[INFO] [stderr]    |     ^^^^ help: convert the identifier to upper camel case: `Q3K`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Q4_K` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:35:5
[INFO] [stderr]    |
[INFO] [stderr] 35 |     Q4_K = 12,
[INFO] [stderr]    |     ^^^^ help: convert the identifier to upper camel case: `Q4K`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Q5_K` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:36:5
[INFO] [stderr]    |
[INFO] [stderr] 36 |     Q5_K = 13,
[INFO] [stderr]    |     ^^^^ help: convert the identifier to upper camel case: `Q5K`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Q6_K` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:37:5
[INFO] [stderr]    |
[INFO] [stderr] 37 |     Q6_K = 14,
[INFO] [stderr]    |     ^^^^ help: convert the identifier to upper camel case: `Q6K`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Q8_K` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:38:5
[INFO] [stderr]    |
[INFO] [stderr] 38 |     Q8_K = 15,
[INFO] [stderr]    |     ^^^^ help: convert the identifier to upper camel case: `Q8K`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `IQ2_XXS` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:39:5
[INFO] [stderr]    |
[INFO] [stderr] 39 |     IQ2_XXS = 16,
[INFO] [stderr]    |     ^^^^^^^ help: convert the identifier to upper camel case: `Iq2Xxs`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `IQ2_XS` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:40:5
[INFO] [stderr]    |
[INFO] [stderr] 40 |     IQ2_XS = 17,
[INFO] [stderr]    |     ^^^^^^ help: convert the identifier to upper camel case: `Iq2Xs`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `IQ3_XXS` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:41:5
[INFO] [stderr]    |
[INFO] [stderr] 41 |     IQ3_XXS = 18,
[INFO] [stderr]    |     ^^^^^^^ help: convert the identifier to upper camel case: `Iq3Xxs`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `IQ1_S` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:42:5
[INFO] [stderr]    |
[INFO] [stderr] 42 |     IQ1_S = 19,
[INFO] [stderr]    |     ^^^^^ help: convert the identifier to upper camel case: `Iq1S`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `IQ4_NL` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:43:5
[INFO] [stderr]    |
[INFO] [stderr] 43 |     IQ4_NL = 20,
[INFO] [stderr]    |     ^^^^^^ help: convert the identifier to upper camel case: `Iq4Nl`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `IQ3_S` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:44:5
[INFO] [stderr]    |
[INFO] [stderr] 44 |     IQ3_S = 21,
[INFO] [stderr]    |     ^^^^^ help: convert the identifier to upper camel case: `Iq3S`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `IQ2_S` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:45:5
[INFO] [stderr]    |
[INFO] [stderr] 45 |     IQ2_S = 22,
[INFO] [stderr]    |     ^^^^^ help: convert the identifier to upper camel case: `Iq2S`
[INFO] [stderr] 
[INFO] [stderr] warning: variant `IQ4_XS` should have an upper camel case name
[INFO] [stderr]   --> src/gguf2oom.rs:46:5
[INFO] [stderr]    |
[INFO] [stderr] 46 |     IQ4_XS = 23,
[INFO] [stderr]    |     ^^^^^^ help: convert the identifier to upper camel case: `Iq4Xs`
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around block return value
[INFO] [stderr]    --> src/gguf2oom.rs:713:21
[INFO] [stderr]     |
[INFO] [stderr] 713 |                     (norm.round() as u8)
[INFO] [stderr]     |                     ^                  ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 713 -                     (norm.round() as u8)
[INFO] [stderr] 713 +                     norm.round() as u8
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: 15 warnings emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "2ef9078aff3c363c98a14d6542b6515c9471c85d9adc4e7cd5d6ed9b7663daa1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2ef9078aff3c363c98a14d6542b6515c9471c85d9adc4e7cd5d6ed9b7663daa1", kill_on_drop: false }`
[INFO] [stdout] 2ef9078aff3c363c98a14d6542b6515c9471c85d9adc4e7cd5d6ed9b7663daa1
