[package] authors = ["nathanielsimard "] categories = ["science"] description = "WGPU runtime for the CubeCL" edition.workspace = true keywords = ["gpu", "wgpu", "webgpu", "gpgpu"] license.workspace = true name = "cubecl-wgpu" readme.workspace = true repository = "https://github.com/tracel-ai/cubecl/tree/main/crates/cubecl-wgpu" version.workspace = true [features] default = [ "cubecl-runtime/default", "cubecl-common/default", "cubecl-core/default", ] exclusive-memory-only = [] spirv = ["cubecl-spirv", "ash"] std = ["cubecl-runtime/std", "cubecl-common/std", "cubecl-core/std"] spirv-dump = ["sanitize-filename"] [dependencies] cubecl-common = { path = "../cubecl-common", version = "0.3.0", default-features = false } cubecl-core = { path = "../cubecl-core", version = "0.3.0", default-features = false } cubecl-runtime = { path = "../cubecl-runtime", version = "0.3.0", default-features = false, features = [ "channel-mutex", ] } sanitize-filename = { workspace = true, optional = true } # SPIR-V ash = { version = "0.38", optional = true } cubecl-spirv = { path = "../cubecl-spirv", version = "0.3.0", optional = true } bytemuck = { workspace = true } wgpu = { version = "22.0.0", features = ["fragile-send-sync-non-atomic-wasm"] } async-channel = { workspace = true } derive-new = { workspace = true } hashbrown = { workspace = true } log = { workspace = true } web-time = { workspace = true } [dev-dependencies] cubecl-core = { path = "../cubecl-core", version = "0.3.0", features = [ "export_tests", ] } cubecl-linalg = { path = "../cubecl-linalg", version = "0.3.0", features = [ "export_tests", ] } pretty_assertions = { workspace = true } [build-dependencies] cfg_aliases = "0.2.1"