[package]
edition = "2021"
name = "strided-kernel"
version = "0.2.0"
authors = [
"Satoshi Terasaki",
"Hiroshi Shinaoka",
]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Cache-optimized kernels for strided multidimensional array operations in Rust (ported from Julia Strided.jl/StridedViews.jl)."
readme = "README.md"
license = "MIT OR Apache-2.0"
repository = "https://github.com/tensor4all/strided-rs"
[features]
default = ["simd"]
parallel = [
"dep:rayon",
"dep:smallvec",
"strided-perm/parallel",
]
simd = ["dep:pulp"]
[lib]
name = "strided_kernel"
path = "src/lib.rs"
bench = false
[[test]]
name = "correctness_view"
path = "tests/correctness_view.rs"
[[bench]]
name = "mul_pytorch_compare"
path = "benches/mul_pytorch_compare.rs"
harness = false
[[bench]]
name = "outer_product"
path = "benches/outer_product.rs"
harness = false
[[bench]]
name = "rank25_permute"
path = "benches/rank25_permute.rs"
harness = false
[[bench]]
name = "rust_compare"
path = "benches/rust_compare.rs"
harness = false
[[bench]]
name = "scaling_compare"
path = "benches/scaling_compare.rs"
harness = false
[[bench]]
name = "threaded_compare"
path = "benches/threaded_compare.rs"
harness = false
required-features = ["parallel"]
[dependencies.num-complex]
version = "0.4"
[dependencies.num-traits]
version = "0.2"
[dependencies.pulp]
version = "0.22"
optional = true
[dependencies.rayon]
version = "1.10"
optional = true
[dependencies.smallvec]
version = "1"
optional = true
[dependencies.strided-perm]
version = "0.2.0"
[dependencies.strided-view]
version = "0.2.0"
[dev-dependencies.approx]
version = "0.5"
[dev-dependencies.criterion]
version = "0.5"
[dev-dependencies.num-complex]
version = "0.4"
[dev-dependencies.rand]
version = "0.8"
[dev-dependencies.rand_distr]
version = "0.4"