[INFO] cloning repository https://github.com/TuckerBMorgan/can-t [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/TuckerBMorgan/can-t" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTuckerBMorgan%2Fcan-t", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTuckerBMorgan%2Fcan-t'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] f8f58113838768fdd24c22c4fefb406c8765c600 [INFO] testing TuckerBMorgan/can-t against master#ad85bc524b1ad696e42061ad8338d382dffbdbe5 for pr-146237 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTuckerBMorgan%2Fcan-t" "/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/TuckerBMorgan/can-t [INFO] finished tweaking git repo https://github.com/TuckerBMorgan/can-t [INFO] tweaked toml for git repo https://github.com/TuckerBMorgan/can-t written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/TuckerBMorgan/can-t on toolchain ad85bc524b1ad696e42061ad8338d382dffbdbe5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/TuckerBMorgan/can-t 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" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded monostate v0.1.14 [INFO] [stderr] Downloaded rayon-cond v0.4.0 [INFO] [stderr] Downloaded onig v6.5.1 [INFO] [stderr] Downloaded monostate-impl v0.1.14 [INFO] [stderr] Downloaded thiserror-impl v2.0.14 [INFO] [stderr] Downloaded mnist v0.5.0 [INFO] [stderr] Downloaded pbr v1.1.1 [INFO] [stderr] Downloaded macro_rules_attribute-proc_macro v0.2.2 [INFO] [stderr] Downloaded thiserror v2.0.14 [INFO] [stderr] Downloaded compact_str v0.9.0 [INFO] [stderr] Downloaded fancy-regex v0.13.0 [INFO] [stderr] Downloaded unicode-normalization-alignments v0.1.12 [INFO] [stderr] Downloaded curl v0.4.48 [INFO] [stderr] Downloaded macro_rules_attribute v0.2.2 [INFO] [stderr] Downloaded rust_tokenizers v8.1.1 [INFO] [stderr] Downloaded tokenizers v0.21.4 [INFO] [stderr] Downloaded esaxx-rs v0.1.10 [INFO] [stderr] Downloaded spm_precompiled v0.1.4 [INFO] [stderr] Downloaded onig_sys v69.9.1 [INFO] [stderr] Downloaded curl-sys v0.4.82+curl-8.14.1 [INFO] [stderr] Downloaded metal v0.30.0 [INFO] [stderr] Downloaded tiktoken-rs v0.7.0 [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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] db52b200ed71051970a2a6739befb2c16a49b69a64d63b4250fc1591cf29de80 [INFO] running `Command { std: "docker" "start" "-a" "db52b200ed71051970a2a6739befb2c16a49b69a64d63b4250fc1591cf29de80", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "db52b200ed71051970a2a6739befb2c16a49b69a64d63b4250fc1591cf29de80", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "db52b200ed71051970a2a6739befb2c16a49b69a64d63b4250fc1591cf29de80", kill_on_drop: false }` [INFO] [stdout] db52b200ed71051970a2a6739befb2c16a49b69a64d63b4250fc1591cf29de80 [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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 708c5e312b5e96e172c8021dfb4a7037e85b61d7b089c05555d84a2e50554035 [INFO] running `Command { std: "docker" "start" "-a" "708c5e312b5e96e172c8021dfb4a7037e85b61d7b089c05555d84a2e50554035", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.95 [INFO] [stderr] Compiling libc v0.2.172 [INFO] [stderr] Compiling zerocopy v0.8.25 [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Compiling libm v0.2.15 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling cc v1.2.29 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling rustversion v1.0.22 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Compiling matrixmultiply v0.3.9 [INFO] [stderr] Compiling serde_json v1.0.140 [INFO] [stderr] Compiling portable-atomic v1.11.1 [INFO] [stderr] Compiling curl v0.4.48 [INFO] [stderr] Compiling anyhow v1.0.98 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling unicode-width v0.2.1 [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling adler2 v2.0.1 [INFO] [stderr] Compiling thiserror v2.0.14 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Compiling protobuf v2.28.0 [INFO] [stderr] Compiling tinyvec v1.9.0 [INFO] [stderr] Compiling unicode-normalization-alignments v0.1.12 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling itertools v0.14.0 [INFO] [stderr] Compiling bit-set v0.5.3 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling crossbeam-channel v0.5.15 [INFO] [stderr] Compiling castaway v0.2.4 [INFO] [stderr] Compiling csv-core v0.1.12 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling rayon v1.10.0 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling rand_core v0.9.3 [INFO] [stderr] Compiling console v0.15.11 [INFO] [stderr] Compiling syn v2.0.101 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling socket2 v0.5.9 [INFO] [stderr] Compiling unicode-segmentation v1.12.0 [INFO] [stderr] Compiling bitflags v2.9.1 [INFO] [stderr] Compiling macro_rules_attribute-proc_macro v0.2.2 [INFO] [stderr] Compiling number_prefix v0.4.0 [INFO] [stderr] Compiling rust_tokenizers v8.1.1 [INFO] [stderr] Compiling pbr v1.1.1 [INFO] [stderr] Compiling flate2 v1.1.2 [INFO] [stderr] Compiling unicode-normalization v0.1.24 [INFO] [stderr] Compiling indicatif v0.17.11 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling openssl-sys v0.9.109 [INFO] [stderr] Compiling libz-sys v1.1.22 [INFO] [stderr] Compiling curl-sys v0.4.82+curl-8.14.1 [INFO] [stderr] Compiling onig_sys v69.9.1 [INFO] [stderr] Compiling esaxx-rs v0.1.10 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling num-complex v0.4.6 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling macro_rules_attribute v0.2.2 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling itertools v0.11.0 [INFO] [stderr] Compiling log v0.4.27 [INFO] [stderr] Compiling unicode_categories v0.1.1 [INFO] [stderr] Compiling rand_distr v0.4.3 [INFO] [stderr] Compiling ndarray v0.15.6 [INFO] [stderr] Compiling rayon-cond v0.4.0 [INFO] [stderr] Compiling darling_core v0.20.11 [INFO] [stderr] Compiling mnist v0.5.0 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling fancy-regex v0.13.0 [INFO] [stderr] Compiling bstr v1.12.0 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling monostate-impl v0.1.14 [INFO] [stderr] Compiling thiserror-impl v2.0.14 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling tiktoken-rs v0.7.0 [INFO] [stderr] Compiling darling_macro v0.20.11 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling darling v0.20.11 [INFO] [stderr] Compiling derive_builder_core v0.20.2 [INFO] [stderr] Compiling onig v6.5.1 [INFO] [stderr] Compiling derive_builder_macro v0.20.2 [INFO] [stderr] Compiling derive_builder v0.20.2 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling cant_cpu v0.1.0 (/opt/rustwide/workdir/crates/cant_cpu) [INFO] [stderr] Compiling csv v1.3.1 [INFO] [stderr] Compiling dary_heap v0.3.7 [INFO] [stderr] Compiling spm_precompiled v0.1.4 [INFO] [stderr] Compiling compact_str v0.9.0 [INFO] [stderr] Compiling monostate v0.1.14 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling tokenizers v0.21.4 [INFO] [stderr] Compiling cant v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `ndarray::prelude::*` [INFO] [stdout] --> src/central/cross_entropy_op.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use ndarray::prelude::*; [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: `super::backward_for_matmul` [INFO] [stdout] --> src/central/equation.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use super::backward_for_matmul; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `cross_entropy_op` [INFO] [stdout] --> src/central/equation.rs:5:50 [INFO] [stdout] | [INFO] [stdout] 5 | InternalTensor, Operation, TensorID, add_op, cross_entropy_op, log, matmul_op, mean_op, mul_op, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `IndexMut` and `Index` [INFO] [stdout] --> src/central/index.rs:2:16 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ops::{Index, IndexMut}; [INFO] [stdout] | ^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `utils::padding_dimenions_to_four` [INFO] [stdout] --> src/central/mean_op.rs:1:25 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::{central::*, utils::padding_dimenions_to_four}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> src/central/mean_op.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `equation` [INFO] [stdout] --> src/central/select_op.rs:1:47 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::central::{Shape, Tensor, TensorID, equation, get_equation}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> src/central/std_op.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ndarray::prelude::*` [INFO] [stdout] --> src/central/masked_fill.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use ndarray::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `add_op::*` [INFO] [stdout] --> src/central/mod.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub use add_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `cross_entropy_op::*` [INFO] [stdout] --> src/central/mod.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | pub use cross_entropy_op::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `index::*` [INFO] [stdout] --> src/central/mod.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub use index::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::*` [INFO] [stdout] --> src/central/mod.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | pub use log::*; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `mean_op::*` [INFO] [stdout] --> src/central/mod.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | pub use mean_op::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `mul_op::*` [INFO] [stdout] --> src/central/mod.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | pub use mul_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `pow_op::*` [INFO] [stdout] --> src/central/mod.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 33 | pub use pow_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `relu_op::*` [INFO] [stdout] --> src/central/mod.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | pub use relu_op::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `reshape::*` [INFO] [stdout] --> src/central/mod.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | pub use reshape::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `select_op::*` [INFO] [stdout] --> src/central/mod.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | pub use select_op::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `softmax_op::*` [INFO] [stdout] --> src/central/mod.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | pub use softmax_op::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std_op::*` [INFO] [stdout] --> src/central/mod.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | pub use std_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sum_op::*` [INFO] [stdout] --> src/central/mod.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | pub use sum_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tanh_op::*` [INFO] [stdout] --> src/central/mod.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | pub use tanh_op::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `transpose_op::*` [INFO] [stdout] --> src/central/mod.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | pub use transpose_op::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::nn::*` [INFO] [stdout] --> src/nn/scaled_dot_project_attention.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::nn::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utils::GGUFFile` [INFO] [stdout] --> src/nn/embedding.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::utils::GGUFFile; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Gpt2Tokenizer` and `Tokenizer` [INFO] [stdout] --> src/nn/gpt2.rs:5:34 [INFO] [stdout] | [INFO] [stdout] 5 | use rust_tokenizers::tokenizer::{Gpt2Tokenizer, Tokenizer}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `relu::*` [INFO] [stdout] --> src/nn/mod.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | pub use relu::*; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tanh::*` [INFO] [stdout] --> src/nn/mod.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 21 | pub use tanh::*; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::hash::Hash` [INFO] [stdout] --> src/utils/gguf.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::hash::Hash; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::central::*` [INFO] [stdout] --> src/lib.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::central::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/lib.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | mod tests { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::central::Shape` [INFO] [stdout] --> src/lib.rs:165:9 [INFO] [stdout] | [INFO] [stdout] 165 | use crate::central::Shape; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/lib.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | mod tests { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::central::Tensor` [INFO] [stdout] --> src/lib.rs:166:9 [INFO] [stdout] | [INFO] [stdout] 166 | use crate::central::Tensor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/lib.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | mod tests { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utils::GGUFFile` [INFO] [stdout] --> src/lib.rs:167:9 [INFO] [stdout] | [INFO] [stdout] 167 | use crate::utils::GGUFFile; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/lib.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | mod tests { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/nn/gpt2.rs:141:9 [INFO] [stdout] | [INFO] [stdout] 140 | panic!(""); [INFO] [stdout] | ---------- any code following this expression is unreachable [INFO] [stdout] 141 | self.final_head.forward(hidden_states) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/central/masked_fill.rs:35:47 [INFO] [stdout] | [INFO] [stdout] 35 | if let Operation::MaskFill(source, mask , value) = packet.operation { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `zero_all_grads` is never used [INFO] [stdout] --> src/central/mod.rs:67:8 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn zero_all_grads() { [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 `update_parameters` is never used [INFO] [stdout] --> src/central/mod.rs:83:8 [INFO] [stdout] | [INFO] [stdout] 83 | pub fn update_parameters(learning_rate: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_vector`, `zero_grad`, and `update_parameters` are never used [INFO] [stdout] --> src/central/equation.rs:250:12 [INFO] [stdout] | [INFO] [stdout] 63 | impl Equation { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 250 | pub fn add_vector(&self, a: &[f32], b: &[f32]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 599 | pub fn zero_grad(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 609 | pub fn update_parameters(&mut self, learning_rate: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `id` is never read [INFO] [stdout] --> src/central/tensor.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct InternalTensor { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 15 | pub id: TensorID, // the unique id for this tensor, it is used by the equation to look up the data [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `operation` is never read [INFO] [stdout] --> src/central/tensor.rs:107:5 [INFO] [stdout] | [INFO] [stdout] 104 | pub struct Tensor { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 107 | operation: Operation, // The operation that created this Tensor(Nop for basic allocations) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Tensor` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `causal_mask` is never used [INFO] [stdout] --> src/nn/gpt_block.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn causal_mask(seq_len: usize) -> Tensor { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GPT2Block` is never constructed [INFO] [stdout] --> src/nn/gpt_block.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct GPT2Block { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `from_gguf_file` are never used [INFO] [stdout] --> src/nn/gpt_block.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 27 | impl GPT2Block { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 28 | pub fn new(config: GPT2Config) -> GPT2Block { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn from_gguf_file(gguf_file: &mut GGUFFile, block_count: i64, gpt_config: &GPT2Config) -> GPT2Block{ [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `forward` and `get_parameters` are never used [INFO] [stdout] --> src/nn/layer.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub trait Layer { [INFO] [stdout] | ----- methods in this trait [INFO] [stdout] 4 | fn forward(&mut self, inputs: Tensor) -> Tensor; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 5 | fn get_parameters(&self) -> Vec; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Linear` is never constructed [INFO] [stdout] --> src/nn/linear.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Linear { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new`, `from_tensors`, and `from_gguf_file` are never used [INFO] [stdout] --> src/nn/linear.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl Linear { [INFO] [stdout] | ----------- associated functions in this implementation [INFO] [stdout] 11 | pub fn new(in_features: usize, out_features: usize, has_bias: bool) -> Linear { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn from_tensors(weights: Tensor, bias: Option) -> Linear { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn from_gguf_file( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Model` is never used [INFO] [stdout] --> src/nn/model.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | pub trait Model { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ReLU` is never constructed [INFO] [stdout] --> src/nn/relu.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct ReLU {} [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/nn/relu.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 6 | impl ReLU { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 7 | pub fn new() -> ReLU { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `layers` is never read [INFO] [stdout] --> src/nn/sequential.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Sequential { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 5 | pub layers: Vec>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TanhLayer` is never constructed [INFO] [stdout] --> src/nn/tanh.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct TanhLayer {} [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/nn/tanh.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 6 | impl TanhLayer { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 7 | pub fn new() -> TanhLayer { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LayerNorm` is never constructed [INFO] [stdout] --> src/nn/layer_norm.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct LayerNorm { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `from_gguf_file` are never used [INFO] [stdout] --> src/nn/layer_norm.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl LayerNorm { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 11 | pub fn new(num_features: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | pub fn from_gguf_file(gguf_file: &mut GGUFFile, weight_name: String, bias_name: String) -> LayerNorm { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MultiHeadAttention` is never constructed [INFO] [stdout] --> src/nn/multihead_attention.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct MultiHeadAttention { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `from_gguf_file`, and `set_mask` are never used [INFO] [stdout] --> src/nn/multihead_attention.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl MultiHeadAttention { [INFO] [stdout] | ----------------------- associated items in this implementation [INFO] [stdout] 26 | pub fn new(embed_dim: usize, number_of_heads: usize, mask: Option) -> MultiHeadAttention { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn from_gguf_file(gguf_file: &mut GGUFFile, block_count: i64, config: &GPT2Config) -> MultiHeadAttention { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn set_mask(&mut self, mask: Tensor) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ScaledDotProductAttention` is never constructed [INFO] [stdout] --> src/nn/scaled_dot_project_attention.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct ScaledDotProductAttention { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `forward` are never used [INFO] [stdout] --> src/nn/scaled_dot_project_attention.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl ScaledDotProductAttention { [INFO] [stdout] | ------------------------------ associated items in this implementation [INFO] [stdout] 13 | pub fn new(scale: f32) -> ScaledDotProductAttention { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | pub fn forward(&self, query: Tensor, key: Tensor, value: Tensor, mask: Option) -> Tensor { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Embedding` is never constructed [INFO] [stdout] --> src/nn/embedding.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Embedding { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `from_tensor` are never used [INFO] [stdout] --> src/nn/embedding.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl Embedding { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 10 | pub fn new(vocab_size: usize, embeding_dimensions: usize) -> Embedding { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn from_tensor(weights: Tensor) -> Embedding { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GELU` is never constructed [INFO] [stdout] --> src/nn/gelu.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct GELU { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/nn/gelu.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl GELU { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 9 | pub fn new() -> GELU { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GPT2Config` is never constructed [INFO] [stdout] --> src/nn/gpt2.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct GPT2Config { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `gpt2_small` and `from_gguf_file` are never used [INFO] [stdout] --> src/nn/gpt2.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl GPT2Config { [INFO] [stdout] | --------------- associated functions in this implementation [INFO] [stdout] 21 | pub fn gpt2_small() -> GPT2Config { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn from_gguf_file(gguf_file: &mut GGUFFile) -> GPT2Config { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sinusoidal_position_encoding` is never used [INFO] [stdout] --> src/nn/gpt2.rs:49:8 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn sinusoidal_position_encoding(seq_len: usize, d_model: usize) -> Tensor { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GPT2` is never constructed [INFO] [stdout] --> src/nn/gpt2.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 65 | pub struct GPT2 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `from_gguf_file` are never used [INFO] [stdout] --> src/nn/gpt2.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 74 | impl GPT2 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 75 | pub fn new(config: GPT2Config) -> GPT2 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 88 | pub fn from_gguf_file(gguf_file: &mut GGUFFile) -> GPT2{ [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/utils/gguf.rs:160:5 [INFO] [stdout] | [INFO] [stdout] 159 | pub struct TensorMetaData { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 160 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TensorMetaData` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `approx_equal` is never used [INFO] [stdout] --> src/lib.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | fn approx_equal(a: f32, b: f32, epsilon: f32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_batch_norm_dataset_from_subset` is never used [INFO] [stdout] --> src/lib.rs:116:8 [INFO] [stdout] | [INFO] [stdout] 116 | fn build_batch_norm_dataset_from_subset( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_dataset_from_subset` is never used [INFO] [stdout] --> src/lib.rs:134:8 [INFO] [stdout] | [INFO] [stdout] 134 | fn build_dataset_from_subset( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_lines` is never used [INFO] [stdout] --> src/lib.rs:156:8 [INFO] [stdout] | [INFO] [stdout] 156 | fn read_lines(filename: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 50 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 50 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:56:5 [INFO] [stdout] | [INFO] [stdout] 56 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 56 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:62:5 [INFO] [stdout] | [INFO] [stdout] 62 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 62 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 68 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 68 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:74:5 [INFO] [stdout] | [INFO] [stdout] 74 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 74 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 80 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:86:5 [INFO] [stdout] | [INFO] [stdout] 86 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 86 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:92:5 [INFO] [stdout] | [INFO] [stdout] 92 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 92 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:98:5 [INFO] [stdout] | [INFO] [stdout] 98 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 98 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:104:5 [INFO] [stdout] | [INFO] [stdout] 104 | f.read_exact(&mut string_size); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 104 | let _ = f.read_exact(&mut string_size); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:107:5 [INFO] [stdout] | [INFO] [stdout] 107 | f.read_exact(&mut string_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 107 | let _ = f.read_exact(&mut string_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:277:9 [INFO] [stdout] | [INFO] [stdout] 277 | f.seek_relative(padding as i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 277 | let _ = f.seek_relative(padding as i64); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 54.44s [INFO] running `Command { std: "docker" "inspect" "708c5e312b5e96e172c8021dfb4a7037e85b61d7b089c05555d84a2e50554035", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "708c5e312b5e96e172c8021dfb4a7037e85b61d7b089c05555d84a2e50554035", kill_on_drop: false }` [INFO] [stdout] 708c5e312b5e96e172c8021dfb4a7037e85b61d7b089c05555d84a2e50554035 [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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 107d8187a41cc7da7123b4a6ffba7340538885835febdcced763c70bd9cc76ae [INFO] running `Command { std: "docker" "start" "-a" "107d8187a41cc7da7123b4a6ffba7340538885835febdcced763c70bd9cc76ae", kill_on_drop: false }` [INFO] [stdout] warning: unused import: `ndarray::prelude::*` [INFO] [stdout] --> src/central/cross_entropy_op.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use ndarray::prelude::*; [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: `super::backward_for_matmul` [INFO] [stdout] --> src/central/equation.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use super::backward_for_matmul; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `cross_entropy_op` [INFO] [stdout] --> src/central/equation.rs:5:50 [INFO] [stdout] | [INFO] [stdout] 5 | InternalTensor, Operation, TensorID, add_op, cross_entropy_op, log, matmul_op, mean_op, mul_op, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `IndexMut` and `Index` [INFO] [stdout] --> src/central/index.rs:2:16 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ops::{Index, IndexMut}; [INFO] [stdout] | ^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `utils::padding_dimenions_to_four` [INFO] [stdout] --> src/central/mean_op.rs:1:25 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::{central::*, utils::padding_dimenions_to_four}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> src/central/mean_op.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `equation` [INFO] [stdout] --> src/central/select_op.rs:1:47 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::central::{Shape, Tensor, TensorID, equation, get_equation}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> src/central/std_op.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ndarray::prelude::*` [INFO] [stdout] --> src/central/masked_fill.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use ndarray::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `add_op::*` [INFO] [stdout] --> src/central/mod.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub use add_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `cross_entropy_op::*` [INFO] [stdout] --> src/central/mod.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | pub use cross_entropy_op::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `index::*` [INFO] [stdout] --> src/central/mod.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub use index::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::*` [INFO] [stdout] --> src/central/mod.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | pub use log::*; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `mean_op::*` [INFO] [stdout] --> src/central/mod.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | pub use mean_op::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `mul_op::*` [INFO] [stdout] --> src/central/mod.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | pub use mul_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `pow_op::*` [INFO] [stdout] --> src/central/mod.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 33 | pub use pow_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `relu_op::*` [INFO] [stdout] --> src/central/mod.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | pub use relu_op::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `reshape::*` [INFO] [stdout] --> src/central/mod.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | pub use reshape::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `select_op::*` [INFO] [stdout] --> src/central/mod.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | pub use select_op::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `softmax_op::*` [INFO] [stdout] --> src/central/mod.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | pub use softmax_op::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std_op::*` [INFO] [stdout] --> src/central/mod.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | pub use std_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sum_op::*` [INFO] [stdout] --> src/central/mod.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | pub use sum_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tanh_op::*` [INFO] [stdout] --> src/central/mod.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | pub use tanh_op::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `transpose_op::*` [INFO] [stdout] --> src/central/mod.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | pub use transpose_op::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::nn::*` [INFO] [stdout] --> src/nn/scaled_dot_project_attention.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::nn::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utils::GGUFFile` [INFO] [stdout] --> src/nn/embedding.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::utils::GGUFFile; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Gpt2Tokenizer` and `Tokenizer` [INFO] [stdout] --> src/nn/gpt2.rs:5:34 [INFO] [stdout] | [INFO] [stdout] 5 | use rust_tokenizers::tokenizer::{Gpt2Tokenizer, Tokenizer}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `relu::*` [INFO] [stdout] --> src/nn/mod.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | pub use relu::*; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tanh::*` [INFO] [stdout] --> src/nn/mod.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 21 | pub use tanh::*; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::hash::Hash` [INFO] [stdout] --> src/utils/gguf.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::hash::Hash; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::central::*` [INFO] [stdout] --> src/lib.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::central::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/lib.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | mod tests { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::central::Shape` [INFO] [stdout] --> src/lib.rs:165:9 [INFO] [stdout] | [INFO] [stdout] 165 | use crate::central::Shape; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/lib.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | mod tests { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::central::Tensor` [INFO] [stdout] --> src/lib.rs:166:9 [INFO] [stdout] | [INFO] [stdout] 166 | use crate::central::Tensor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/lib.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | mod tests { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utils::GGUFFile` [INFO] [stdout] --> src/lib.rs:167:9 [INFO] [stdout] | [INFO] [stdout] 167 | use crate::utils::GGUFFile; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/lib.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | mod tests { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/nn/gpt2.rs:141:9 [INFO] [stdout] | [INFO] [stdout] 140 | panic!(""); [INFO] [stdout] | ---------- any code following this expression is unreachable [INFO] [stdout] 141 | self.final_head.forward(hidden_states) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/central/masked_fill.rs:35:47 [INFO] [stdout] | [INFO] [stdout] 35 | if let Operation::MaskFill(source, mask , value) = packet.operation { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `zero_all_grads` is never used [INFO] [stdout] --> src/central/mod.rs:67:8 [INFO] [stdout] | [INFO] [stdout] 67 | pub fn zero_all_grads() { [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 `update_parameters` is never used [INFO] [stdout] --> src/central/mod.rs:83:8 [INFO] [stdout] | [INFO] [stdout] 83 | pub fn update_parameters(learning_rate: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_vector`, `zero_grad`, and `update_parameters` are never used [INFO] [stdout] --> src/central/equation.rs:250:12 [INFO] [stdout] | [INFO] [stdout] 63 | impl Equation { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 250 | pub fn add_vector(&self, a: &[f32], b: &[f32]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 599 | pub fn zero_grad(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 609 | pub fn update_parameters(&mut self, learning_rate: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `id` is never read [INFO] [stdout] --> src/central/tensor.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct InternalTensor { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 15 | pub id: TensorID, // the unique id for this tensor, it is used by the equation to look up the data [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `operation` is never read [INFO] [stdout] --> src/central/tensor.rs:107:5 [INFO] [stdout] | [INFO] [stdout] 104 | pub struct Tensor { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 107 | operation: Operation, // The operation that created this Tensor(Nop for basic allocations) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Tensor` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `causal_mask` is never used [INFO] [stdout] --> src/nn/gpt_block.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn causal_mask(seq_len: usize) -> Tensor { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GPT2Block` is never constructed [INFO] [stdout] --> src/nn/gpt_block.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 20 | pub struct GPT2Block { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `from_gguf_file` are never used [INFO] [stdout] --> src/nn/gpt_block.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 27 | impl GPT2Block { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 28 | pub fn new(config: GPT2Config) -> GPT2Block { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn from_gguf_file(gguf_file: &mut GGUFFile, block_count: i64, gpt_config: &GPT2Config) -> GPT2Block{ [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `forward` and `get_parameters` are never used [INFO] [stdout] --> src/nn/layer.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub trait Layer { [INFO] [stdout] | ----- methods in this trait [INFO] [stdout] 4 | fn forward(&mut self, inputs: Tensor) -> Tensor; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 5 | fn get_parameters(&self) -> Vec; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Linear` is never constructed [INFO] [stdout] --> src/nn/linear.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Linear { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new`, `from_tensors`, and `from_gguf_file` are never used [INFO] [stdout] --> src/nn/linear.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl Linear { [INFO] [stdout] | ----------- associated functions in this implementation [INFO] [stdout] 11 | pub fn new(in_features: usize, out_features: usize, has_bias: bool) -> Linear { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn from_tensors(weights: Tensor, bias: Option) -> Linear { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn from_gguf_file( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `Model` is never used [INFO] [stdout] --> src/nn/model.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | pub trait Model { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ReLU` is never constructed [INFO] [stdout] --> src/nn/relu.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct ReLU {} [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/nn/relu.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 6 | impl ReLU { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 7 | pub fn new() -> ReLU { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `layers` is never read [INFO] [stdout] --> src/nn/sequential.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Sequential { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 5 | pub layers: Vec>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TanhLayer` is never constructed [INFO] [stdout] --> src/nn/tanh.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct TanhLayer {} [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/nn/tanh.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 6 | impl TanhLayer { [INFO] [stdout] | -------------- associated function in this implementation [INFO] [stdout] 7 | pub fn new() -> TanhLayer { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LayerNorm` is never constructed [INFO] [stdout] --> src/nn/layer_norm.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct LayerNorm { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `from_gguf_file` are never used [INFO] [stdout] --> src/nn/layer_norm.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl LayerNorm { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 11 | pub fn new(num_features: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | pub fn from_gguf_file(gguf_file: &mut GGUFFile, weight_name: String, bias_name: String) -> LayerNorm { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MultiHeadAttention` is never constructed [INFO] [stdout] --> src/nn/multihead_attention.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct MultiHeadAttention { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `from_gguf_file`, and `set_mask` are never used [INFO] [stdout] --> src/nn/multihead_attention.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl MultiHeadAttention { [INFO] [stdout] | ----------------------- associated items in this implementation [INFO] [stdout] 26 | pub fn new(embed_dim: usize, number_of_heads: usize, mask: Option) -> MultiHeadAttention { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn from_gguf_file(gguf_file: &mut GGUFFile, block_count: i64, config: &GPT2Config) -> MultiHeadAttention { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn set_mask(&mut self, mask: Tensor) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ScaledDotProductAttention` is never constructed [INFO] [stdout] --> src/nn/scaled_dot_project_attention.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct ScaledDotProductAttention { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `forward` are never used [INFO] [stdout] --> src/nn/scaled_dot_project_attention.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 12 | impl ScaledDotProductAttention { [INFO] [stdout] | ------------------------------ associated items in this implementation [INFO] [stdout] 13 | pub fn new(scale: f32) -> ScaledDotProductAttention { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | pub fn forward(&self, query: Tensor, key: Tensor, value: Tensor, mask: Option) -> Tensor { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Embedding` is never constructed [INFO] [stdout] --> src/nn/embedding.rs:5:12 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Embedding { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `from_tensor` are never used [INFO] [stdout] --> src/nn/embedding.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 9 | impl Embedding { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 10 | pub fn new(vocab_size: usize, embeding_dimensions: usize) -> Embedding { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn from_tensor(weights: Tensor) -> Embedding { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GELU` is never constructed [INFO] [stdout] --> src/nn/gelu.rs:4:12 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct GELU { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/nn/gelu.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl GELU { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 9 | pub fn new() -> GELU { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GPT2Config` is never constructed [INFO] [stdout] --> src/nn/gpt2.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct GPT2Config { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `gpt2_small` and `from_gguf_file` are never used [INFO] [stdout] --> src/nn/gpt2.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl GPT2Config { [INFO] [stdout] | --------------- associated functions in this implementation [INFO] [stdout] 21 | pub fn gpt2_small() -> GPT2Config { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn from_gguf_file(gguf_file: &mut GGUFFile) -> GPT2Config { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sinusoidal_position_encoding` is never used [INFO] [stdout] --> src/nn/gpt2.rs:49:8 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn sinusoidal_position_encoding(seq_len: usize, d_model: usize) -> Tensor { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GPT2` is never constructed [INFO] [stdout] --> src/nn/gpt2.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 65 | pub struct GPT2 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `from_gguf_file` are never used [INFO] [stdout] --> src/nn/gpt2.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 74 | impl GPT2 { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 75 | pub fn new(config: GPT2Config) -> GPT2 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 88 | pub fn from_gguf_file(gguf_file: &mut GGUFFile) -> GPT2{ [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/utils/gguf.rs:160:5 [INFO] [stdout] | [INFO] [stdout] 159 | pub struct TensorMetaData { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 160 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TensorMetaData` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `approx_equal` is never used [INFO] [stdout] --> src/lib.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 8 | fn approx_equal(a: f32, b: f32, epsilon: f32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_batch_norm_dataset_from_subset` is never used [INFO] [stdout] --> src/lib.rs:116:8 [INFO] [stdout] | [INFO] [stdout] 116 | fn build_batch_norm_dataset_from_subset( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_dataset_from_subset` is never used [INFO] [stdout] --> src/lib.rs:134:8 [INFO] [stdout] | [INFO] [stdout] 134 | fn build_dataset_from_subset( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_lines` is never used [INFO] [stdout] --> src/lib.rs:156:8 [INFO] [stdout] | [INFO] [stdout] 156 | fn read_lines(filename: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 50 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 50 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:56:5 [INFO] [stdout] | [INFO] [stdout] 56 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 56 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling cant v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:62:5 [INFO] [stdout] | [INFO] [stdout] 62 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 62 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 68 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 68 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:74:5 [INFO] [stdout] | [INFO] [stdout] 74 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 74 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 80 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:86:5 [INFO] [stdout] | [INFO] [stdout] 86 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 86 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:92:5 [INFO] [stdout] | [INFO] [stdout] 92 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 92 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:98:5 [INFO] [stdout] | [INFO] [stdout] 98 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 98 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:104:5 [INFO] [stdout] | [INFO] [stdout] 104 | f.read_exact(&mut string_size); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 104 | let _ = f.read_exact(&mut string_size); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:107:5 [INFO] [stdout] | [INFO] [stdout] 107 | f.read_exact(&mut string_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 107 | let _ = f.read_exact(&mut string_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:277:9 [INFO] [stdout] | [INFO] [stdout] 277 | f.seek_relative(padding as i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 277 | let _ = f.seek_relative(padding as i64); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ndarray::prelude::*` [INFO] [stdout] --> src/central/cross_entropy_op.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use ndarray::prelude::*; [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: `super::backward_for_matmul` [INFO] [stdout] --> src/central/equation.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use super::backward_for_matmul; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `cross_entropy_op` [INFO] [stdout] --> src/central/equation.rs:5:50 [INFO] [stdout] | [INFO] [stdout] 5 | InternalTensor, Operation, TensorID, add_op, cross_entropy_op, log, matmul_op, mean_op, mul_op, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `IndexMut` and `Index` [INFO] [stdout] --> src/central/index.rs:2:16 [INFO] [stdout] | [INFO] [stdout] 2 | use std::ops::{Index, IndexMut}; [INFO] [stdout] | ^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `utils::padding_dimenions_to_four` [INFO] [stdout] --> src/central/mean_op.rs:1:25 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::{central::*, utils::padding_dimenions_to_four}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> src/central/mean_op.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `equation` [INFO] [stdout] --> src/central/select_op.rs:1:47 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::central::{Shape, Tensor, TensorID, equation, get_equation}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashSet` [INFO] [stdout] --> src/central/std_op.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::collections::HashSet; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `get_equation` [INFO] [stdout] --> src/central/std_op.rs:175:52 [INFO] [stdout] | [INFO] [stdout] 175 | use crate::central::{Operation, Shape, Tensor, get_equation}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ndarray::prelude::*` [INFO] [stdout] --> src/central/masked_fill.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use ndarray::prelude::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `add_op::*` [INFO] [stdout] --> src/central/mod.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub use add_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `cross_entropy_op::*` [INFO] [stdout] --> src/central/mod.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | pub use cross_entropy_op::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `index::*` [INFO] [stdout] --> src/central/mod.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub use index::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log::*` [INFO] [stdout] --> src/central/mod.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | pub use log::*; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `mean_op::*` [INFO] [stdout] --> src/central/mod.rs:30:9 [INFO] [stdout] | [INFO] [stdout] 30 | pub use mean_op::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `mul_op::*` [INFO] [stdout] --> src/central/mod.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | pub use mul_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `pow_op::*` [INFO] [stdout] --> src/central/mod.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 33 | pub use pow_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `relu_op::*` [INFO] [stdout] --> src/central/mod.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | pub use relu_op::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `reshape::*` [INFO] [stdout] --> src/central/mod.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | pub use reshape::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `select_op::*` [INFO] [stdout] --> src/central/mod.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | pub use select_op::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `softmax_op::*` [INFO] [stdout] --> src/central/mod.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | pub use softmax_op::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std_op::*` [INFO] [stdout] --> src/central/mod.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | pub use std_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sum_op::*` [INFO] [stdout] --> src/central/mod.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | pub use sum_op::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tanh_op::*` [INFO] [stdout] --> src/central/mod.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | pub use tanh_op::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `transpose_op::*` [INFO] [stdout] --> src/central/mod.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | pub use transpose_op::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around closure body [INFO] [stdout] --> src/nn/layer_norm.rs:982:68 [INFO] [stdout] | [INFO] [stdout] 982 | let input_data: Vec = (0..batch_size * 3).map(|i| (i as f32 + 1.0)).collect(); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 982 - let input_data: Vec = (0..batch_size * 3).map(|i| (i as f32 + 1.0)).collect(); [INFO] [stdout] 982 + let input_data: Vec = (0..batch_size * 3).map(|i| i as f32 + 1.0).collect(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::utils::GGUFFile` [INFO] [stdout] --> src/nn/embedding.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::utils::GGUFFile; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Gpt2Tokenizer` and `Tokenizer` [INFO] [stdout] --> src/nn/gpt2.rs:5:34 [INFO] [stdout] | [INFO] [stdout] 5 | use rust_tokenizers::tokenizer::{Gpt2Tokenizer, Tokenizer}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GPT2Config` [INFO] [stdout] --> src/nn/gpt2.rs:162:21 [INFO] [stdout] | [INFO] [stdout] 162 | use crate::nn::{GPT2Config, Model, GPT2}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ndarray::Axis` [INFO] [stdout] --> src/nn/gpt2.rs:165:9 [INFO] [stdout] | [INFO] [stdout] 165 | use ndarray::Axis; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `EncodeInput` [INFO] [stdout] --> src/nn/gpt2.rs:209:52 [INFO] [stdout] | [INFO] [stdout] 209 | use tokenizers::tokenizer::{Result, Tokenizer, EncodeInput}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::hash::Hash` [INFO] [stdout] --> src/utils/gguf.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::hash::Hash; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/nn/layer_norm.rs:839:9 [INFO] [stdout] | [INFO] [stdout] 838 | return; [INFO] [stdout] | ------ any code following this expression is unreachable [INFO] [stdout] 839 | / for i in 0..3 { [INFO] [stdout] 840 | | // Bias gradient should be non-zero and finite [INFO] [stdout] 841 | | assert!(bias_grad[[i]].is_finite()); [INFO] [stdout] 842 | | assert!(bias_grad[[i]].abs() > 1e-8, "Bias gradient should be non-zero"); [INFO] [stdout] ... | [INFO] [stdout] 846 | | assert!(weight_grad[[i]].abs() > 1e-8, "Weight gradient should be non-zero"); [INFO] [stdout] 847 | | } [INFO] [stdout] | |_________^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/nn/gpt2.rs:141:9 [INFO] [stdout] | [INFO] [stdout] 140 | panic!(""); [INFO] [stdout] | ---------- any code following this expression is unreachable [INFO] [stdout] 141 | self.final_head.forward(hidden_states) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::nn` [INFO] [stdout] --> src/nn/scaled_dot_project_attention.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::nn::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `axis` [INFO] [stdout] --> src/central/softmax_op.rs:115:51 [INFO] [stdout] | [INFO] [stdout] 115 | fn assert_softmax_properties(tensor: &Tensor, axis: usize) { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 115 | fn assert_softmax_properties(tensor: &Tensor, _axis: usize) { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `BATCH_SIZE` [INFO] [stdout] | [INFO] [stdout] 115 - fn assert_softmax_properties(tensor: &Tensor, axis: usize) { [INFO] [stdout] 115 + fn assert_softmax_properties(tensor: &Tensor, tests::batch_norm_simple_test::BATCH_SIZE: usize) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/central/masked_fill.rs:35:47 [INFO] [stdout] | [INFO] [stdout] 35 | if let Operation::MaskFill(source, mask , value) = packet.operation { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `indices` [INFO] [stdout] --> src/central/masked_fill.rs:291:21 [INFO] [stdout] | [INFO] [stdout] 291 | let indices: Vec = (0..shape.len()) [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_indices` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `has_zero_grads` [INFO] [stdout] --> src/nn/linear.rs:537:13 [INFO] [stdout] | [INFO] [stdout] 537 | let has_zero_grads = layer1_weight_grad.iter().any(|&g| g == 0.0); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_has_zero_grads` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `batch_size` [INFO] [stdout] --> src/nn/sequential.rs:518:13 [INFO] [stdout] | [INFO] [stdout] 518 | let batch_size = 128; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_batch_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `image_size` [INFO] [stdout] --> src/nn/sequential.rs:519:13 [INFO] [stdout] | [INFO] [stdout] 519 | let image_size = 64; [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_image_size` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `number_of_channels` [INFO] [stdout] --> src/nn/sequential.rs:520:13 [INFO] [stdout] | [INFO] [stdout] 520 | let number_of_channels = 3; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_of_channels` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `size_of_latent_z_vector` [INFO] [stdout] --> src/nn/sequential.rs:521:13 [INFO] [stdout] | [INFO] [stdout] 521 | let size_of_latent_z_vector = 100; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_size_of_latent_z_vector` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `number_of_feature_maps_generator` [INFO] [stdout] --> src/nn/sequential.rs:522:13 [INFO] [stdout] | [INFO] [stdout] 522 | let number_of_feature_maps_generator = 64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_of_feature_maps_generator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `number_of_feature_maps_discriminator` [INFO] [stdout] --> src/nn/sequential.rs:523:13 [INFO] [stdout] | [INFO] [stdout] 523 | let number_of_feature_maps_discriminator = 64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_of_feature_maps_discriminator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `number_of_training_epochs` [INFO] [stdout] --> src/nn/sequential.rs:524:13 [INFO] [stdout] | [INFO] [stdout] 524 | let number_of_training_epochs = 5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_of_training_epochs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `learning_rate` [INFO] [stdout] --> src/nn/sequential.rs:525:13 [INFO] [stdout] | [INFO] [stdout] 525 | let learning_rate = 0.0020; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_learning_rate` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `beta_1` [INFO] [stdout] --> src/nn/sequential.rs:526:13 [INFO] [stdout] | [INFO] [stdout] 526 | let beta_1 = 0.5; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_beta_1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `grad_diff` [INFO] [stdout] --> src/nn/layer_norm.rs:798:13 [INFO] [stdout] | [INFO] [stdout] 798 | let grad_diff = (input1_grad[[0, 0]] - input2_grad[[0, 0]]).abs(); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 798 | let _grad_diff = (input1_grad[[0, 0]] - input2_grad[[0, 0]]).abs(); [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `EPS` [INFO] [stdout] | [INFO] [stdout] 798 - let grad_diff = (input1_grad[[0, 0]] - input2_grad[[0, 0]]).abs(); [INFO] [stdout] 798 + let central::pow_op::backward_for_pow::EPS = (input1_grad[[0, 0]] - input2_grad[[0, 0]]).abs(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `weight_grad` [INFO] [stdout] --> src/nn/layer_norm.rs:833:13 [INFO] [stdout] | [INFO] [stdout] 833 | let weight_grad = layer_norm.weight.grad(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_weight_grad` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `bias_grad` [INFO] [stdout] --> src/nn/layer_norm.rs:834:13 [INFO] [stdout] | [INFO] [stdout] 834 | let bias_grad = layer_norm.bias.grad(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bias_grad` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `grad` [INFO] [stdout] --> src/nn/layer_norm.rs:949:14 [INFO] [stdout] | [INFO] [stdout] 949 | for &grad in input_grad.iter() { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 949 | for &_grad in input_grad.iter() { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `EPS` [INFO] [stdout] | [INFO] [stdout] 949 - for &grad in input_grad.iter() { [INFO] [stdout] 949 + for ¢ral::pow_op::backward_for_pow::EPS in input_grad.iter() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `weight_grad` [INFO] [stdout] --> src/nn/layer_norm.rs:955:13 [INFO] [stdout] | [INFO] [stdout] 955 | let weight_grad = layer_norm.weight.grad(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_weight_grad` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `bias_grad` [INFO] [stdout] --> src/nn/layer_norm.rs:956:13 [INFO] [stdout] | [INFO] [stdout] 956 | let bias_grad = layer_norm.bias.grad(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bias_grad` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/nn/layer_norm.rs:958:13 [INFO] [stdout] | [INFO] [stdout] 958 | for i in 0..3 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pytorch_input` [INFO] [stdout] --> src/nn/layer_norm.rs:1389:13 [INFO] [stdout] | [INFO] [stdout] 1389 | let pytorch_input = Tensor::from_gguf_file(String::from("layer_norm_forward_different_feature_sizes_input"), &mut gguf_file); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pytorch_weight` [INFO] [stdout] --> src/nn/layer_norm.rs:1391:13 [INFO] [stdout] | [INFO] [stdout] 1391 | let pytorch_weight = Tensor::from_gguf_file(String::from("layer_norm_forward_different_feature_sizes_weight"), &mut gguf_file); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_weight` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pytorch_bias` [INFO] [stdout] --> src/nn/layer_norm.rs:1392:13 [INFO] [stdout] | [INFO] [stdout] 1392 | let pytorch_bias = Tensor::from_gguf_file(String::from("layer_norm_forward_different_feature_sizes_bias"), &mut gguf_file); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_bias` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pytorch_input` [INFO] [stdout] --> src/nn/layer_norm.rs:1467:13 [INFO] [stdout] | [INFO] [stdout] 1467 | let pytorch_input = Tensor::from_gguf_file(String::from("layer_norm_forward_multiple_calls_input"), &mut gguf_file); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pytorch_weight` [INFO] [stdout] --> src/nn/layer_norm.rs:1470:13 [INFO] [stdout] | [INFO] [stdout] 1470 | let pytorch_weight = Tensor::from_gguf_file(String::from("layer_norm_forward_multiple_calls_weight"), &mut gguf_file); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_weight` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pytorch_bias` [INFO] [stdout] --> src/nn/layer_norm.rs:1471:13 [INFO] [stdout] | [INFO] [stdout] 1471 | let pytorch_bias = Tensor::from_gguf_file(String::from("layer_norm_forward_multiple_calls_bias"), &mut gguf_file); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_bias` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pytorch_input` [INFO] [stdout] --> src/nn/layer_norm.rs:1580:13 [INFO] [stdout] | [INFO] [stdout] 1580 | let pytorch_input = Tensor::from_gguf_file(String::from("layer_norm_backward_parameter_gradients_input"), &mut gguf_file); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pytorch_weight` [INFO] [stdout] --> src/nn/layer_norm.rs:1583:13 [INFO] [stdout] | [INFO] [stdout] 1583 | let pytorch_weight = Tensor::from_gguf_file(String::from("layer_norm_backward_parameter_gradients_weight"), &mut gguf_file); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_weight` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pytorch_bias` [INFO] [stdout] --> src/nn/layer_norm.rs:1584:13 [INFO] [stdout] | [INFO] [stdout] 1584 | let pytorch_bias = Tensor::from_gguf_file(String::from("layer_norm_backward_parameter_gradients_bias"), &mut gguf_file); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_bias` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pytorch_input_grad` [INFO] [stdout] --> src/nn/layer_norm.rs:1585:13 [INFO] [stdout] | [INFO] [stdout] 1585 | let pytorch_input_grad = Tensor::from_gguf_file(String::from("layer_norm_backward_parameter_gradients_input_grad"), &mut gguf_file); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_input_grad` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/nn/gpt2.rs:220:13 [INFO] [stdout] | [INFO] [stdout] 220 | let mut tokenizer = Tokenizer::new(bpe); [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: `bnvar_inv` [INFO] [stdout] --> src/lib.rs:274:21 [INFO] [stdout] | [INFO] [stdout] 274 | let bnvar_inv = (bnvari + 1e-5).pow(-0.5); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bnvar_inv` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `epoch` [INFO] [stdout] --> src/lib.rs:354:13 [INFO] [stdout] | [INFO] [stdout] 354 | for epoch in 0..100 { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_epoch` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:423:13 [INFO] [stdout] | [INFO] [stdout] 423 | let mut y_true = Tensor::zeros(Shape::new(vec![batch_size, num_classes])); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `gguf_file` [INFO] [stdout] --> src/lib.rs:528:17 [INFO] [stdout] | [INFO] [stdout] 528 | let mut gguf_file = GGUFFile::new(String::from("./models/tests/gpt2/Gpt2-124M-F16.gguf")); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gguf_file` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:528:13 [INFO] [stdout] | [INFO] [stdout] 528 | let mut gguf_file = GGUFFile::new(String::from("./models/tests/gpt2/Gpt2-124M-F16.gguf")); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `add_vector` is never used [INFO] [stdout] --> src/central/equation.rs:250:12 [INFO] [stdout] | [INFO] [stdout] 63 | impl Equation { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 250 | pub fn add_vector(&self, a: &[f32], b: &[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: field `id` is never read [INFO] [stdout] --> src/central/tensor.rs:15:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct InternalTensor { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 15 | pub id: TensorID, // the unique id for this tensor, it is used by the equation to look up the data [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `operation` is never read [INFO] [stdout] --> src/central/tensor.rs:107:5 [INFO] [stdout] | [INFO] [stdout] 104 | pub struct Tensor { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 107 | operation: Operation, // The operation that created this Tensor(Nop for basic allocations) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Tensor` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `first` is never used [INFO] [stdout] --> src/central/transpose_op.rs:127:8 [INFO] [stdout] | [INFO] [stdout] 127 | fn first() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `show` is never used [INFO] [stdout] --> src/central/transpose_op.rs:133:8 [INFO] [stdout] | [INFO] [stdout] 133 | fn show(list:&mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `approx_equal` is never used [INFO] [stdout] --> src/nn/scaled_dot_project_attention.rs:109:12 [INFO] [stdout] | [INFO] [stdout] 109 | fn approx_equal(a: f32, b: f32, epsilon: f32) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_gguf_file` is never used [INFO] [stdout] --> src/nn/gpt2.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl GPT2Config { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn from_gguf_file(gguf_file: &mut GGUFFile) -> GPT2Config { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sinusoidal_position_encoding` is never used [INFO] [stdout] --> src/nn/gpt2.rs:49:8 [INFO] [stdout] | [INFO] [stdout] 49 | pub fn sinusoidal_position_encoding(seq_len: usize, d_model: usize) -> Tensor { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `config` is never read [INFO] [stdout] --> src/nn/gpt2.rs:66:5 [INFO] [stdout] | [INFO] [stdout] 65 | pub struct GPT2 { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 66 | config: GPT2Config, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/nn/gpt2.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 74 | impl GPT2 { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 75 | pub fn new(config: GPT2Config) -> GPT2 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/utils/gguf.rs:160:5 [INFO] [stdout] | [INFO] [stdout] 159 | pub struct TensorMetaData { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 160 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TensorMetaData` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `build_dataset_from_subset` is never used [INFO] [stdout] --> src/lib.rs:134:8 [INFO] [stdout] | [INFO] [stdout] 134 | fn build_dataset_from_subset( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 50 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 50 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:56:5 [INFO] [stdout] | [INFO] [stdout] 56 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 56 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:62:5 [INFO] [stdout] | [INFO] [stdout] 62 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 62 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 68 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 68 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:74:5 [INFO] [stdout] | [INFO] [stdout] 74 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 74 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 80 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:86:5 [INFO] [stdout] | [INFO] [stdout] 86 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 86 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:92:5 [INFO] [stdout] | [INFO] [stdout] 92 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 92 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:98:5 [INFO] [stdout] | [INFO] [stdout] 98 | f.read_exact(&mut u8_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 98 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:104:5 [INFO] [stdout] | [INFO] [stdout] 104 | f.read_exact(&mut string_size); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 104 | let _ = f.read_exact(&mut string_size); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:107:5 [INFO] [stdout] | [INFO] [stdout] 107 | f.read_exact(&mut string_buffer); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 107 | let _ = f.read_exact(&mut string_buffer); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/utils/gguf.rs:277:9 [INFO] [stdout] | [INFO] [stdout] 277 | f.seek_relative(padding as i64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 277 | let _ = f.seek_relative(padding as i64); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 5.79s [INFO] running `Command { std: "docker" "inspect" "107d8187a41cc7da7123b4a6ffba7340538885835febdcced763c70bd9cc76ae", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "107d8187a41cc7da7123b4a6ffba7340538885835febdcced763c70bd9cc76ae", kill_on_drop: false }` [INFO] [stdout] 107d8187a41cc7da7123b4a6ffba7340538885835febdcced763c70bd9cc76ae [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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 327c75d228398594a2256d6b1ab0a72038ea759a34138c84e34cdc2aece9af2b [INFO] running `Command { std: "docker" "start" "-a" "327c75d228398594a2256d6b1ab0a72038ea759a34138c84e34cdc2aece9af2b", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `ndarray::prelude::*` [INFO] [stderr] --> src/central/cross_entropy_op.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use ndarray::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::backward_for_matmul` [INFO] [stderr] --> src/central/equation.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use super::backward_for_matmul; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `cross_entropy_op` [INFO] [stderr] --> src/central/equation.rs:5:50 [INFO] [stderr] | [INFO] [stderr] 5 | InternalTensor, Operation, TensorID, add_op, cross_entropy_op, log, matmul_op, mean_op, mul_op, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `IndexMut` and `Index` [INFO] [stderr] --> src/central/index.rs:2:16 [INFO] [stderr] | [INFO] [stderr] 2 | use std::ops::{Index, IndexMut}; [INFO] [stderr] | ^^^^^ ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `utils::padding_dimenions_to_four` [INFO] [stderr] --> src/central/mean_op.rs:1:25 [INFO] [stderr] | [INFO] [stderr] 1 | use crate::{central::*, utils::padding_dimenions_to_four}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashSet` [INFO] [stderr] --> src/central/mean_op.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::collections::HashSet; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `equation` [INFO] [stderr] --> src/central/select_op.rs:1:47 [INFO] [stderr] | [INFO] [stderr] 1 | use crate::central::{Shape, Tensor, TensorID, equation, get_equation}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashSet` [INFO] [stderr] --> src/central/std_op.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::collections::HashSet; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ndarray::prelude::*` [INFO] [stderr] --> src/central/masked_fill.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use ndarray::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `add_op::*` [INFO] [stderr] --> src/central/mod.rs:23:9 [INFO] [stderr] | [INFO] [stderr] 23 | pub use add_op::*; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `cross_entropy_op::*` [INFO] [stderr] --> src/central/mod.rs:24:9 [INFO] [stderr] | [INFO] [stderr] 24 | pub use cross_entropy_op::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `index::*` [INFO] [stderr] --> src/central/mod.rs:26:9 [INFO] [stderr] | [INFO] [stderr] 26 | pub use index::*; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `log::*` [INFO] [stderr] --> src/central/mod.rs:28:9 [INFO] [stderr] | [INFO] [stderr] 28 | pub use log::*; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `mean_op::*` [INFO] [stderr] --> src/central/mod.rs:30:9 [INFO] [stderr] | [INFO] [stderr] 30 | pub use mean_op::*; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `mul_op::*` [INFO] [stderr] --> src/central/mod.rs:31:9 [INFO] [stderr] | [INFO] [stderr] 31 | pub use mul_op::*; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `pow_op::*` [INFO] [stderr] --> src/central/mod.rs:33:9 [INFO] [stderr] | [INFO] [stderr] 33 | pub use pow_op::*; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `relu_op::*` [INFO] [stderr] --> src/central/mod.rs:34:9 [INFO] [stderr] | [INFO] [stderr] 34 | pub use relu_op::*; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `reshape::*` [INFO] [stderr] --> src/central/mod.rs:35:9 [INFO] [stderr] | [INFO] [stderr] 35 | pub use reshape::*; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `select_op::*` [INFO] [stderr] --> src/central/mod.rs:36:9 [INFO] [stderr] | [INFO] [stderr] 36 | pub use select_op::*; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `softmax_op::*` [INFO] [stderr] --> src/central/mod.rs:38:9 [INFO] [stderr] | [INFO] [stderr] 38 | pub use softmax_op::*; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std_op::*` [INFO] [stderr] --> src/central/mod.rs:40:9 [INFO] [stderr] | [INFO] [stderr] 40 | pub use std_op::*; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `sum_op::*` [INFO] [stderr] --> src/central/mod.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 41 | pub use sum_op::*; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `tanh_op::*` [INFO] [stderr] --> src/central/mod.rs:42:9 [INFO] [stderr] | [INFO] [stderr] 42 | pub use tanh_op::*; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `transpose_op::*` [INFO] [stderr] --> src/central/mod.rs:44:9 [INFO] [stderr] | [INFO] [stderr] 44 | pub use transpose_op::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::nn::*` [INFO] [stderr] --> src/nn/scaled_dot_project_attention.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::nn::*; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::utils::GGUFFile` [INFO] [stderr] --> src/nn/embedding.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use crate::utils::GGUFFile; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Gpt2Tokenizer` and `Tokenizer` [INFO] [stderr] --> src/nn/gpt2.rs:5:34 [INFO] [stderr] | [INFO] [stderr] 5 | use rust_tokenizers::tokenizer::{Gpt2Tokenizer, Tokenizer}; [INFO] [stderr] | ^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `relu::*` [INFO] [stderr] --> src/nn/mod.rs:19:9 [INFO] [stderr] | [INFO] [stderr] 19 | pub use relu::*; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `tanh::*` [INFO] [stderr] --> src/nn/mod.rs:21:9 [INFO] [stderr] | [INFO] [stderr] 21 | pub use tanh::*; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::hash::Hash` [INFO] [stderr] --> src/utils/gguf.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::hash::Hash; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::central::*` [INFO] [stderr] --> src/lib.rs:6:9 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::central::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stderr] --> src/lib.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | mod tests { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::central::Shape` [INFO] [stderr] --> src/lib.rs:165:9 [INFO] [stderr] | [INFO] [stderr] 165 | use crate::central::Shape; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stderr] --> src/lib.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | mod tests { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::central::Tensor` [INFO] [stderr] --> src/lib.rs:166:9 [INFO] [stderr] | [INFO] [stderr] 166 | use crate::central::Tensor; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stderr] --> src/lib.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | mod tests { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::utils::GGUFFile` [INFO] [stderr] --> src/lib.rs:167:9 [INFO] [stderr] | [INFO] [stderr] 167 | use crate::utils::GGUFFile; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stderr] --> src/lib.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | mod tests { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/nn/gpt2.rs:141:9 [INFO] [stderr] | [INFO] [stderr] 140 | panic!(""); [INFO] [stderr] | ---------- any code following this expression is unreachable [INFO] [stderr] 141 | self.final_head.forward(hidden_states) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable expression [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/central/masked_fill.rs:35:47 [INFO] [stderr] | [INFO] [stderr] 35 | if let Operation::MaskFill(source, mask , value) = packet.operation { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: function `zero_all_grads` is never used [INFO] [stderr] --> src/central/mod.rs:67:8 [INFO] [stderr] | [INFO] [stderr] 67 | pub fn zero_all_grads() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: function `update_parameters` is never used [INFO] [stderr] --> src/central/mod.rs:83:8 [INFO] [stderr] | [INFO] [stderr] 83 | pub fn update_parameters(learning_rate: f32) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `add_vector`, `zero_grad`, and `update_parameters` are never used [INFO] [stderr] --> src/central/equation.rs:250:12 [INFO] [stderr] | [INFO] [stderr] 63 | impl Equation { [INFO] [stderr] | ------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 250 | pub fn add_vector(&self, a: &[f32], b: &[f32]) -> Vec { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 599 | pub fn zero_grad(&mut self) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 609 | pub fn update_parameters(&mut self, learning_rate: f32) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `id` is never read [INFO] [stderr] --> src/central/tensor.rs:15:9 [INFO] [stderr] | [INFO] [stderr] 14 | pub struct InternalTensor { [INFO] [stderr] | -------------- field in this struct [INFO] [stderr] 15 | pub id: TensorID, // the unique id for this tensor, it is used by the equation to look up the data [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: field `operation` is never read [INFO] [stderr] --> src/central/tensor.rs:107:5 [INFO] [stderr] | [INFO] [stderr] 104 | pub struct Tensor { [INFO] [stderr] | ------ field in this struct [INFO] [stderr] ... [INFO] [stderr] 107 | operation: Operation, // The operation that created this Tensor(Nop for basic allocations) [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Tensor` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: function `causal_mask` is never used [INFO] [stderr] --> src/nn/gpt_block.rs:7:8 [INFO] [stderr] | [INFO] [stderr] 7 | pub fn causal_mask(seq_len: usize) -> Tensor { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `GPT2Block` is never constructed [INFO] [stderr] --> src/nn/gpt_block.rs:20:12 [INFO] [stderr] | [INFO] [stderr] 20 | pub struct GPT2Block { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated functions `new` and `from_gguf_file` are never used [INFO] [stderr] --> src/nn/gpt_block.rs:28:12 [INFO] [stderr] | [INFO] [stderr] 27 | impl GPT2Block { [INFO] [stderr] | -------------- associated functions in this implementation [INFO] [stderr] 28 | pub fn new(config: GPT2Config) -> GPT2Block { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 43 | pub fn from_gguf_file(gguf_file: &mut GGUFFile, block_count: i64, gpt_config: &GPT2Config) -> GPT2Block{ [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `forward` and `get_parameters` are never used [INFO] [stderr] --> src/nn/layer.rs:4:8 [INFO] [stderr] | [INFO] [stderr] 3 | pub trait Layer { [INFO] [stderr] | ----- methods in this trait [INFO] [stderr] 4 | fn forward(&mut self, inputs: Tensor) -> Tensor; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 5 | fn get_parameters(&self) -> Vec; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Linear` is never constructed [INFO] [stderr] --> src/nn/linear.rs:5:12 [INFO] [stderr] | [INFO] [stderr] 5 | pub struct Linear { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated functions `new`, `from_tensors`, and `from_gguf_file` are never used [INFO] [stderr] --> src/nn/linear.rs:11:12 [INFO] [stderr] | [INFO] [stderr] 10 | impl Linear { [INFO] [stderr] | ----------- associated functions in this implementation [INFO] [stderr] 11 | pub fn new(in_features: usize, out_features: usize, has_bias: bool) -> Linear { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 22 | pub fn from_tensors(weights: Tensor, bias: Option) -> Linear { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 34 | pub fn from_gguf_file( [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `Model` is never used [INFO] [stderr] --> src/nn/model.rs:3:11 [INFO] [stderr] | [INFO] [stderr] 3 | pub trait Model { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `ReLU` is never constructed [INFO] [stderr] --> src/nn/relu.rs:4:12 [INFO] [stderr] | [INFO] [stderr] 4 | pub struct ReLU {} [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/nn/relu.rs:7:12 [INFO] [stderr] | [INFO] [stderr] 6 | impl ReLU { [INFO] [stderr] | --------- associated function in this implementation [INFO] [stderr] 7 | pub fn new() -> ReLU { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: field `layers` is never read [INFO] [stderr] --> src/nn/sequential.rs:5:9 [INFO] [stderr] | [INFO] [stderr] 4 | pub struct Sequential { [INFO] [stderr] | ---------- field in this struct [INFO] [stderr] 5 | pub layers: Vec>, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `TanhLayer` is never constructed [INFO] [stderr] --> src/nn/tanh.rs:4:12 [INFO] [stderr] | [INFO] [stderr] 4 | pub struct TanhLayer {} [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/nn/tanh.rs:7:12 [INFO] [stderr] | [INFO] [stderr] 6 | impl TanhLayer { [INFO] [stderr] | -------------- associated function in this implementation [INFO] [stderr] 7 | pub fn new() -> TanhLayer { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `LayerNorm` is never constructed [INFO] [stderr] --> src/nn/layer_norm.rs:5:12 [INFO] [stderr] | [INFO] [stderr] 5 | pub struct LayerNorm { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated functions `new` and `from_gguf_file` are never used [INFO] [stderr] --> src/nn/layer_norm.rs:11:12 [INFO] [stderr] | [INFO] [stderr] 10 | impl LayerNorm { [INFO] [stderr] | -------------- associated functions in this implementation [INFO] [stderr] 11 | pub fn new(num_features: usize) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 19 | pub fn from_gguf_file(gguf_file: &mut GGUFFile, weight_name: String, bias_name: String) -> LayerNorm { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `MultiHeadAttention` is never constructed [INFO] [stderr] --> src/nn/multihead_attention.rs:6:12 [INFO] [stderr] | [INFO] [stderr] 6 | pub struct MultiHeadAttention { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new`, `from_gguf_file`, and `set_mask` are never used [INFO] [stderr] --> src/nn/multihead_attention.rs:26:12 [INFO] [stderr] | [INFO] [stderr] 25 | impl MultiHeadAttention { [INFO] [stderr] | ----------------------- associated items in this implementation [INFO] [stderr] 26 | pub fn new(embed_dim: usize, number_of_heads: usize, mask: Option) -> MultiHeadAttention { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 46 | pub fn from_gguf_file(gguf_file: &mut GGUFFile, block_count: i64, config: &GPT2Config) -> MultiHeadAttention { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 99 | pub fn set_mask(&mut self, mask: Tensor) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `ScaledDotProductAttention` is never constructed [INFO] [stderr] --> src/nn/scaled_dot_project_attention.rs:7:12 [INFO] [stderr] | [INFO] [stderr] 7 | pub struct ScaledDotProductAttention { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new` and `forward` are never used [INFO] [stderr] --> src/nn/scaled_dot_project_attention.rs:13:12 [INFO] [stderr] | [INFO] [stderr] 12 | impl ScaledDotProductAttention { [INFO] [stderr] | ------------------------------ associated items in this implementation [INFO] [stderr] 13 | pub fn new(scale: f32) -> ScaledDotProductAttention { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 19 | pub fn forward(&self, query: Tensor, key: Tensor, value: Tensor, mask: Option) -> Tensor { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Embedding` is never constructed [INFO] [stderr] --> src/nn/embedding.rs:5:12 [INFO] [stderr] | [INFO] [stderr] 5 | pub struct Embedding { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated functions `new` and `from_tensor` are never used [INFO] [stderr] --> src/nn/embedding.rs:10:12 [INFO] [stderr] | [INFO] [stderr] 9 | impl Embedding { [INFO] [stderr] | -------------- associated functions in this implementation [INFO] [stderr] 10 | pub fn new(vocab_size: usize, embeding_dimensions: usize) -> Embedding { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 18 | pub fn from_tensor(weights: Tensor) -> Embedding { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `GELU` is never constructed [INFO] [stderr] --> src/nn/gelu.rs:4:12 [INFO] [stderr] | [INFO] [stderr] 4 | pub struct GELU { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/nn/gelu.rs:9:12 [INFO] [stderr] | [INFO] [stderr] 8 | impl GELU { [INFO] [stderr] | --------- associated function in this implementation [INFO] [stderr] 9 | pub fn new() -> GELU { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `GPT2Config` is never constructed [INFO] [stderr] --> src/nn/gpt2.rs:10:12 [INFO] [stderr] | [INFO] [stderr] 10 | pub struct GPT2Config { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated functions `gpt2_small` and `from_gguf_file` are never used [INFO] [stderr] --> src/nn/gpt2.rs:21:12 [INFO] [stderr] | [INFO] [stderr] 20 | impl GPT2Config { [INFO] [stderr] | --------------- associated functions in this implementation [INFO] [stderr] 21 | pub fn gpt2_small() -> GPT2Config { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 33 | pub fn from_gguf_file(gguf_file: &mut GGUFFile) -> GPT2Config { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `sinusoidal_position_encoding` is never used [INFO] [stderr] --> src/nn/gpt2.rs:49:8 [INFO] [stderr] | [INFO] [stderr] 49 | pub fn sinusoidal_position_encoding(seq_len: usize, d_model: usize) -> Tensor { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `GPT2` is never constructed [INFO] [stderr] --> src/nn/gpt2.rs:65:12 [INFO] [stderr] | [INFO] [stderr] 65 | pub struct GPT2 { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated functions `new` and `from_gguf_file` are never used [INFO] [stderr] --> src/nn/gpt2.rs:75:12 [INFO] [stderr] | [INFO] [stderr] 74 | impl GPT2 { [INFO] [stderr] | --------- associated functions in this implementation [INFO] [stderr] 75 | pub fn new(config: GPT2Config) -> GPT2 { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 88 | pub fn from_gguf_file(gguf_file: &mut GGUFFile) -> GPT2{ [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `name` is never read [INFO] [stderr] --> src/utils/gguf.rs:160:5 [INFO] [stderr] | [INFO] [stderr] 159 | pub struct TensorMetaData { [INFO] [stderr] | -------------- field in this struct [INFO] [stderr] 160 | name: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TensorMetaData` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: function `approx_equal` is never used [INFO] [stderr] --> src/lib.rs:8:8 [INFO] [stderr] | [INFO] [stderr] 8 | fn approx_equal(a: f32, b: f32, epsilon: f32) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `build_batch_norm_dataset_from_subset` is never used [INFO] [stderr] --> src/lib.rs:116:8 [INFO] [stderr] | [INFO] [stderr] 116 | fn build_batch_norm_dataset_from_subset( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `build_dataset_from_subset` is never used [INFO] [stderr] --> src/lib.rs:134:8 [INFO] [stderr] | [INFO] [stderr] 134 | fn build_dataset_from_subset( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `read_lines` is never used [INFO] [stderr] --> src/lib.rs:156:8 [INFO] [stderr] | [INFO] [stderr] 156 | fn read_lines(filename: &str) -> Vec { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/utils/gguf.rs:50:5 [INFO] [stderr] | [INFO] [stderr] 50 | f.read_exact(&mut u8_buffer); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 50 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/utils/gguf.rs:56:5 [INFO] [stderr] | [INFO] [stderr] 56 | f.read_exact(&mut u8_buffer); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 56 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/utils/gguf.rs:62:5 [INFO] [stderr] | [INFO] [stderr] 62 | f.read_exact(&mut u8_buffer); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 62 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/utils/gguf.rs:68:5 [INFO] [stderr] | [INFO] [stderr] 68 | f.read_exact(&mut u8_buffer); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 68 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/utils/gguf.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 74 | f.read_exact(&mut u8_buffer); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 74 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/utils/gguf.rs:80:5 [INFO] [stderr] | [INFO] [stderr] 80 | f.read_exact(&mut u8_buffer); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 80 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/utils/gguf.rs:86:5 [INFO] [stderr] | [INFO] [stderr] 86 | f.read_exact(&mut u8_buffer); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 86 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/utils/gguf.rs:92:5 [INFO] [stderr] | [INFO] [stderr] 92 | f.read_exact(&mut u8_buffer); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 92 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/utils/gguf.rs:98:5 [INFO] [stderr] | [INFO] [stderr] 98 | f.read_exact(&mut u8_buffer); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 98 | let _ = f.read_exact(&mut u8_buffer); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/utils/gguf.rs:104:5 [INFO] [stderr] | [INFO] [stderr] 104 | f.read_exact(&mut string_size); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 104 | let _ = f.read_exact(&mut string_size); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/utils/gguf.rs:107:5 [INFO] [stderr] | [INFO] [stderr] 107 | f.read_exact(&mut string_buffer); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 107 | let _ = f.read_exact(&mut string_buffer); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/utils/gguf.rs:277:9 [INFO] [stderr] | [INFO] [stderr] 277 | f.seek_relative(padding as i64); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 277 | let _ = f.seek_relative(padding as i64); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused import: `get_equation` [INFO] [stderr] --> src/central/std_op.rs:175:52 [INFO] [stderr] | [INFO] [stderr] 175 | use crate::central::{Operation, Shape, Tensor, get_equation}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around closure body [INFO] [stderr] --> src/nn/layer_norm.rs:982:68 [INFO] [stderr] | [INFO] [stderr] 982 | let input_data: Vec = (0..batch_size * 3).map(|i| (i as f32 + 1.0)).collect(); [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] 982 - let input_data: Vec = (0..batch_size * 3).map(|i| (i as f32 + 1.0)).collect(); [INFO] [stderr] 982 + let input_data: Vec = (0..batch_size * 3).map(|i| i as f32 + 1.0).collect(); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused import: `GPT2Config` [INFO] [stderr] --> src/nn/gpt2.rs:162:21 [INFO] [stderr] | [INFO] [stderr] 162 | use crate::nn::{GPT2Config, Model, GPT2}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ndarray::Axis` [INFO] [stderr] --> src/nn/gpt2.rs:165:9 [INFO] [stderr] | [INFO] [stderr] 165 | use ndarray::Axis; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `EncodeInput` [INFO] [stderr] --> src/nn/gpt2.rs:209:52 [INFO] [stderr] | [INFO] [stderr] 209 | use tokenizers::tokenizer::{Result, Tokenizer, EncodeInput}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/nn/layer_norm.rs:839:9 [INFO] [stderr] | [INFO] [stderr] 838 | return; [INFO] [stderr] | ------ any code following this expression is unreachable [INFO] [stderr] 839 | / for i in 0..3 { [INFO] [stderr] 840 | | // Bias gradient should be non-zero and finite [INFO] [stderr] 841 | | assert!(bias_grad[[i]].is_finite()); [INFO] [stderr] 842 | | assert!(bias_grad[[i]].abs() > 1e-8, "Bias gradient should be non-zero"); [INFO] [stderr] ... | [INFO] [stderr] 846 | | assert!(weight_grad[[i]].abs() > 1e-8, "Weight gradient should be non-zero"); [INFO] [stderr] 847 | | } [INFO] [stderr] | |_________^ unreachable expression [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/nn/gpt2.rs:141:9 [INFO] [stderr] | [INFO] [stderr] 140 | panic!(""); [INFO] [stderr] | ---------- any code following this expression is unreachable [INFO] [stderr] 141 | self.final_head.forward(hidden_states) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable expression [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::nn` [INFO] [stderr] --> src/nn/scaled_dot_project_attention.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use crate::nn::*; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `axis` [INFO] [stderr] --> src/central/softmax_op.rs:115:51 [INFO] [stderr] | [INFO] [stderr] 115 | fn assert_softmax_properties(tensor: &Tensor, axis: usize) { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 115 | fn assert_softmax_properties(tensor: &Tensor, _axis: usize) { [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `BATCH_SIZE` [INFO] [stderr] | [INFO] [stderr] 115 - fn assert_softmax_properties(tensor: &Tensor, axis: usize) { [INFO] [stderr] 115 + fn assert_softmax_properties(tensor: &Tensor, tests::batch_norm_simple_test::BATCH_SIZE: usize) { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/central/masked_fill.rs:35:47 [INFO] [stderr] | [INFO] [stderr] 35 | if let Operation::MaskFill(source, mask , value) = packet.operation { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `indices` [INFO] [stderr] --> src/central/masked_fill.rs:291:21 [INFO] [stderr] | [INFO] [stderr] 291 | let indices: Vec = (0..shape.len()) [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_indices` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `has_zero_grads` [INFO] [stderr] --> src/nn/linear.rs:537:13 [INFO] [stderr] | [INFO] [stderr] 537 | let has_zero_grads = layer1_weight_grad.iter().any(|&g| g == 0.0); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_has_zero_grads` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `batch_size` [INFO] [stderr] --> src/nn/sequential.rs:518:13 [INFO] [stderr] | [INFO] [stderr] 518 | let batch_size = 128; [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_batch_size` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `image_size` [INFO] [stderr] --> src/nn/sequential.rs:519:13 [INFO] [stderr] | [INFO] [stderr] 519 | let image_size = 64; [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_image_size` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `number_of_channels` [INFO] [stderr] --> src/nn/sequential.rs:520:13 [INFO] [stderr] | [INFO] [stderr] 520 | let number_of_channels = 3; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_of_channels` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `size_of_latent_z_vector` [INFO] [stderr] --> src/nn/sequential.rs:521:13 [INFO] [stderr] | [INFO] [stderr] 521 | let size_of_latent_z_vector = 100; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_size_of_latent_z_vector` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `number_of_feature_maps_generator` [INFO] [stderr] --> src/nn/sequential.rs:522:13 [INFO] [stderr] | [INFO] [stderr] 522 | let number_of_feature_maps_generator = 64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_of_feature_maps_generator` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `number_of_feature_maps_discriminator` [INFO] [stderr] --> src/nn/sequential.rs:523:13 [INFO] [stderr] | [INFO] [stderr] 523 | let number_of_feature_maps_discriminator = 64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_of_feature_maps_discriminator` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `number_of_training_epochs` [INFO] [stderr] --> src/nn/sequential.rs:524:13 [INFO] [stderr] | [INFO] [stderr] 524 | let number_of_training_epochs = 5; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_number_of_training_epochs` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `learning_rate` [INFO] [stderr] --> src/nn/sequential.rs:525:13 [INFO] [stderr] | [INFO] [stderr] 525 | let learning_rate = 0.0020; [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_learning_rate` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `beta_1` [INFO] [stderr] --> src/nn/sequential.rs:526:13 [INFO] [stderr] | [INFO] [stderr] 526 | let beta_1 = 0.5; [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_beta_1` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `grad_diff` [INFO] [stderr] --> src/nn/layer_norm.rs:798:13 [INFO] [stderr] | [INFO] [stderr] 798 | let grad_diff = (input1_grad[[0, 0]] - input2_grad[[0, 0]]).abs(); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 798 | let _grad_diff = (input1_grad[[0, 0]] - input2_grad[[0, 0]]).abs(); [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `EPS` [INFO] [stderr] | [INFO] [stderr] 798 - let grad_diff = (input1_grad[[0, 0]] - input2_grad[[0, 0]]).abs(); [INFO] [stderr] 798 + let central::pow_op::backward_for_pow::EPS = (input1_grad[[0, 0]] - input2_grad[[0, 0]]).abs(); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `weight_grad` [INFO] [stderr] --> src/nn/layer_norm.rs:833:13 [INFO] [stderr] | [INFO] [stderr] 833 | let weight_grad = layer_norm.weight.grad(); [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_weight_grad` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `bias_grad` [INFO] [stderr] --> src/nn/layer_norm.rs:834:13 [INFO] [stderr] | [INFO] [stderr] 834 | let bias_grad = layer_norm.bias.grad(); [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bias_grad` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `grad` [INFO] [stderr] --> src/nn/layer_norm.rs:949:14 [INFO] [stderr] | [INFO] [stderr] 949 | for &grad in input_grad.iter() { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 949 | for &_grad in input_grad.iter() { [INFO] [stderr] | + [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `EPS` [INFO] [stderr] | [INFO] [stderr] 949 - for &grad in input_grad.iter() { [INFO] [stderr] 949 + for ¢ral::pow_op::backward_for_pow::EPS in input_grad.iter() { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `weight_grad` [INFO] [stderr] --> src/nn/layer_norm.rs:955:13 [INFO] [stderr] | [INFO] [stderr] 955 | let weight_grad = layer_norm.weight.grad(); [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_weight_grad` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `bias_grad` [INFO] [stderr] --> src/nn/layer_norm.rs:956:13 [INFO] [stderr] | [INFO] [stderr] 956 | let bias_grad = layer_norm.bias.grad(); [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bias_grad` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/nn/layer_norm.rs:958:13 [INFO] [stderr] | [INFO] [stderr] 958 | for i in 0..3 { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pytorch_input` [INFO] [stderr] --> src/nn/layer_norm.rs:1389:13 [INFO] [stderr] | [INFO] [stderr] 1389 | let pytorch_input = Tensor::from_gguf_file(String::from("layer_norm_forward_different_feature_sizes_input"), &mut gguf_file); [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_input` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pytorch_weight` [INFO] [stderr] --> src/nn/layer_norm.rs:1391:13 [INFO] [stderr] | [INFO] [stderr] 1391 | let pytorch_weight = Tensor::from_gguf_file(String::from("layer_norm_forward_different_feature_sizes_weight"), &mut gguf_file); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_weight` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pytorch_bias` [INFO] [stderr] --> src/nn/layer_norm.rs:1392:13 [INFO] [stderr] | [INFO] [stderr] 1392 | let pytorch_bias = Tensor::from_gguf_file(String::from("layer_norm_forward_different_feature_sizes_bias"), &mut gguf_file); [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_bias` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pytorch_input` [INFO] [stderr] --> src/nn/layer_norm.rs:1467:13 [INFO] [stderr] | [INFO] [stderr] 1467 | let pytorch_input = Tensor::from_gguf_file(String::from("layer_norm_forward_multiple_calls_input"), &mut gguf_file); [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_input` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pytorch_weight` [INFO] [stderr] --> src/nn/layer_norm.rs:1470:13 [INFO] [stderr] | [INFO] [stderr] 1470 | let pytorch_weight = Tensor::from_gguf_file(String::from("layer_norm_forward_multiple_calls_weight"), &mut gguf_file); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_weight` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pytorch_bias` [INFO] [stderr] --> src/nn/layer_norm.rs:1471:13 [INFO] [stderr] | [INFO] [stderr] 1471 | let pytorch_bias = Tensor::from_gguf_file(String::from("layer_norm_forward_multiple_calls_bias"), &mut gguf_file); [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_bias` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pytorch_input` [INFO] [stderr] --> src/nn/layer_norm.rs:1580:13 [INFO] [stderr] | [INFO] [stderr] 1580 | let pytorch_input = Tensor::from_gguf_file(String::from("layer_norm_backward_parameter_gradients_input"), &mut gguf_file); [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_input` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pytorch_weight` [INFO] [stderr] --> src/nn/layer_norm.rs:1583:13 [INFO] [stderr] | [INFO] [stderr] 1583 | let pytorch_weight = Tensor::from_gguf_file(String::from("layer_norm_backward_parameter_gradients_weight"), &mut gguf_file); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_weight` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pytorch_bias` [INFO] [stderr] --> src/nn/layer_norm.rs:1584:13 [INFO] [stderr] | [INFO] [stderr] 1584 | let pytorch_bias = Tensor::from_gguf_file(String::from("layer_norm_backward_parameter_gradients_bias"), &mut gguf_file); [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_bias` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pytorch_input_grad` [INFO] [stderr] --> src/nn/layer_norm.rs:1585:13 [INFO] [stderr] | [INFO] [stderr] 1585 | let pytorch_input_grad = Tensor::from_gguf_file(String::from("layer_norm_backward_parameter_gradients_input_grad"), &mut gguf_file); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pytorch_input_grad` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/nn/gpt2.rs:220:13 [INFO] [stderr] | [INFO] [stderr] 220 | let mut tokenizer = Tokenizer::new(bpe); [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: unused variable: `bnvar_inv` [INFO] [stderr] --> src/lib.rs:274:21 [INFO] [stderr] | [INFO] [stderr] 274 | let bnvar_inv = (bnvari + 1e-5).pow(-0.5); [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bnvar_inv` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `epoch` [INFO] [stderr] --> src/lib.rs:354:13 [INFO] [stderr] | [INFO] [stderr] 354 | for epoch in 0..100 { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_epoch` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:423:13 [INFO] [stderr] | [INFO] [stderr] 423 | let mut y_true = Tensor::zeros(Shape::new(vec![batch_size, num_classes])); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `gguf_file` [INFO] [stderr] --> src/lib.rs:528:17 [INFO] [stderr] | [INFO] [stderr] 528 | let mut gguf_file = GGUFFile::new(String::from("./models/tests/gpt2/Gpt2-124M-F16.gguf")); [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_gguf_file` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:528:13 [INFO] [stderr] | [INFO] [stderr] 528 | let mut gguf_file = GGUFFile::new(String::from("./models/tests/gpt2/Gpt2-124M-F16.gguf")); [INFO] [stderr] | ----^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: method `add_vector` is never used [INFO] [stderr] --> src/central/equation.rs:250:12 [INFO] [stderr] | [INFO] [stderr] 63 | impl Equation { [INFO] [stderr] | ------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 250 | pub fn add_vector(&self, a: &[f32], b: &[f32]) -> Vec { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: function `first` is never used [INFO] [stderr] --> src/central/transpose_op.rs:127:8 [INFO] [stderr] | [INFO] [stderr] 127 | fn first() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `show` is never used [INFO] [stderr] --> src/central/transpose_op.rs:133:8 [INFO] [stderr] | [INFO] [stderr] 133 | fn show(list:&mut Vec) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `approx_equal` is never used [INFO] [stderr] --> src/nn/scaled_dot_project_attention.rs:109:12 [INFO] [stderr] | [INFO] [stderr] 109 | fn approx_equal(a: f32, b: f32, epsilon: f32) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `from_gguf_file` is never used [INFO] [stderr] --> src/nn/gpt2.rs:33:12 [INFO] [stderr] | [INFO] [stderr] 20 | impl GPT2Config { [INFO] [stderr] | --------------- associated function in this implementation [INFO] [stderr] ... [INFO] [stderr] 33 | pub fn from_gguf_file(gguf_file: &mut GGUFFile) -> GPT2Config { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `config` is never read [INFO] [stderr] --> src/nn/gpt2.rs:66:5 [INFO] [stderr] | [INFO] [stderr] 65 | pub struct GPT2 { [INFO] [stderr] | ---- field in this struct [INFO] [stderr] 66 | config: GPT2Config, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/nn/gpt2.rs:75:12 [INFO] [stderr] | [INFO] [stderr] 74 | impl GPT2 { [INFO] [stderr] | --------- associated function in this implementation [INFO] [stderr] 75 | pub fn new(config: GPT2Config) -> GPT2 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: `cant` (lib) generated 85 warnings (run `cargo fix --lib -p cant` to apply 34 suggestions) [INFO] [stderr] warning: `cant` (lib test) generated 95 warnings (44 duplicates) (run `cargo fix --lib -p cant --tests` to apply 11 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.36s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/cant-1239401ef98c8520) [INFO] [stdout] [INFO] [stdout] running 368 tests [INFO] [stdout] test central::add_op::tests::basic_2d_broadcast_test ... ok [INFO] [stdout] test central::add_op::tests::basic_2d_test ... ok [INFO] [stdout] test central::add_op::tests::basic_3d_brodcast ... ok [INFO] [stdout] test central::add_op::tests::basic_add_test ... ok [INFO] [stdout] test central::add_op::tests::basic_4d_test ... ok [INFO] [stdout] test central::add_op::tests::multiple_add_backprop_test ... ok [INFO] [stdout] test central::add_op::tests::multiple_2d_add_backprop_test ... ok [INFO] [stdout] test central::index::tests::basic_set_test ... ok [INFO] [stdout] test central::log::tests::log_3d_backward_test ... ok [INFO] [stdout] test central::log::tests::log_2d_backward_test ... ok [INFO] [stdout] test central::log::tests::log_2d_test ... ok [INFO] [stdout] test central::log::tests::log_mathematical_properties_test ... ok [INFO] [stdout] test central::log::tests::log_4d_test ... ok [INFO] [stdout] test central::log::tests::log_chained_operations_backward_test ... ok [INFO] [stdout] test central::log::tests::log_large_values_test ... ok [INFO] [stdout] test central::log::tests::log_simple_test ... ok [INFO] [stdout] test central::log::tests::log_1d_backward_test ... ok [INFO] [stdout] test central::log::tests::log_special_values_test ... ok [INFO] [stdout] test central::log::tests::log_small_values_test ... ok [INFO] [stdout] test central::log::tests::log_small_input_backward_test ... ok [INFO] [stdout] test central::log::tests::log_3d_test ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_2d ... ok [INFO] [stdout] test central::log::tests::log_large_input_backward_test ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_all_mask_zeros ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_attention_mask_pattern ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_backward_attention_pattern ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_3d_tensor ... ok [INFO] [stdout] test central::log::tests::log_numerical_gradient_test ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_backward_all_masked ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_backward_2d ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_backward_basic ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_all_mask_ones ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_fractional_mask ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_basic ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_backward_numerical_stability ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_backward_no_masking ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_backward_chain ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_backward_3d ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_large_values ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_backward_different_losses ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_negative_fill_value ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_preserves_shape ... ok [INFO] [stdout] test central::matmul_op::tests::basic_matmul_test ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_zero_fill_value ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_single_element ... ok [INFO] [stdout] test central::add_op::tests::basic_3d_test ... ok [INFO] [stdout] test central::add_op::tests::multiple_3d_add_backprop_test ... ok [INFO] [stdout] test central::add_op::tests::backprop_add_test ... FAILED [INFO] [stdout] test central::add_op::tests::do_not_add_tensors_of_different_size_but_same_length - should panic ... ok [INFO] [stdout] test central::masked_fill::tests::test_masked_fill_backward_fractional_mask ... FAILED [INFO] [stdout] test central::matmul_op::tests::matmul_3x1 ... FAILED [INFO] [stdout] test central::matmul_op::tests::matmul_3x2 ... FAILED [INFO] [stdout] test central::matmul_op::tests::matmul_3x4 ... FAILED [INFO] [stdout] test central::mean_op::tests::mean_1d_backward_test ... ok [INFO] [stdout] test central::mean_op::tests::mean_1d_test ... ok [INFO] [stdout] test central::matmul_op::tests::matmul_1x2 ... FAILED [INFO] [stdout] test central::matmul_op::tests::matmul_backward_test_4x4 ... FAILED [INFO] [stdout] test central::mean_op::tests::mean_2d_all_axes_test ... ok [INFO] [stdout] test central::mean_op::tests::mean_2d_axis0_backward_test ... ok [INFO] [stdout] test central::mean_op::tests::mean_2d_all_axes_backward_test ... ok [INFO] [stdout] test central::mean_op::tests::mean_2d_axis0_test ... ok [INFO] [stdout] test central::matmul_op::tests::matmul_2x4 ... FAILED [INFO] [stdout] test central::mean_op::tests::mean_3d_backward_test ... ok [INFO] [stdout] test central::matmul_op::tests::matmul_4x1 ... FAILED [INFO] [stdout] test central::mean_op::tests::mean_2d_axis1_test ... ok [INFO] [stdout] test central::mean_op::tests::mean_3d_test ... ok [INFO] [stdout] test central::matmul_op::tests::matmul_2x2 ... FAILED [INFO] [stdout] test central::mean_op::tests::mean_2d_axis1_backward_test ... ok [INFO] [stdout] test central::matmul_op::tests::matmul_1x4 ... FAILED [INFO] [stdout] test central::mean_op::tests::mean_empty_axes_test ... ok [INFO] [stdout] test central::mean_op::tests::mean_chained_operations_backward_test ... ok [INFO] [stdout] test central::mean_op::tests::mean_duplicate_axes_test - should panic ... ok [INFO] [stdout] test central::matmul_op::tests::matmul_backward_test_4x2 ... FAILED [INFO] [stdout] test central::mean_op::tests::mean_simple_backward_test ... ok [INFO] [stdout] test central::mul_op::tests::basic_2d_broadcast_test ... ok [INFO] [stdout] test central::matmul_op::tests::matmul_4x4 ... FAILED [INFO] [stdout] test central::mul_op::tests::basic_2d_test ... ok [INFO] [stdout] test central::mean_op::tests::mean_4d_test ... ok [INFO] [stdout] test central::mul_op::tests::basic_3d_test ... ok [INFO] [stdout] test central::matmul_op::tests::matmul_backward_test_4x1 ... FAILED [INFO] [stdout] test central::mul_op::tests::basic_div_test ... ok [INFO] [stdout] test central::matmul_op::tests::matmul_backward_test_4x3 ... FAILED [INFO] [stdout] test central::mean_op::tests::mean_multiple_axes_backward_test ... ok [INFO] [stdout] test central::mul_op::tests::backprop_mul_test ... ok [INFO] [stdout] test central::matmul_op::tests::matmul_4x2 ... FAILED [INFO] [stdout] test central::matmul_op::tests::matmul_backward_test_basic ... FAILED [INFO] [stdout] test central::matmul_op::tests::matmul_4x3 ... FAILED [INFO] [stdout] test central::mul_op::tests::basic_4d_test ... ok [INFO] [stdout] test central::pow_op::tests::advance_pow_test ... FAILED [INFO] [stdout] test central::mean_op::tests::mean_out_of_bounds_axis_test - should panic ... ok [INFO] [stdout] test central::pow_op::tests::pow_backward_test ... FAILED [INFO] [stdout] test central::mul_op::tests::mul_f32_test ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_backward_chain_rule ... ok [INFO] [stdout] test central::mul_op::tests::f32_mul_test ... ok [INFO] [stdout] test central::mul_op::tests::div_f32_test ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_backward_edge_case_values ... ok [INFO] [stdout] test central::pow_op::tests::basic_pow_test ... ok [INFO] [stdout] test central::mul_op::tests::basic_neg_test ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_backward_gradient_properties ... ok [INFO] [stdout] test central::mul_op::tests::basic_mul_test ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_backward_single_negative ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_backward_different_upstream_gradients ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_backward_batch ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_backward_matrix ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_backward_shape_preservation ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_backward_mixed_values ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_backward_zero ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_backward_large_values ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_forward_batch ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_forward_edge_cases ... ok [INFO] [stdout] test central::mul_op::tests::multiple_mul_backprop_test ... FAILED [INFO] [stdout] test central::relu_op::tests::test_relu_backward_single_positive ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_forward_large_values ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_forward_matrix ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_forward_single_value ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_forward_single_negative ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_forward_vector ... ok [INFO] [stdout] test central::reshape::tests::basic_reshape_test_2 ... ok [INFO] [stdout] test central::select_op::tests::basic_select_test ... ok [INFO] [stdout] test central::reshape::tests::basic_reshape_backward_test ... FAILED [INFO] [stdout] test central::select_op::tests::select_chained_operations_backward_test ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_forward_properties ... ok [INFO] [stdout] test central::select_op::tests::select_complex_batch_backward_test ... ok [INFO] [stdout] test central::reshape::tests::basic_reshape_test ... ok [INFO] [stdout] test central::select_op::tests::select_3d_indices_test ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_forward_mixed_values ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_forward_multiple_calls ... ok [INFO] [stdout] test central::select_op::tests::select_repeated_indices_backward_test ... ok [INFO] [stdout] test central::select_op::tests::select_large_vocabulary_test ... ok [INFO] [stdout] test central::select_op::tests::select_shape_test ... ok [INFO] [stdout] test central::shape::tests::add_remove_test ... ok [INFO] [stdout] test central::select_op::tests::select_direct_test ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_forward_shape_preservation ... ok [INFO] [stdout] test central::relu_op::tests::test_relu_forward_zero ... ok [INFO] [stdout] test central::shape::tests::basic_add_test ... ok [INFO] [stdout] test central::select_op::tests::select_batch_backward_test ... ok [INFO] [stdout] test central::shape::tests::basic_allocation_test_2 ... ok [INFO] [stdout] test central::select_op::tests::select_batch_embedding_test ... ok [INFO] [stdout] test central::shape::tests::basic_matmul_shape_tests ... ok [INFO] [stdout] test central::select_op::tests::select_simple_backward_test ... ok [INFO] [stdout] test central::shape::tests::bad_can_matmul - should panic ... ok [INFO] [stdout] test central::shape::tests::bad_shape_test - should panic ... ok [INFO] [stdout] test central::shape::tests::can_matmul_test ... ok [INFO] [stdout] test central::shape::tests::complicated_broadcast_test ... ok [INFO] [stdout] test central::shape::tests::simple_matmul_test_1x1 ... ok [INFO] [stdout] test central::shape::tests::bad_broadacst_shape_test - should panic ... ok [INFO] [stdout] test central::shape::tests::simple_matmul_test_1x2 ... ok [INFO] [stdout] test central::shape::tests::simple_matmul_test_2x1 ... ok [INFO] [stdout] test central::shape::tests::simple_matmul_test_2x3 ... ok [INFO] [stdout] test central::shape::tests::simple_matmul_test_4x3 ... ok [INFO] [stdout] test central::shape::tests::simple_matmul_test_1x3 ... ok [INFO] [stdout] test central::softmax_op::tests::softmax_1d_test ... ok [INFO] [stdout] test central::shape::tests::basic_remove_test ... ok [INFO] [stdout] test central::softmax_op::tests::softmax_2d_axis0_test ... ok [INFO] [stdout] test central::shape::tests::complicated_matmul_test_shape ... ok [INFO] [stdout] test central::shape::tests::simple_matmul_test_3x1 ... ok [INFO] [stdout] test central::softmax_op::tests::softmax_2d_axis1_backward_test ... ok [INFO] [stdout] test central::softmax_op::tests::softmax_2d_axis0_backward_test ... ok [INFO] [stdout] test central::softmax_op::tests::softmax_2d_axis1_test ... ok [INFO] [stdout] test central::softmax_op::tests::softmax_3d_test ... ok [INFO] [stdout] test central::softmax_op::tests::softmax_3d_backward_test ... ok [INFO] [stdout] test central::softmax_op::tests::softmax_chained_operations_backward_test ... ok [INFO] [stdout] test central::softmax_op::tests::softmax_4d_test ... ok [INFO] [stdout] test central::softmax_op::tests::softmax_1d_backward_test ... ok [INFO] [stdout] test central::softmax_op::tests::softmax_numerical_gradient_test ... ok [INFO] [stdout] test central::softmax_op::tests::softmax_4d_backward_test ... ok [INFO] [stdout] test central::shape::tests::bad_broadacst_test ... ok [INFO] [stdout] test central::softmax_op::tests::softmax_zero_input_test ... ok [INFO] [stdout] test central::shape::tests::bad_shape_test_remove_at_zero - should panic ... ok [INFO] [stdout] test central::std_op::tests::std_2d_all_axes_test ... ok [INFO] [stdout] test central::softmax_op::tests::softmax_numerical_stability_test ... ok [INFO] [stdout] test central::std_op::tests::std_4d_test ... ok [INFO] [stdout] test central::std_op::tests::std_1d_test ... ok [INFO] [stdout] test central::std_op::tests::std_1d_backward_test ... ok [INFO] [stdout] test central::std_op::tests::std_2d_axis0_test ... ok [INFO] [stdout] test central::std_op::tests::std_3d_backward_test ... ok [INFO] [stdout] test central::std_op::tests::std_chained_operations_backward_test ... ok [INFO] [stdout] test central::std_op::tests::std_2d_axis0_backward_test ... ok [INFO] [stdout] test central::std_op::tests::std_2d_axis1_backward_test ... ok [INFO] [stdout] test central::std_op::tests::std_3d_test ... ok [INFO] [stdout] test central::std_op::tests::std_2d_axis1_test ... ok [INFO] [stdout] test central::std_op::tests::std_zero_variance_backward_test ... ok [INFO] [stdout] test central::sum_op::tests::basic_double_index_sum_test ... FAILED [INFO] [stdout] test central::std_op::tests::std_empty_axes_test ... ok [INFO] [stdout] test central::std_op::tests::std_empty_axes_backward_test ... ok [INFO] [stdout] test central::sum_op::tests::basic_double_index_with_skip_sum_test ... FAILED [INFO] [stdout] test central::std_op::tests::std_2d_all_axes_backward_test ... ok [INFO] [stdout] test central::tanh_op::tests::tanh_2d_backward_test ... ok [INFO] [stdout] test central::tanh_op::tests::tanh_3d_test ... ok [INFO] [stdout] test central::tanh_op::tests::tanh_4d_test ... ok [INFO] [stdout] test central::sum_op::tests::basic_sum_test ... FAILED [INFO] [stdout] test central::std_op::tests::std_numerical_gradient_test ... ok [INFO] [stdout] test central::tanh_op::tests::tanh_2d_test ... ok [INFO] [stdout] test central::tanh_op::tests::tanh_forward_test ... ok [INFO] [stdout] test central::tanh_op::tests::tanh_chained_operations_backward_test ... ok [INFO] [stdout] test central::sum_op::tests::sum_backward_test_container_test ... FAILED [INFO] [stdout] test central::tensor::tests::allocate_and_data_test ... ok [INFO] [stdout] test central::tanh_op::tests::tanh_extreme_values_test ... ok [INFO] [stdout] test central::tensor::tests::allocate_test ... ok [INFO] [stdout] test central::sum_op::tests::sum_and_broadcast_backward_test ... FAILED [INFO] [stdout] test central::tanh_op::tests::tanh_extreme_values_backward_test ... ok [INFO] [stdout] test central::tensor::tests::element_test ... ok [INFO] [stdout] test central::tanh_op::tests::tanh_multiple_values_backward_test ... ok [INFO] [stdout] test central::tensor::tests::randn_test ... ok [INFO] [stdout] test central::tensor::tests::zeroes_test ... ok [INFO] [stdout] test central::transpose_op::tests::test_transpose_3d_axes_12 ... ok [INFO] [stdout] test central::transpose_op::tests::test_transpose_4d ... ok [INFO] [stdout] test central::transpose_op::tests::test_transpose_2d_simple ... ok [INFO] [stdout] test central::transpose_op::tests::test_transpose_3d_axes_01 ... ok [INFO] [stdout] test central::transpose_op::tests::test_transpose_vector_to_column ... ok [INFO] [stdout] test nn::embedding::tests::test_embedding_backward_chain_rule ... ok [INFO] [stdout] test central::transpose_op::tests::test_transpose_backward_2d ... ok [INFO] [stdout] test central::transpose_op::tests::test_transpose_large_matrix ... ok [INFO] [stdout] test central::transpose_op::tests::test_transpose_3d_axes_02 ... ok [INFO] [stdout] test central::transpose_op::tests::test_transpose_matmul_backward ... ok [INFO] [stdout] test nn::embedding::tests::test_embedding_backward_batch_processing ... ok [INFO] [stdout] test nn::embedding::tests::test_embedding_different_input_shapes ... ok [INFO] [stdout] test nn::embedding::tests::test_embedding_edge_cases ... ok [INFO] [stdout] test nn::embedding::tests::test_embedding_forward_batch ... ok [INFO] [stdout] test nn::embedding::tests::test_embedding_backward_different_losses ... ok [INFO] [stdout] test nn::embedding::tests::test_embedding_creation ... ok [INFO] [stdout] test central::transpose_op::tests::test_transpose_single_element ... ok [INFO] [stdout] test central::transpose_op::tests::test_transpose_identity ... ok [INFO] [stdout] test nn::embedding::tests::test_embedding_backward_pass ... ok [INFO] [stdout] test nn::gpt2::tests::tokenizer_test ... FAILED [INFO] [stdout] test nn::gpt2::tests::basic_test ... FAILED [INFO] [stdout] test nn::embedding::tests::test_embedding_forward_multiple_tokens ... ok [INFO] [stdout] test nn::gpt_block::tests::test_causal_mask_generation ... ok [INFO] [stdout] test central::shape::tests::basic_allocation_test ... ok [INFO] [stdout] test nn::embedding::tests::test_embedding_forward_single_token ... ok [INFO] [stdout] test nn::embedding::tests::test_embedding_weight_initialization ... ok [INFO] [stdout] test central::transpose_op::tests::test_transpose_backward_3d ... ok [INFO] [stdout] test central::mean_op::tests::mean_nested_operations_backward_test ... ok [INFO] [stdout] test central::tanh_op::tests::tanh_simple_backward_test ... FAILED [INFO] [stdout] test nn::embedding::tests::test_embedding_backward_gradient_accumulation ... ok [INFO] [stdout] test nn::gpt_block::tests::test_gpt2_block_backward_chain_rule ... ok [INFO] [stdout] test central::transpose_op::tests::test_transpose_chain_backward ... FAILED [INFO] [stdout] test nn::gpt_block::tests::test_gpt2_block_backward_residual_connections ... ok [INFO] [stdout] test nn::embedding::tests::test_embedding_gpt2_sized ... ok [INFO] [stdout] test nn::gpt_block::tests::test_gpt2_config_creation ... ok [INFO] [stdout] test nn::gpt_block::tests::test_gpt2_block_backward_sequence_length_scaling ... ok [INFO] [stdout] test nn::gpt_block::tests::test_gpt2_block_creation ... ok [INFO] [stdout] test nn::gpt_block::tests::test_gpt2_block_backward_attention_gradients ... ok [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_backward_gradient_flow ... ok [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_backward_in_network ... ok [INFO] [stdout] test nn::embedding::tests::test_embedding_consistent_output ... ok [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_backward_in_network_pytorch_comparison ... ok [INFO] [stdout] test nn::gpt_block::tests::test_gpt2_block_backward_mlp_gradients ... FAILED [INFO] [stdout] test central::mul_op::tests::do_not_mul_tensors_of_different_size_but_same_length - should panic ... ok [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_backward_parameter_gradients_pytorch_comparison ... FAILED [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_backward_batch ... ok [INFO] [stdout] test nn::gpt_block::tests::test_gpt2_block_parameter_count ... ok [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_backward_batch_pytorch_comparison ... FAILED [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_backward_zero_variance_pytorch_comparison ... FAILED [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_creation ... ok [INFO] [stdout] test nn::gpt_block::tests::test_gpt2_block_backward_basic ... ok [INFO] [stdout] test central::transpose_op::tests::test_transpose_non_square_3d ... ok [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_forward_batch_pytorch_comparison ... FAILED [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_forward_different_feature_sizes_pytorch_comparison ... FAILED [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_backward_numerical_stability ... ok [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_forward_batch ... ok [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_backward_parameter_gradients ... ok [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_forward_large_values_pytorch_comparison ... FAILED [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_forward_multiple_calls ... ok [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_forward_multiple_calls_pytorch_comparison ... FAILED [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_forward_negative_values ... ok [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_forward_negative_values_pytorch_comparison ... FAILED [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_forward_preserves_batch_independence ... ok [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_forward_known_values ... ok [INFO] [stdout] test nn::gpt_block::tests::test_gpt2_block_residual_connections ... ok [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_forward_single_sample_pytorch_comparison ... FAILED [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_forward_known_values_pytorch_comparison ... FAILED [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_forward_zero_variance_pytorch_comparison ... FAILED [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_backward_numerical_stability_pytorch_comparison ... FAILED [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_forward_single_sample ... ok [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_backward_simple_pytorch_comparison ... FAILED [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_backward_different_batch_sizes ... ok [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_backward_zero_variance ... ok [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_forward_large_values ... ok [INFO] [stdout] test nn::gpt_block::tests::test_gpt2_block_forward_pass_shapes ... ok [INFO] [stdout] test nn::gpt_block::tests::test_gpt2_block_forward_pass_batch ... ok [INFO] [stdout] test nn::gpt_block::tests::test_gpt2_block_consistency ... ok [INFO] [stdout] test nn::linear::tests::test_linear_backward_basic_with_bias ... ok [INFO] [stdout] test nn::linear::tests::test_linear_backward_gradient_accumulation ... ok [INFO] [stdout] test nn::linear::tests::test_linear_creation_without_bias ... ok [INFO] [stdout] test nn::linear::tests::test_linear_backward_batch ... ok [INFO] [stdout] test nn::linear::tests::test_linear_forward_batch ... ok [INFO] [stdout] test nn::linear::tests::test_linear_forward_with_bias ... ok [INFO] [stdout] test nn::linear::tests::test_linear_forward_without_bias ... ok [INFO] [stdout] test nn::linear::tests::test_linear_get_parameters_with_bias ... ok [INFO] [stdout] test nn::linear::tests::test_linear_get_parameters_without_bias ... ok [INFO] [stdout] test nn::linear::tests::test_linear_weight_initialization_range ... ok [INFO] [stdout] test nn::linear::tests::test_linear_backward_with_tanh_activation ... FAILED [INFO] [stdout] test nn::linear::tests::test_linear_creation_with_bias ... ok [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_forward_zero_variance ... ok [INFO] [stdout] test nn::linear::tests::test_linear_backward_without_bias ... ok [INFO] [stdout] test nn::linear::tests::test_linear_backward_deep_network ... ok [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_backward_step_up_1 ... ok [INFO] [stdout] test nn::linear::tests::test_linear_chain ... ok [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_backward_step_up_2 ... ok [INFO] [stdout] test nn::linear::tests::test_linear_backward_different_loss_functions ... ok [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_forward_preserves_batch_independence_pytorch_comparison ... FAILED [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_forward_different_feature_sizes ... ok [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_backward_step_up_4 ... ok [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_backward_basic ... ok [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_backward_without_crash ... ok [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_forward_with_mask ... ok [INFO] [stdout] test nn::layer_norm::tests::test_layer_norm_backward_simple ... ok [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_invalid_embed_dim - should panic ... ok [INFO] [stdout] test nn::scaled_dot_project_attention::tests::test_attention_constructor ... ok [INFO] [stdout] test nn::linear::tests::test_linear_backward_with_relu_activation ... ok [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_backward_step_up_5 ... ok [INFO] [stdout] test nn::scaled_dot_project_attention::tests::test_scaled_dot_product_attention_backward_basic ... ok [INFO] [stdout] test nn::scaled_dot_project_attention::tests::test_scaled_dot_product_attention_backward_with_mask ... ok [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_backward_shape_only ... ok [INFO] [stdout] test nn::gpt_block::tests::test_gpt2_block_backward_parameter_updates ... FAILED [INFO] [stdout] test nn::scaled_dot_project_attention::tests::test_scaled_dot_product_attention_backward_batch ... ok [INFO] [stdout] test nn::scaled_dot_project_attention::tests::test_scaled_dot_product_attention_with_scaling ... ok [INFO] [stdout] test nn::sequential::tests::celeb_a_dcgan_test ... ok [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_backward_step_up_3 ... ok [INFO] [stdout] test nn::sequential::tests::test_sequential_creation_empty ... ok [INFO] [stdout] test nn::sequential::tests::test_sequential_creation_single_layer ... ok [INFO] [stdout] test nn::sequential::tests::test_sequential_deterministic_behavior ... ok [INFO] [stdout] test nn::sequential::tests::test_sequential_from_vec ... ok [INFO] [stdout] test nn::sequential::tests::test_sequential_linear_tanh_chain ... ok [INFO] [stdout] test nn::gpt_block::tests::test_gpt2_block_different_sequence_lengths ... ok [INFO] [stdout] test nn::sequential::tests::test_sequential_mlp_network ... ok [INFO] [stdout] test nn::sequential::tests::test_sequential_mnist_training ... FAILED [INFO] [stdout] test nn::scaled_dot_project_attention::tests::test_scaled_dot_product_attention_backward_scaling ... ok [INFO] [stdout] test nn::tanh::tests::test_tanh_layer_creation ... ok [INFO] [stdout] test nn::scaled_dot_project_attention::tests::test_scaled_dot_product_attention_batch ... ok [INFO] [stdout] test nn::scaled_dot_project_attention::tests::test_scaled_dot_product_attention_basic ... ok [INFO] [stdout] test nn::tanh::tests::test_tanh_layer_antisymmetry ... ok [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_constructor ... ok [INFO] [stdout] test nn::tanh::tests::test_tanh_layer_forward_single_value ... ok [INFO] [stdout] test nn::tanh::tests::test_tanh_layer_forward_vector ... ok [INFO] [stdout] test nn::tanh::tests::test_tanh_layer_in_network ... ok [INFO] [stdout] test nn::tanh::tests::test_tanh_layer_multiple_calls ... ok [INFO] [stdout] test nn::tanh::tests::test_tanh_layer_gradient_at_zero ... ok [INFO] [stdout] test nn::scaled_dot_project_attention::tests::test_scaled_dot_product_attention_with_mask ... ok [INFO] [stdout] test tests::batch_norm_simple_test ... FAILED [INFO] [stdout] test nn::tanh::tests::test_tanh_layer_range_properties ... ok [INFO] [stdout] test tests::makemore_bigrams ... FAILED [INFO] [stdout] test nn::tanh::tests::test_tanh_layer_forward_batch ... ok [INFO] [stdout] test nn::tanh::tests::test_tanh_layer_forward_known_values ... ok [INFO] [stdout] test nn::linear::tests::test_linear_backward_chained_layers ... FAILED [INFO] [stdout] test nn::tanh::tests::test_tanh_layer_forward_matrix ... ok [INFO] [stdout] test tests::test_load_gpt ... FAILED [INFO] [stdout] test nn::linear::tests::test_linear_different_dimensions ... ok [INFO] [stdout] test utils::tests::padding_test ... ok [INFO] [stdout] test utils::tests::padding_test_2 ... ok [INFO] [stdout] test utils::tests::padding_test_3 ... ok [INFO] [stdout] test utils::tests::padding_test_4 ... ok [INFO] [stdout] test nn::tanh::tests::test_tanh_layer_zero_gradient_at_saturation ... ok [INFO] [stdout] test nn::sequential::tests::test_sequential_batch_processing ... ok [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_forward_basic ... ok [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_forward_batch_processing has been running for over 60 seconds [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_forward_different_sizes has been running for over 60 seconds [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_forward_sequence_lengths has been running for over 60 seconds [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_forward_varying_inputs has been running for over 60 seconds [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_head_dimension_calculation has been running for over 60 seconds [INFO] [stdout] test nn::sequential::tests::test_sequential_xor_training has been running for over 60 seconds [INFO] [stdout] test tests::micrograd_copy_test ... ok [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_head_dimension_calculation ... ok [INFO] [stdout] test tests::test_autoencoder has been running for over 60 seconds [INFO] [stdout] test tests::test_linear_regression has been running for over 60 seconds [INFO] [stdout] test tests::test_sequence_prediction has been running for over 60 seconds [INFO] [stdout] test tests::test_simple_classifier has been running for over 60 seconds [INFO] [stdout] test tests::test_xor_network has been running for over 60 seconds [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_forward_varying_inputs ... ok [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_forward_batch_processing ... ok [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_forward_different_sizes ... ok [INFO] [stdout] test nn::multihead_attention::tests::test_multihead_attention_forward_sequence_lengths ... ok [ERROR] error running command: no output for 300 seconds [INFO] running `Command { std: "docker" "inspect" "327c75d228398594a2256d6b1ab0a72038ea759a34138c84e34cdc2aece9af2b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "327c75d228398594a2256d6b1ab0a72038ea759a34138c84e34cdc2aece9af2b", kill_on_drop: false }` [INFO] [stdout] 327c75d228398594a2256d6b1ab0a72038ea759a34138c84e34cdc2aece9af2b