[INFO] cloning repository https://github.com/Lexmata/llama-gguf [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Lexmata/llama-gguf" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLexmata%2Fllama-gguf", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLexmata%2Fllama-gguf'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 8f39851b3d47d087ad1b09a37b0d86662efd32f4 [INFO] checking Lexmata/llama-gguf against master#a33907a7a5381473eec8bcfa0c56e05a856a911c for pr-151539 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLexmata%2Fllama-gguf" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/Lexmata/llama-gguf [INFO] finished tweaking git repo https://github.com/Lexmata/llama-gguf [INFO] tweaked toml for git repo https://github.com/Lexmata/llama-gguf written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/Lexmata/llama-gguf on toolchain a33907a7a5381473eec8bcfa0c56e05a856a911c [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a33907a7a5381473eec8bcfa0c56e05a856a911c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/Lexmata/llama-gguf 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" "+a33907a7a5381473eec8bcfa0c56e05a856a911c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded wasite v1.0.2 [INFO] [stderr] Downloaded whoami v2.1.1 [INFO] [stderr] Downloaded alloca v0.4.0 [INFO] [stderr] Downloaded postgres-protocol v0.6.10 [INFO] [stderr] Downloaded clap_mangen v0.2.31 [INFO] [stderr] Downloaded deadpool-postgres v0.14.1 [INFO] [stderr] Downloaded criterion-plot v0.8.2 [INFO] [stderr] Downloaded deadpool v0.12.3 [INFO] [stderr] Downloaded prost-build v0.13.5 [INFO] [stderr] Downloaded objc2-system-configuration v0.3.2 [INFO] [stderr] Downloaded criterion v0.8.2 [INFO] [stderr] Downloaded pgvector v0.4.1 [INFO] [stderr] Downloaded postgres-types v0.2.12 [INFO] [stderr] Downloaded deadpool-runtime v0.1.4 [INFO] [stderr] Downloaded tokio-postgres v0.7.16 [INFO] [stderr] Downloaded cudarc v0.12.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+a33907a7a5381473eec8bcfa0c56e05a856a911c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] dacf19d625b211db43e9ba47644eeb998d92b5a3e746781e40848e5498e3a96d [INFO] running `Command { std: "docker" "start" "-a" "dacf19d625b211db43e9ba47644eeb998d92b5a3e746781e40848e5498e3a96d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "dacf19d625b211db43e9ba47644eeb998d92b5a3e746781e40848e5498e3a96d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "dacf19d625b211db43e9ba47644eeb998d92b5a3e746781e40848e5498e3a96d", kill_on_drop: false }` [INFO] [stdout] dacf19d625b211db43e9ba47644eeb998d92b5a3e746781e40848e5498e3a96d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+a33907a7a5381473eec8bcfa0c56e05a856a911c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4ac88b86ba115668b0ee732dffaf3101d3e5f3763a10b733378d5a4347b52f3c [INFO] running `Command { std: "docker" "start" "-a" "4ac88b86ba115668b0ee732dffaf3101d3e5f3763a10b733378d5a4347b52f3c", kill_on_drop: false }` [INFO] [stderr] Checking futures-core v0.3.32 [INFO] [stderr] Compiling cc v1.2.56 [INFO] [stderr] Compiling anyhow v1.0.101 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Checking futures-sink v0.3.32 [INFO] [stderr] Compiling getrandom v0.4.1 [INFO] [stderr] Checking http v1.4.0 [INFO] [stderr] Compiling libc v0.2.182 [INFO] [stderr] Compiling syn v2.0.116 [INFO] [stderr] Checking getrandom v0.2.17 [INFO] [stderr] Checking tokio v1.49.0 [INFO] [stderr] Checking futures-io v0.3.32 [INFO] [stderr] Compiling regex-syntax v0.8.9 [INFO] [stderr] Compiling prettyplease v0.2.37 [INFO] [stderr] Compiling bytes v1.11.1 [INFO] [stderr] Compiling rustix v1.1.3 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Checking futures-channel v0.3.32 [INFO] [stderr] Checking futures-util v0.3.32 [INFO] [stderr] Compiling itertools v0.14.0 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stderr] Compiling fixedbitset v0.5.7 [INFO] [stderr] Checking clap_builder v4.5.58 [INFO] [stderr] Checking serde_json v1.0.149 [INFO] [stderr] Checking crossbeam-deque v0.8.6 [INFO] [stderr] Checking sync_wrapper v1.0.2 [INFO] [stderr] Compiling multimap v0.10.1 [INFO] [stderr] Compiling petgraph v0.7.1 [INFO] [stderr] Checking rayon-core v1.13.0 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking webpki-roots v1.0.6 [INFO] [stderr] Checking http-body v1.0.1 [INFO] [stderr] Checking console v0.15.11 [INFO] [stderr] Checking dirs-sys v0.4.1 [INFO] [stderr] Checking http-body-util v0.1.3 [INFO] [stderr] Checking roff v0.2.2 [INFO] [stderr] Checking directories v5.0.1 [INFO] [stderr] Checking indicatif v0.17.11 [INFO] [stderr] Checking memmap2 v0.9.10 [INFO] [stderr] Checking rayon v1.11.0 [INFO] [stderr] Checking criterion-plot v0.8.2 [INFO] [stderr] Checking plotters v0.3.7 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Checking page_size v0.6.0 [INFO] [stderr] Checking tempfile v3.25.0 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Compiling alloca v0.4.0 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Checking hyper v1.8.1 [INFO] [stderr] Checking tower v0.5.3 [INFO] [stderr] Checking tower-http v0.6.8 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling zerocopy-derive v0.8.39 [INFO] [stderr] Compiling prost-derive v0.13.5 [INFO] [stderr] Compiling bytemuck_derive v1.10.2 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling clap_derive v4.5.55 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Checking tracing v0.1.44 [INFO] [stderr] Checking bytemuck v1.25.0 [INFO] [stderr] Checking hyper-util v0.1.20 [INFO] [stderr] Checking zerofrom v0.1.6 [INFO] [stderr] Compiling rustls v0.23.36 [INFO] [stderr] Checking yoke v0.8.1 [INFO] [stderr] Checking thiserror v1.0.69 [INFO] [stderr] Compiling prost v0.13.5 [INFO] [stderr] Checking zerocopy v0.8.39 [INFO] [stderr] Checking zerovec v0.11.5 [INFO] [stderr] Checking zerotrie v0.2.3 [INFO] [stderr] Compiling prost-types v0.13.5 [INFO] [stderr] Checking clap v4.5.58 [INFO] [stderr] Checking clap_mangen v0.2.31 [INFO] [stderr] Checking tinystr v0.8.2 [INFO] [stderr] Checking potential_utf v0.1.4 [INFO] [stderr] Checking icu_locale_core v2.1.1 [INFO] [stderr] Checking icu_collections v2.1.1 [INFO] [stderr] Compiling prost-build v0.13.5 [INFO] [stderr] Checking serde v1.0.228 [INFO] [stderr] Checking rustls-webpki v0.103.9 [INFO] [stderr] Checking icu_provider v2.1.1 [INFO] [stderr] Checking serde_spanned v0.6.9 [INFO] [stderr] Checking toml_datetime v0.6.11 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking tinytemplate v1.2.1 [INFO] [stderr] Checking icu_normalizer v2.1.1 [INFO] [stderr] Checking icu_properties v2.1.2 [INFO] [stderr] Checking toml_edit v0.22.27 [INFO] [stderr] Compiling llama-gguf v0.7.3 (/opt/rustwide/workdir) [INFO] [stderr] Checking idna_adapter v1.2.1 [INFO] [stderr] Checking idna v1.1.0 [INFO] [stderr] Checking url v2.5.8 [INFO] [stderr] Checking toml v0.8.23 [INFO] [stderr] Checking half v2.7.1 [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Checking ciborium-ll v0.2.2 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking tokio-rustls v0.26.4 [INFO] [stderr] Checking ciborium v0.2.2 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking hyper-rustls v0.27.7 [INFO] [stderr] Checking criterion v0.8.2 [INFO] [stderr] Checking reqwest v0.12.28 [INFO] [stdout] warning: unused variable: `out_weights` [INFO] [stdout] --> examples/trace_full_layer0.rs:97:9 [INFO] [stdout] | [INFO] [stdout] 97 | let out_weights = dequant(&backend, &out_proj); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_out_weights` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `InferenceContext`, `ModelLoader`, and `Model` [INFO] [stdout] --> examples/test_bias_before_rope.rs:9:25 [INFO] [stdout] | [INFO] [stdout] 9 | use llama_gguf::model::{InferenceContext, Model, ModelLoader}; [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: `std::sync::Arc` [INFO] [stdout] --> examples/test_bias_before_rope.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> examples/test_partial_layers.rs:233:17 [INFO] [stdout] | [INFO] [stdout] 233 | let mut h_after_attn: Vec = [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: variable does not need to be mutable [INFO] [stdout] --> examples/trace_layer_growth.rs:273:17 [INFO] [stdout] | [INFO] [stdout] 273 | let mut h_after_attn: Vec = [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hidden_size` [INFO] [stdout] --> examples/test_bias_before_rope.rs:309:9 [INFO] [stdout] | [INFO] [stdout] 309 | let hidden_size = 896; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hidden_size` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead [INFO] [stdout] --> benches/quantization.rs:5:53 [INFO] [stdout] | [INFO] [stdout] 5 | use criterion::{BenchmarkId, Criterion, Throughput, black_box, criterion_group, criterion_main}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead [INFO] [stdout] --> benches/quantization.rs:18:23 [INFO] [stdout] | [INFO] [stdout] 18 | b.iter(|| black_box(Tensor::zeros(vec![size], DType::F32))); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead [INFO] [stdout] --> benches/quantization.rs:23:23 [INFO] [stdout] | [INFO] [stdout] 23 | b.iter(|| black_box(Tensor::from_f32(&data, vec![size]))); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead [INFO] [stdout] --> benches/quantization.rs:49:21 [INFO] [stdout] | [INFO] [stdout] 49 | black_box(&output); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead [INFO] [stdout] --> benches/quantization.rs:73:17 [INFO] [stdout] | [INFO] [stdout] 73 | black_box(&c); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead [INFO] [stdout] --> benches/quantization.rs:99:17 [INFO] [stdout] | [INFO] [stdout] 99 | black_box(&output); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead [INFO] [stdout] --> benches/quantization.rs:127:17 [INFO] [stdout] | [INFO] [stdout] 127 | black_box(&output); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead [INFO] [stdout] --> benches/quantization.rs:154:17 [INFO] [stdout] | [INFO] [stdout] 154 | black_box(&output); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead [INFO] [stdout] --> benches/quantization.rs:189:25 [INFO] [stdout] | [INFO] [stdout] 189 | black_box(&output); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead [INFO] [stdout] --> benches/quantization.rs:211:25 [INFO] [stdout] | [INFO] [stdout] 211 | black_box(&output); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead [INFO] [stdout] --> benches/quantization.rs:233:17 [INFO] [stdout] | [INFO] [stdout] 233 | black_box(result) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead [INFO] [stdout] --> benches/quantization.rs:255:17 [INFO] [stdout] | [INFO] [stdout] 255 | black_box(&out); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead [INFO] [stdout] --> benches/quantization.rs:265:17 [INFO] [stdout] | [INFO] [stdout] 265 | black_box(&out); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead [INFO] [stdout] --> benches/quantization.rs:274:17 [INFO] [stdout] | [INFO] [stdout] 274 | black_box(&out); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `header_end` [INFO] [stdout] --> examples/verify_dequant.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | let header_end = npy_data.iter().position(|&b| b == b'\n').unwrap_or(0) + 1; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_header_end` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `queries_per_kv` [INFO] [stdout] --> examples/debug_multi_token.rs:91:9 [INFO] [stdout] | [INFO] [stdout] 91 | let queries_per_kv = num_heads / num_kv_heads; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_queries_per_kv` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `q_vec_with_bias` [INFO] [stdout] --> examples/attention_decompose.rs:179:9 [INFO] [stdout] | [INFO] [stdout] 179 | let q_vec_with_bias = &q_with_bias[query_pos][head * head_dim..(head + 1) * head_dim]; [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_q_vec_with_bias` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `k_vec_with_bias` [INFO] [stdout] --> examples/attention_decompose.rs:234:13 [INFO] [stdout] | [INFO] [stdout] 234 | let k_vec_with_bias = &k_with_bias[kv_pos][kv_head * head_dim..(kv_head + 1) * head_dim]; [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_k_vec_with_bias` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `queries_per_kv` [INFO] [stdout] --> examples/debug_kv_cache.rs:91:9 [INFO] [stdout] | [INFO] [stdout] 91 | let queries_per_kv = num_heads / num_kv_heads; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_queries_per_kv` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `wo` [INFO] [stdout] --> examples/debug_kv_cache.rs:101:9 [INFO] [stdout] | [INFO] [stdout] 101 | let wo = dequant(&backend, &load_tensor(&gguf, "blk.0.attn_output.weight")); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_wo` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Backend` [INFO] [stdout] --> examples/debug_ffn.rs:4:15 [INFO] [stdout] | [INFO] [stdout] 4 | backend::{Backend, cpu::CpuBackend}, [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: `Backend` [INFO] [stdout] --> examples/compare_hidden_states.rs:9:15 [INFO] [stdout] | [INFO] [stdout] 9 | backend::{Backend, cpu::CpuBackend}, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> examples/test_without_bias.rs:245:17 [INFO] [stdout] | [INFO] [stdout] 245 | let mut h_after_attn: Vec = [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v_heads` [INFO] [stdout] --> examples/debug_ffn.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 58 | let v_heads: Vec<_> = v_data.chunks(head_dim).collect(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_v_heads` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `max_seq_len` [INFO] [stdout] --> examples/debug_forward_pass.rs:108:9 [INFO] [stdout] | [INFO] [stdout] 108 | let max_seq_len = 512; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_seq_len` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `score` [INFO] [stdout] --> examples/debug_forward_pass.rs:233:17 [INFO] [stdout] | [INFO] [stdout] 233 | let score = dot * scale; // For single position, softmax(score) = 1.0 [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_score` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `softmax` is never used [INFO] [stdout] --> examples/debug_forward_pass.rs:66:4 [INFO] [stdout] | [INFO] [stdout] 66 | fn softmax(scores: &mut [f32]) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output_norm_w` [INFO] [stdout] --> examples/compare_single_layer.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | let output_norm_w = dequant(&backend, &load_tensor(&gguf, "output_norm.weight")); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_norm_w` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output_w` [INFO] [stdout] --> examples/compare_single_layer.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | let output_w = dequant(&backend, &load_tensor(&gguf, "output.weight")); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_output_w` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `try_load_tensor` is never used [INFO] [stdout] --> examples/compare_single_layer.rs:21:4 [INFO] [stdout] | [INFO] [stdout] 21 | fn try_load_tensor(gguf: &GgufFile, name: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `in_features` [INFO] [stdout] --> examples/debug_q6k_layout.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | let in_features = 4864; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_in_features` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `out_features` [INFO] [stdout] --> examples/debug_q6k_layout.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 32 | let out_features = 896; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_out_features` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `intermediate_size` [INFO] [stdout] --> examples/verify_weight_layout.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | let intermediate_size = 4864; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_intermediate_size` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around closure body [INFO] [stdout] --> examples/validate_inference.rs:156:18 [INFO] [stdout] | [INFO] [stdout] 156 | .map(|i| ((i as f32 * 0.01).sin())) [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] 156 - .map(|i| ((i as f32 * 0.01).sin())) [INFO] [stdout] 156 + .map(|i| (i as f32 * 0.01).sin()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Backend` [INFO] [stdout] --> examples/trace_all_layers.rs:4:15 [INFO] [stdout] | [INFO] [stdout] 4 | backend::{Backend, cpu::CpuBackend}, [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 variable: `eps` [INFO] [stdout] --> examples/logit_comparison.rs:60:9 [INFO] [stdout] | [INFO] [stdout] 60 | let eps = 1e-6f32; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_eps` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `rms_norm` is never used [INFO] [stdout] --> examples/logit_comparison.rs:31:4 [INFO] [stdout] | [INFO] [stdout] 31 | fn rms_norm(x: &[f32], w: &[f32], eps: f32) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `vec_mat` is never used [INFO] [stdout] --> examples/logit_comparison.rs:41:4 [INFO] [stdout] | [INFO] [stdout] 41 | fn vec_mat(x: &[f32], w: &[f32], k: usize, n: usize) -> Vec { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `softmax` is never used [INFO] [stdout] --> examples/trace_attention_output.rs:77:4 [INFO] [stdout] | [INFO] [stdout] 77 | fn softmax(scores: &mut [f32]) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `llama_gguf::Model` [INFO] [stdout] --> examples/check_config.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use llama_gguf::Model; [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 variable: `q_vec` [INFO] [stdout] --> examples/attention_scores_debug.rs:236:9 [INFO] [stdout] | [INFO] [stdout] 236 | let q_vec = &q[head * head_dim..(head + 1) * head_dim]; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_q_vec` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> examples/test_actual_layer0.rs:220:13 [INFO] [stdout] | [INFO] [stdout] 220 | let mut h_after_attn: Vec = [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `num_q_per_kv` [INFO] [stdout] --> examples/debug_layer0_detail.rs:99:9 [INFO] [stdout] | [INFO] [stdout] 99 | let num_q_per_kv = num_heads / num_kv_heads; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_q_per_kv` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> examples/layer_by_layer_debug.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> examples/test_seq_length.rs:232:17 [INFO] [stdout] | [INFO] [stdout] 232 | let mut h_after_attn: Vec = [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: variable does not need to be mutable [INFO] [stdout] --> examples/test_rope_bias_order.rs:259:17 [INFO] [stdout] | [INFO] [stdout] 259 | let mut h_after_attn: Vec = [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: variable does not need to be mutable [INFO] [stdout] --> examples/layer_by_layer_debug.rs:334:17 [INFO] [stdout] | [INFO] [stdout] 334 | let mut intermediate: Vec = gate [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Backend` [INFO] [stdout] --> examples/trace_full_forward.rs:6:15 [INFO] [stdout] | [INFO] [stdout] 6 | backend::{Backend, cpu::CpuBackend}, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> examples/compare_backend_manual.rs:145:9 [INFO] [stdout] | [INFO] [stdout] 145 | let mut input_tensor = Tensor::from_f32(&tok_emb, vec![hidden_size]).unwrap(); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `q_bias_info` [INFO] [stdout] --> examples/compare_backend_manual.rs:238:17 [INFO] [stdout] | [INFO] [stdout] 238 | if let Some(q_bias_info) = gguf.data.get_tensor("blk.0.attn_q.bias") { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_q_bias_info` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> examples/layer0_detailed.rs:371:9 [INFO] [stdout] | [INFO] [stdout] 371 | let mut h2: Vec = h.iter().zip(attn_proj.iter()).map(|(a, b)| a + b).collect(); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `kv_len` [INFO] [stdout] --> examples/layer0_detailed.rs:314:9 [INFO] [stdout] | [INFO] [stdout] 314 | let kv_len = 1; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_kv_len` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `softmax` is never used [INFO] [stdout] --> examples/layer0_detailed.rs:93:4 [INFO] [stdout] | [INFO] [stdout] 93 | fn softmax(scores: &mut [f32]) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `assert_approx_eq` is never used [INFO] [stdout] --> src/backend/dx12/mod.rs:480:8 [INFO] [stdout] | [INFO] [stdout] 480 | fn assert_approx_eq(a: &[f32], b: &[f32], tol: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `assert_approx_eq` is never used [INFO] [stdout] --> src/backend/metal/mod.rs:383:8 [INFO] [stdout] | [INFO] [stdout] 383 | fn assert_approx_eq(a: &[f32], b: &[f32], tol: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Backend` [INFO] [stdout] --> tests/hidden_state_test.rs:8:15 [INFO] [stdout] | [INFO] [stdout] 8 | backend::{Backend, cpu::CpuBackend}, [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 variable: `num_kv_heads` [INFO] [stdout] --> examples/verify_attention_math.rs:147:9 [INFO] [stdout] | [INFO] [stdout] 147 | let num_kv_heads = 2; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_kv_heads` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 25.63s [INFO] running `Command { std: "docker" "inspect" "4ac88b86ba115668b0ee732dffaf3101d3e5f3763a10b733378d5a4347b52f3c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4ac88b86ba115668b0ee732dffaf3101d3e5f3763a10b733378d5a4347b52f3c", kill_on_drop: false }` [INFO] [stdout] 4ac88b86ba115668b0ee732dffaf3101d3e5f3763a10b733378d5a4347b52f3c