[package]
edition = "2024"
rust-version = "1.85"
name = "memra-engine"
version = "0.70.0"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "From-scratch CUDA LLM inference engine for NVIDIA RTX 50-series (sm_120a) and Hopper (sm_90a) - custom kernels, no frameworks"
readme = false
license = "MIT"
repository = "https://github.com/avifenesh/memra"
resolver = "2"
[lib]
name = "memra_engine"
path = "src/lib.rs"
[[bin]]
name = "accprobe-bench"
path = "src/bin/accprobe_bench.rs"
[[bin]]
name = "argmax-gate"
path = "src/bin/argmax_gate.rs"
[[bin]]
name = "clc-mmq-bench"
path = "src/bin/clc_mmq_bench.rs"
[[bin]]
name = "concat-prime-probe"
path = "src/bin/concat_prime_probe.rs"
[[bin]]
name = "cpu_native_check"
path = "src/bin/cpu_native_check.rs"
[[bin]]
name = "cutlass-smoke"
path = "src/bin/cutlass_smoke.rs"
[[bin]]
name = "decode-batch-bench"
path = "src/bin/decode_batch_bench.rs"
[[bin]]
name = "decode-batch-gate"
path = "src/bin/decode_batch_gate.rs"
[[bin]]
name = "decode-bench"
path = "src/bin/decode_bench.rs"
[[bin]]
name = "decode-dc-gate"
path = "src/bin/decode_dc_gate.rs"
[[bin]]
name = "decode-window-profile"
path = "src/bin/decode_window_profile.rs"
[[bin]]
name = "depth-profile"
path = "src/bin/depth_profile.rs"
[[bin]]
name = "dflash_parity"
path = "src/bin/dflash_parity.rs"
[[bin]]
name = "dtype_gpu_check5"
path = "src/bin/dtype_gpu_check5.rs"
[[bin]]
name = "f8f4_check"
path = "src/bin/f8f4_check.rs"
[[bin]]
name = "fa-ab-bench"
path = "src/bin/fa_ab_bench.rs"
[[bin]]
name = "fa-hd128-check"
path = "src/bin/fa_hd128_check.rs"
[[bin]]
name = "fa-sanitize"
path = "src/bin/fa_sanitize.rs"
[[bin]]
name = "fa_deep_bench"
path = "src/bin/fa_deep_bench.rs"
[[bin]]
name = "fa_v2_bench"
path = "src/bin/fa_v2_bench.rs"
[[bin]]
name = "fp8_mmq_bench"
path = "src/bin/fp8_mmq_bench.rs"
[[bin]]
name = "fp8_mmq_check"
path = "src/bin/fp8_mmq_check.rs"
[[bin]]
name = "fp8_mmq_stream"
path = "src/bin/fp8_mmq_stream.rs"
[[bin]]
name = "frspec-owngen"
path = "src/bin/frspec_owngen.rs"
[[bin]]
name = "frspec-rank"
path = "src/bin/frspec_rank.rs"
[[bin]]
name = "fused_actq_bench"
path = "src/bin/fused_actq_bench.rs"
[[bin]]
name = "gdn-bench"
path = "src/bin/gdn_bench.rs"
[[bin]]
name = "gemma-gate"
path = "src/bin/gemma_gate.rs"
[[bin]]
name = "gemv-e4m3-bench"
path = "src/bin/gemv_e4m3_bench.rs"
[[bin]]
name = "graph-decode-gate"
path = "src/bin/graph_decode_gate.rs"
[[bin]]
name = "graph-session-gate"
path = "src/bin/graph_session_gate.rs"
[[bin]]
name = "gu_wall_bench"
path = "src/bin/gu_wall_bench.rs"
[[bin]]
name = "hy3-layer0-oracle"
path = "src/bin/hy3-layer0-oracle.rs"
[[bin]]
name = "kernel-check"
path = "src/bin/kernel_check.rs"
[[bin]]
name = "kv-fmt-bench"
path = "src/bin/kv_fmt_bench.rs"
[[bin]]
name = "lt_ndep"
path = "src/bin/lt_ndep.rs"
[[bin]]
name = "m3ref"
path = "src/bin/m3ref.rs"
[[bin]]
name = "mmvq_bisect"
path = "src/bin/mmvq_bisect.rs"
[[bin]]
name = "mmvq_pair_m3"
path = "src/bin/mmvq_pair_m3.rs"
[[bin]]
name = "moe-devq8-check"
path = "src/bin/moe_devq8_check.rs"
[[bin]]
name = "mvq-msweep"
path = "src/bin/mvq_msweep.rs"
[[bin]]
name = "normq_check"
path = "src/bin/normq_check.rs"
[[bin]]
name = "plainbatch-margin-probe"
path = "src/bin/plainbatch_margin_probe.rs"
[[bin]]
name = "pp-transport-smoke"
path = "src/bin/pp_transport_smoke.rs"
[[bin]]
name = "pp2-gate"
path = "src/bin/pp2_gate.rs"
[[bin]]
name = "ppn-bench"
path = "src/bin/ppn_bench.rs"
[[bin]]
name = "ppn-gate"
path = "src/bin/ppn_gate.rs"
[[bin]]
name = "prime-batch-gate"
path = "src/bin/prime_batch_gate.rs"
[[bin]]
name = "prime-gate"
path = "src/bin/prime_gate.rs"
[[bin]]
name = "prime-graph-gate"
path = "src/bin/prime_graph_gate.rs"
[[bin]]
name = "prime-graph-smoke"
path = "src/bin/prime_graph_smoke.rs"
[[bin]]
name = "q5issue_bench"
path = "src/bin/q5issue_bench.rs"
[[bin]]
name = "quant-kv-f32-check"
path = "src/bin/quant_kv_f32_check.rs"
[[bin]]
name = "replay-acceptance"
path = "src/bin/replay_acceptance.rs"
[[bin]]
name = "router-batch-bench"
path = "src/bin/router_batch_bench.rs"
[[bin]]
name = "rp_q4_probe"
path = "src/bin/rp_q4_probe.rs"
[[bin]]
name = "run-dense"
path = "src/bin/run_dense.rs"
[[bin]]
name = "run-eagle"
path = "src/bin/run_eagle.rs"
[[bin]]
name = "run-gen"
path = "src/bin/run_gen.rs"
[[bin]]
name = "run-hybrid"
path = "src/bin/run_hybrid.rs"
[[bin]]
name = "run-safetensors"
path = "src/bin/run_safetensors.rs"
[[bin]]
name = "run-spec"
path = "src/bin/run_spec.rs"
[[bin]]
name = "run_lockstep"
path = "src/bin/run_lockstep.rs"
[[bin]]
name = "sample_check"
path = "src/bin/sample_check.rs"
[[bin]]
name = "session-bench"
path = "src/bin/session_bench.rs"
[[bin]]
name = "session-gate"
path = "src/bin/session_gate.rs"
[[bin]]
name = "spec-econ"
path = "src/bin/spec_econ.rs"
[[bin]]
name = "spec-st-probe"
path = "src/bin/spec_st_probe.rs"
[[bin]]
name = "st-vs-gguf"
path = "src/bin/st_vs_gguf.rs"
[[bin]]
name = "synth_f8f4"
path = "src/bin/synth_f8f4.rs"
[[bin]]
name = "t2probe"
path = "src/bin/t2probe.rs"
[[bin]]
name = "verify-mscale"
path = "src/bin/verify_mscale.rs"
[[bin]]
name = "verify-probe"
path = "src/bin/verify_probe.rs"
[[bin]]
name = "w4a4-gate"
path = "src/bin/w4a4_gate.rs"
[[test]]
name = "mla_fixture_forward"
path = "tests/mla_fixture_forward.rs"
[[test]]
name = "mla_fixture_load_gpu"
path = "tests/mla_fixture_load_gpu.rs"
[dependencies.cudarc]
version = "0.19"
features = [
"std",
"cuda-13010",
"dynamic-loading",
"driver",
"cublas",
"cublaslt",
"nvrtc",
]
default-features = false
[dependencies.libc]
version = "0.2"
[dependencies.memmap2]
version = "0.9"
[dependencies.memra-gguf]
version = "=0.70.0"
[dependencies.memra-kv]
version = "=0.70.0"
[dependencies.memra-runtime]
version = "=0.70.0"
[dependencies.memra-sampling]
version = "=0.70.0"
[dependencies.memra-tokenizer]
version = "=0.70.0"
[dependencies.memra-validate]
version = "=0.70.0"