[package]
edition = "2018"
rust-version = "1.75.0"
name = "matrixmultiply"
version = "0.3.11"
authors = [
"bluss",
"R. Janis Goldschmidt",
]
build = "build.rs"
exclude = [
"examples/*",
"ci/*",
".github/*",
"benches/*",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = """
General matrix multiplication for f32 and f64 matrices. Operates on matrices with general layout (they can use arbitrary row and column stride). Detects and uses SIMD features on x86/x86-64 and AArch64 transparently for higher performance. Uses a microkernel strategy, so that the implementation is easy to parallelize and optimize.
Supports multithreading."""
documentation = "https://docs.rs/matrixmultiply/"
readme = false
keywords = [
"matrix",
"sgemm",
"dgemm",
]
categories = ["science"]
license = "MIT/Apache-2.0"
repository = "https://github.com/bluss/matrixmultiply/"
[package.metadata.release]
no-dev-version = true
tag-name = "{{version}}"
[package.metadata.docs.rs]
features = ["cgemm"]
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
avx512 = []
cgemm = []
constconf = []
default = [
"std",
"avx512",
]
std = []
threading = [
"thread-tree",
"std",
"once_cell",
"num_cpus",
]
[lib]
name = "matrixmultiply"
path = "src/lib.rs"
bench = false
[[test]]
name = "sgemm"
path = "tests/sgemm.rs"
[dependencies.num_cpus]
version = "1.13"
optional = true
[dependencies.once_cell]
version = "1.7"
optional = true
[dependencies.rawpointer]
version = "0.2"
[dependencies.thread-tree]
version = "0.3.2"
optional = true
[dev-dependencies.bencher]
version = "0.1.2"
[dev-dependencies.itertools]
version = "0.15"
[build-dependencies.autocfg]
version = "1"
[profile.bench]
debug = 2
[profile.release]
debug = 2