diff --git a/Cargo.toml b/Cargo.toml index de6b80f6..4b00fc60 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,37 +1,7 @@ -[package] -name = "candle" -version = "0.1.0" -edition = "2021" - -description = "Minimalist ML framework." -repository = "https://github.com/LaurentMazare/candle" -keywords = ["blas", "tensor", "machine-learning"] -categories = ["science"] -license = "MIT/Apache-2.0" -readme = "README.md" - [workspace] + members = [ - "kernels", + "candle-core", + "candle-kernels", ] -[dependencies] -safetensors = "0.3.1" -thiserror = "1" -cudarc = { version = "0.9.9", optional = true, features = ["f16"] } -candle-kernels = { path = "kernels", optional = true } -gemm = "0.15.4" -zip = { version = "0.6.6", default-features=false } -byteorder = "1.4.3" -half = { version = "2.3.1", features = ["num-traits"] } -num-traits = "0.2.15" - -[dev-dependencies] -anyhow = "1" -clap = { version = "4.2.4", features = ["derive"] } -rand = "0.8.5" -tokenizers = { version = "0.13.3", default-features=false, features=["onig"] } - -[features] -default = ["cuda"] -cuda = ["dep:cudarc", "dep:candle-kernels"] diff --git a/candle-core/Cargo.toml b/candle-core/Cargo.toml new file mode 100644 index 00000000..97215953 --- /dev/null +++ b/candle-core/Cargo.toml @@ -0,0 +1,32 @@ +[package] +name = "candle" +version = "0.1.0" +edition = "2021" + +description = "Minimalist ML framework." +repository = "https://github.com/LaurentMazare/candle" +keywords = ["blas", "tensor", "machine-learning"] +categories = ["science"] +license = "MIT/Apache-2.0" +readme = "README.md" + +[dependencies] +safetensors = "0.3.1" +thiserror = "1" +cudarc = { version = "0.9.9", optional = true, features = ["f16"] } +candle-kernels = { path = "../candle-kernels", optional = true } +gemm = "0.15.4" +zip = { version = "0.6.6", default-features=false } +byteorder = "1.4.3" +half = { version = "2.3.1", features = ["num-traits"] } +num-traits = "0.2.15" + +[dev-dependencies] +anyhow = "1" +clap = { version = "4.2.4", features = ["derive"] } +rand = "0.8.5" +tokenizers = { version = "0.13.3", default-features=false, features=["onig"] } + +[features] +default = ["cuda"] +cuda = ["dep:cudarc", "dep:candle-kernels"] diff --git a/LICENSE b/candle-core/LICENSE similarity index 100% rename from LICENSE rename to candle-core/LICENSE diff --git a/Makefile b/candle-core/Makefile similarity index 100% rename from Makefile rename to candle-core/Makefile diff --git a/README.md b/candle-core/README.md similarity index 100% rename from README.md rename to candle-core/README.md diff --git a/examples/basics.rs b/candle-core/examples/basics.rs similarity index 100% rename from examples/basics.rs rename to candle-core/examples/basics.rs diff --git a/examples/cuda_basics.rs b/candle-core/examples/cuda_basics.rs similarity index 100% rename from examples/cuda_basics.rs rename to candle-core/examples/cuda_basics.rs diff --git a/examples/llama/convert_checkpoint.py b/candle-core/examples/llama/convert_checkpoint.py similarity index 100% rename from examples/llama/convert_checkpoint.py rename to candle-core/examples/llama/convert_checkpoint.py diff --git a/examples/llama/main.rs b/candle-core/examples/llama/main.rs similarity index 100% rename from examples/llama/main.rs rename to candle-core/examples/llama/main.rs diff --git a/examples/llama/var_store.rs b/candle-core/examples/llama/var_store.rs similarity index 100% rename from examples/llama/var_store.rs rename to candle-core/examples/llama/var_store.rs diff --git a/src/backprop.rs b/candle-core/src/backprop.rs similarity index 100% rename from src/backprop.rs rename to candle-core/src/backprop.rs diff --git a/src/cpu_backend.rs b/candle-core/src/cpu_backend.rs similarity index 100% rename from src/cpu_backend.rs rename to candle-core/src/cpu_backend.rs diff --git a/src/cuda_backend.rs b/candle-core/src/cuda_backend.rs similarity index 100% rename from src/cuda_backend.rs rename to candle-core/src/cuda_backend.rs diff --git a/src/device.rs b/candle-core/src/device.rs similarity index 100% rename from src/device.rs rename to candle-core/src/device.rs diff --git a/src/dtype.rs b/candle-core/src/dtype.rs similarity index 100% rename from src/dtype.rs rename to candle-core/src/dtype.rs diff --git a/src/dummy_cuda_backend.rs b/candle-core/src/dummy_cuda_backend.rs similarity index 100% rename from src/dummy_cuda_backend.rs rename to candle-core/src/dummy_cuda_backend.rs diff --git a/src/error.rs b/candle-core/src/error.rs similarity index 100% rename from src/error.rs rename to candle-core/src/error.rs diff --git a/src/lib.rs b/candle-core/src/lib.rs similarity index 100% rename from src/lib.rs rename to candle-core/src/lib.rs diff --git a/src/npy.rs b/candle-core/src/npy.rs similarity index 100% rename from src/npy.rs rename to candle-core/src/npy.rs diff --git a/src/op.rs b/candle-core/src/op.rs similarity index 100% rename from src/op.rs rename to candle-core/src/op.rs diff --git a/src/shape.rs b/candle-core/src/shape.rs similarity index 100% rename from src/shape.rs rename to candle-core/src/shape.rs diff --git a/src/storage.rs b/candle-core/src/storage.rs similarity index 100% rename from src/storage.rs rename to candle-core/src/storage.rs diff --git a/src/strided_index.rs b/candle-core/src/strided_index.rs similarity index 100% rename from src/strided_index.rs rename to candle-core/src/strided_index.rs diff --git a/src/tensor.rs b/candle-core/src/tensor.rs similarity index 100% rename from src/tensor.rs rename to candle-core/src/tensor.rs diff --git a/tests/grad_tests.rs b/candle-core/tests/grad_tests.rs similarity index 100% rename from tests/grad_tests.rs rename to candle-core/tests/grad_tests.rs diff --git a/tests/tensor_tests.rs b/candle-core/tests/tensor_tests.rs similarity index 100% rename from tests/tensor_tests.rs rename to candle-core/tests/tensor_tests.rs diff --git a/kernels/Cargo.toml b/candle-kernels/Cargo.toml similarity index 100% rename from kernels/Cargo.toml rename to candle-kernels/Cargo.toml diff --git a/kernels/README.md b/candle-kernels/README.md similarity index 100% rename from kernels/README.md rename to candle-kernels/README.md diff --git a/kernels/build.rs b/candle-kernels/build.rs similarity index 100% rename from kernels/build.rs rename to candle-kernels/build.rs diff --git a/kernels/src/affine.cu b/candle-kernels/src/affine.cu similarity index 100% rename from kernels/src/affine.cu rename to candle-kernels/src/affine.cu diff --git a/kernels/src/binary.cu b/candle-kernels/src/binary.cu similarity index 100% rename from kernels/src/binary.cu rename to candle-kernels/src/binary.cu diff --git a/kernels/src/binary_op_macros.cuh b/candle-kernels/src/binary_op_macros.cuh similarity index 100% rename from kernels/src/binary_op_macros.cuh rename to candle-kernels/src/binary_op_macros.cuh diff --git a/kernels/src/cast.cu b/candle-kernels/src/cast.cu similarity index 100% rename from kernels/src/cast.cu rename to candle-kernels/src/cast.cu diff --git a/kernels/src/compatibility.cuh b/candle-kernels/src/compatibility.cuh similarity index 100% rename from kernels/src/compatibility.cuh rename to candle-kernels/src/compatibility.cuh diff --git a/kernels/src/cuda_utils.cuh b/candle-kernels/src/cuda_utils.cuh similarity index 100% rename from kernels/src/cuda_utils.cuh rename to candle-kernels/src/cuda_utils.cuh diff --git a/kernels/src/embeddings.cu b/candle-kernels/src/embeddings.cu similarity index 100% rename from kernels/src/embeddings.cu rename to candle-kernels/src/embeddings.cu diff --git a/kernels/src/fill.cu b/candle-kernels/src/fill.cu similarity index 100% rename from kernels/src/fill.cu rename to candle-kernels/src/fill.cu diff --git a/kernels/src/lib.rs b/candle-kernels/src/lib.rs similarity index 100% rename from kernels/src/lib.rs rename to candle-kernels/src/lib.rs diff --git a/kernels/src/reduce.cu b/candle-kernels/src/reduce.cu similarity index 100% rename from kernels/src/reduce.cu rename to candle-kernels/src/reduce.cu diff --git a/kernels/src/ternary.cu b/candle-kernels/src/ternary.cu similarity index 100% rename from kernels/src/ternary.cu rename to candle-kernels/src/ternary.cu diff --git a/kernels/src/unary.cu b/candle-kernels/src/unary.cu similarity index 100% rename from kernels/src/unary.cu rename to candle-kernels/src/unary.cu