Cargo Features

[dependencies]
custos = { version = "0.7.0", default-features = false, features = ["no-std", "cpu", "opencl", "cuda", "realloc", "opt-cache", "blas", "static-api", "stack", "wgpu", "autograd", "macro"] }
default = autograd, blas, cpu, macro, opencl, stack, static-api

These default features are set whenever custos is added without default-features = false somewhere in the dependency tree.

no-std = stack

Enables libm

no-std float math

Affects devices::Ident, error::Error, error::Result, graph::Graph, static_devices::static_cpu, two_way_ops::MayToCLSource

cpu default opencl

Affects devices::cpu, custos::exec_on_cpu, generic_blas::GenericBlas.blas_gemm, generic_blas::GenericBlas.gemm, generic_blas::GenericBlas.gemmT, generic_blas::GenericBlas.Tgemm

opencl default = cpu

Enables min-cl ^0.2.0

Affects devices::opencl, static_devices::static_opencl

cuda

Affects generic_blas::GenericBlas.cugemm, devices::cuda, static_devices::static_cuda

realloc
opt-cache

Affects graph::GraphOpt

blas default

Affects generic_blas::GenericBlas.blas_gemm, generic_blas::GenericBlas.gemm, generic_blas::GenericBlas.gemmT, generic_blas::GenericBlas.Tgemm

static-api default

Affects custos::static_api

stack default no-std?

Affects devices::stack

wgpu

Enables futures-intrusive, pollster ^0.3, and wgpu ^0.15

futures-intrusive:

WGPU deps

Affects devices::wgpu

autograd default

Affects addons::Addons.tape, custos::autograd, custos::Device.get_existing_buf, custos::MayTapeReturn

macro default

Enables custos-macro