[package]
edition = "2024"
name = "fuel-dispatch"
version = "0.19.1"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Dispatch infrastructure for fuel: KernelBindingTable, per-backend registration wrappers, CompiledNode + compile_node, ExecutionPlan + compile_plan + resolve_kernel, FusedKernelRegistry, PipelinedExecutor. The layer that takes a graph and runs it against registered backends. Extracted from fuel-memory 2026-05-31."
readme = false
keywords = [
"blas",
"tensor",
"machine-learning",
]
categories = ["science"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/ciresnave/fuel"
resolver = "2"
[features]
baracuda-types = ["dep:baracuda-kernels-types"]
cuda = [
"dep:fuel-cuda-backend",
"baracuda-types",
"dep:baracuda-nvrtc",
"fuel-memory/cuda",
"fuel-hardware/cuda",
"dep:fuel-kiss-ref-backend",
]
default = []
jit = [
"dep:fuel-kernel-seam",
"baracuda-types",
"dep:kiss-ops-vocab",
]
jit-synth = [
"jit",
"cuda",
"dep:baracuda-cuda-emit",
]
metal = [
"dep:fuel-metal-backend",
"fuel-memory/metal",
]
telemetry = ["fuel-ir/serde"]
vulkan = [
"dep:fuel-vulkan-backend",
"fuel-memory/vulkan",
"fuel-hardware/vulkan",
]
[lib]
name = "fuel_dispatch"
path = "src/lib.rs"
[[test]]
name = "baracuda_affine_live"
path = "tests/baracuda_affine_live.rs"
[[test]]
name = "baracuda_arg_reduce_live"
path = "tests/baracuda_arg_reduce_live.rs"
[[test]]
name = "baracuda_attention_live"
path = "tests/baracuda_attention_live.rs"
[[test]]
name = "baracuda_binary_live"
path = "tests/baracuda_binary_live.rs"
[[test]]
name = "baracuda_cast_live"
path = "tests/baracuda_cast_live.rs"
[[test]]
name = "baracuda_clamp_live"
path = "tests/baracuda_clamp_live.rs"
[[test]]
name = "baracuda_concat_live"
path = "tests/baracuda_concat_live.rs"
[[test]]
name = "baracuda_cumsum_live"
path = "tests/baracuda_cumsum_live.rs"
[[test]]
name = "baracuda_flip_live"
path = "tests/baracuda_flip_live.rs"
[[test]]
name = "baracuda_gemm_int_live"
path = "tests/baracuda_gemm_int_live.rs"
[[test]]
name = "baracuda_indexing_live"
path = "tests/baracuda_indexing_live.rs"
[[test]]
name = "baracuda_inplace_expanded_live"
path = "tests/baracuda_inplace_expanded_live.rs"
[[test]]
name = "baracuda_norm_live"
path = "tests/baracuda_norm_live.rs"
[[test]]
name = "baracuda_pad_live"
path = "tests/baracuda_pad_live.rs"
[[test]]
name = "baracuda_powi_live"
path = "tests/baracuda_powi_live.rs"
[[test]]
name = "baracuda_reduce_live"
path = "tests/baracuda_reduce_live.rs"
[[test]]
name = "baracuda_roll_live"
path = "tests/baracuda_roll_live.rs"
[[test]]
name = "baracuda_softmax_live"
path = "tests/baracuda_softmax_live.rs"
[[test]]
name = "baracuda_triangular_live"
path = "tests/baracuda_triangular_live.rs"
[[test]]
name = "baracuda_unary_inplace_live"
path = "tests/baracuda_unary_inplace_live.rs"
[[test]]
name = "baracuda_unary_live"
path = "tests/baracuda_unary_live.rs"
[[test]]
name = "baracuda_write_slice_live"
path = "tests/baracuda_write_slice_live.rs"
[[test]]
name = "bit_stable_coverage_flip"
path = "tests/bit_stable_coverage_flip.rs"
[[test]]
name = "cuda_dispatch_live"
path = "tests/cuda_dispatch_live.rs"
[[test]]
name = "fkc_clause_coverage"
path = "tests/fkc_clause_coverage.rs"
[[test]]
name = "fkc_prose_clause_coverage"
path = "tests/fkc_prose_clause_coverage.rs"
[[test]]
name = "gap335_no_cuda_qmatmul_binding"
path = "tests/gap335_no_cuda_qmatmul_binding.rs"
[[test]]
name = "jit_synth_kernel_live"
path = "tests/jit_synth_kernel_live.rs"
[[test]]
name = "kiss_clause_ledger"
path = "tests/kiss_clause_ledger.rs"
[[test]]
name = "kiss_derivation_vectors"
path = "tests/kiss_derivation_vectors.rs"
[[test]]
name = "kiss_signed_zero_tie_conformance"
path = "tests/kiss_signed_zero_tie_conformance.rs"
[[test]]
name = "kiss_structure_key_byte_match"
path = "tests/kiss_structure_key_byte_match.rs"
[[test]]
name = "outreach_chain_status"
path = "tests/outreach_chain_status.rs"
[[test]]
name = "residency_eviction_live"
path = "tests/residency_eviction_live.rs"
[[test]]
name = "runtime_fusion_optimize_e2e"
path = "tests/runtime_fusion_optimize_e2e.rs"
[[test]]
name = "vulkan_deferred_eviction_live"
path = "tests/vulkan_deferred_eviction_live.rs"
[[test]]
name = "vulkan_dispatch_live"
path = "tests/vulkan_dispatch_live.rs"
[[test]]
name = "vulkan_write_slice_rotating_live"
path = "tests/vulkan_write_slice_rotating_live.rs"
[dependencies.baracuda-cuda-emit]
version = "0.11.0"
features = [
"seam",
"nvrtc",
]
optional = true
[dependencies.baracuda-kernels-types]
version = "0.0.1-alpha.84"
optional = true
[dependencies.baracuda-nvrtc]
version = "0.0.1-alpha.81"
optional = true
[dependencies.bytemuck]
version = "1.25"
[dependencies.fuel-backend-contract]
version = "0.19.0"
[dependencies.fuel-cpu-backend]
version = "0.19.0"
[dependencies.fuel-cuda-backend]
version = "0.19.0"
optional = true
[dependencies.fuel-graph]
version = "0.19.0"
[dependencies.fuel-hardware]
version = "0.19.0"
[dependencies.fuel-ir]
version = "0.19.0"
[dependencies.fuel-kernel-seam]
version = "0.19.0"
optional = true
[dependencies.fuel-kernel-seam-types]
version = "0.19.0"
[dependencies.fuel-kiss-ref-backend]
version = "0.19.0"
optional = true
[dependencies.fuel-memory]
version = "0.19.0"
[dependencies.fuel-vulkan-backend]
version = "0.19.0"
optional = true
[dependencies.half]
version = "2.5.0"
features = [
"num-traits",
"use-intrinsics",
"rand_distr",
"bytemuck",
]
[dependencies.kiss-ops-vocab]
version = "0.4"
optional = true
[dependencies.kiss-ref-core]
version = "0.4"
[dependencies.serde]
version = "1.0.171"
features = ["derive"]
[dependencies.serde_json]
version = "1.0.99"
[dependencies.serde_yaml_ng]
version = "0.10.0"
[dependencies.smallvec]
version = "1"
features = ["const_new"]
[dependencies.thiserror]
version = "2"
[dependencies.tracing]
version = "0.1.37"
[dev-dependencies.fuel-conv]
version = "0.19.0"
[dev-dependencies.fuel-test-support]
version = "0.19.0"
[dev-dependencies.tempfile]
version = "3.27"
[target.'cfg(any(target_os = "macos", target_os = "ios"))'.dependencies.fuel-metal-backend]
version = "0.19.0"
optional = true