Skip to content

Commit 535c851

Browse files
authored
Merge pull request #1 from Schmiedium:ForwardPort
ForwardPort
2 parents 5db35d2 + f1fc6cc commit 535c851

File tree

27 files changed

+74
-70
lines changed

27 files changed

+74
-70
lines changed

Cargo.toml

+3
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
[workspace]
2+
3+
resolver = "2"
4+
25
members = [
36
"crates/*",
47
"crates/optix/examples/ex*",

crates/blastoff/Cargo.toml

+3-3
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@ authors = ["Riccardo D'Ambrosio <[email protected]>"]
66
repository = "https://github.com/Rust-GPU/Rust-CUDA"
77

88
[dependencies]
9-
bitflags = "1.3.2"
9+
bitflags = "2.8"
1010
cublas_sys = { version = "0.1", path = "../cublas_sys" }
1111
cust = { version = "0.3", path = "../cust", features = ["impl_num_complex"] }
12-
num-complex = "0.4.0"
13-
half = { version = "1.8.0", optional = true }
12+
num-complex = "0.4.6"
13+
half = { version = "2.4.1", optional = true }
1414

1515
[package.metadata.docs.rs]
1616
rustdoc-args = ["--html-in-header", "katex-header.html", "--cfg", "docsrs"]

crates/cuda_builder/Cargo.toml

+2-2
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,6 @@ readme = "../../README.md"
1111
[dependencies]
1212
rustc_codegen_nvvm = { version = "0.3", path = "../rustc_codegen_nvvm" }
1313
nvvm = { path = "../nvvm", version = "0.1" }
14-
serde = { version = "1.0.130", features = ["derive"] }
15-
serde_json = "1.0.68"
14+
serde = { version = "1.0.217", features = ["derive"] }
15+
serde_json = "1.0.138"
1616
find_cuda_helper = { version = "0.2", path = "../find_cuda_helper" }

crates/cuda_std/Cargo.toml

+4-4
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ repository = "https://github.com/Rust-GPU/Rust-CUDA"
88
readme = "../../README.md"
99

1010
[dependencies]
11-
vek = { version = "0.15.1", default-features = false, features = ["libm"] }
11+
vek = { version = "0.17.1", default-features = false, features = ["libm"] }
1212
cuda_std_macros = { version = "0.2", path = "../cuda_std_macros" }
13-
half = "1.7.1"
14-
bitflags = "1.3.2"
15-
paste = "1.0.5"
13+
half = "2.4.1"
14+
bitflags = "2.8"
15+
paste = "1.0.15"

crates/cuda_std_macros/Cargo.toml

+3-3
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,6 @@ readme = "../../README.md"
1111
proc-macro = true
1212

1313
[dependencies]
14-
quote = "1.0.9"
15-
syn = { version = "1.0.75", features = ["full"] }
16-
proc-macro2 = "1"
14+
quote = "1.0.38"
15+
syn = { version = "2.0.96", features = ["full"] }
16+
proc-macro2 = "1.0.93"

crates/cuda_std_macros/src/lib.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,7 @@ pub fn gpu_only(_attr: proc_macro::TokenStream, item: proc_macro::TokenStream) -
156156

157157
let mut cloned_attrs = attrs.clone();
158158
cloned_attrs.retain(|a| {
159-
!a.path
159+
!a.path()
160160
.get_ident()
161161
.map(|x| *x == "nvvm_internal")
162162
.unwrap_or_default()
@@ -199,7 +199,7 @@ pub fn externally_visible(
199199
let mut func = syn::parse_macro_input!(item as syn::ItemFn);
200200

201201
assert!(
202-
func.attrs.iter().any(|a| a.path.is_ident("no_mangle")),
202+
func.attrs.iter().any(|a| a.path().is_ident("no_mangle")),
203203
"#[externally_visible] function should also be #[no_mangle]"
204204
);
205205

crates/cudnn/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,5 @@ name = "cudnn"
55
version = "0.1.0"
66

77
[dependencies]
8-
bitflags = "1.3.2"
8+
bitflags = "2.8"
99
cust = {version = "0.3.2", path = "../cust"}

crates/cust/Cargo.toml

+5-5
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,13 @@ readme = "../../README.md"
1515
[dependencies]
1616
cust_core = { path = "../cust_core", version = "0.1.0"}
1717
cust_raw = { path = "../cust_raw", version = "0.11.2"}
18-
bitflags = "1.2"
18+
bitflags = "2.8"
1919
cust_derive = { path = "../cust_derive", version = "0.2" }
20-
glam = { version = "0.20", features=["cuda"], optional = true }
20+
glam = { version = "0.29.2", features=["cuda"], optional = true }
2121
mint = { version = "^0.5", optional = true }
22-
num-complex = { version = "0.4", optional = true }
23-
vek = { version = "0.15.1", optional = true, default-features = false }
24-
bytemuck = { version = "1.7.3", optional = true }
22+
num-complex = { version = "0.4.6", optional = true }
23+
vek = { version = "0.17.1", optional = true, default-features = false }
24+
bytemuck = { version = "1.21", optional = true }
2525

2626
[features]
2727
default= ["bytemuck", "impl_glam", "impl_mint", "impl_vek"]

crates/cust/src/graph.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -320,7 +320,7 @@ impl Graph {
320320
let mut raw = MaybeUninit::uninit();
321321

322322
unsafe {
323-
cuda::cuGraphCreate(raw.as_mut_ptr(), flags.bits).to_result()?;
323+
cuda::cuGraphCreate(raw.as_mut_ptr(), flags.bits()).to_result()?;
324324

325325
Ok(Self {
326326
raw: raw.assume_init(),

crates/cust/src/memory/array.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ impl ArrayFormat {
155155

156156
bitflags::bitflags! {
157157
/// Flags which modify the behavior of CUDA array creation.
158-
#[derive(Default)]
158+
#[derive(Default, Debug, PartialEq)]
159159
pub struct ArrayObjectFlags: c_uint {
160160
/// Enables creation of layered CUDA arrays. When this flag is set, depth specifies the
161161
/// number of layers, not the depth of a 3D array.

crates/cust/src/texture.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ pub enum TextureFilterMode {
4141

4242
bitflags::bitflags! {
4343
/// Flags which modify the behavior of CUDA texture creation.
44-
#[derive(Default)]
44+
#[derive(Default, Debug, Clone, Copy)]
4545
pub struct TextureDescriptorFlags: c_uint {
4646
/// Suppresses the default behavior of having the texture promote data to floating point data in the range
4747
/// of [0, 1]. This flag does nothing if the texture is a texture of `u32`s.
@@ -306,7 +306,7 @@ impl ResourceViewDescriptor {
306306

307307
bitflags::bitflags! {
308308
/// Flags for a resource descriptor. Currently empty.
309-
#[derive(Default)]
309+
#[derive(Default, Debug)]
310310
pub struct ResourceDescriptorFlags: c_uint {
311311
#[doc(hidden)]
312312
const _ZERO = 0;

crates/cust_core/Cargo.toml

+4-4
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@ repository = "https://github.com/Rust-GPU/Rust-CUDA"
88
readme = "../../README.md"
99

1010
[dependencies]
11-
vek = { version = "0.15.1", default-features=false, features=["libm"], optional = true }
12-
glam = { version = "0.20", features=["cuda", "libm"], default-features=false, optional=true }
11+
vek = { version = "0.17.1", default-features=false, features=["libm"], optional = true }
12+
glam = { version = "0.29.2", features=["cuda", "libm"], default-features=false, optional=true }
1313
mint = { version = "^0.5", optional = true }
14-
half = { version = "1.8", optional = true }
15-
num-complex = { version = "0.4", optional = true }
14+
half = { version = "2.4.1", optional = true }
15+
num-complex = { version = "0.4.6", optional = true }
1616
cust_derive = { path = "../cust_derive", version = "0.2" }

crates/cust_derive/Cargo.toml

+3-3
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,6 @@ readme = "../../README.md"
1212
proc-macro = true
1313

1414
[dependencies]
15-
syn = "1.0"
16-
quote = "1.0"
17-
proc-macro2 = "1.0"
15+
syn = "2.0.96"
16+
quote = "1.0.38"
17+
proc-macro2 = "1.0.93"

crates/gpu_rand/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ repository = "https://github.com/Rust-GPU/Rust-CUDA"
99
readme = "../../README.md"
1010

1111
[dependencies]
12-
rand_core = { version = "0.6" }
12+
rand_core = { version = "0.9" }
1313
cust_core = { version = "0.1.0", path = "../cust_core" }
1414

1515
[target.'cfg(target_os = "cuda")'.dependencies]

crates/optix/Cargo.toml

+5-5
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,11 @@ impl_half=["cust/impl_half", "half"]
1919
cust = { version = "0.3", path = "../cust", features=["impl_mint"] }
2020
cust_raw = { version = "0.11.2", path = "../cust_raw" }
2121
cfg-if = "1.0.0"
22-
bitflags = "1.3.2"
23-
glam = { version = "0.20", features=["cuda", "libm"], default-features=false, optional=true }
24-
half = { version = "^1.8", optional = true }
25-
memoffset = "0.6.4"
26-
mint = "0.5.8"
22+
bitflags = "2.8"
23+
glam = { version = "0.29", features=["cuda", "libm"], default-features=false, optional=true }
24+
half = { version = "2.4.1", optional = true }
25+
memoffset = "0.9.1"
26+
mint = "0.5.9"
2727
embed-doc-image = {version = "0.1.4"}
2828

2929
[build-dependencies]

crates/optix_device/Cargo.toml

+4-4
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@ edition = "2021"
55
authors = ["Anders Langlands <[email protected]>", "Riccardo D'Ambrosio <[email protected]>"]
66

77
[dependencies]
8-
bitflags = "1.3.2"
8+
bitflags = "2.8"
99
cuda_std = { version = "0.2", path = "../cuda_std" }
10-
glam = { version = "0.20", features=["cuda", "libm"], default-features=false }
11-
paste = "1.0.6"
12-
seq-macro = "0.3.0"
10+
glam = { version = "0.29", features=["cuda", "libm"], default-features=false }
11+
paste = "1.0.15"
12+
seq-macro = "0.3.5"
1313
cust_core = { version = "0.1", path = "../cust_core" }

crates/optix_device/src/transform.rs

+1
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,7 @@ fn matrix_motion_transform_from_handle_ptr(
9696
bitflags::bitflags! {
9797
/// Possible motion flags.
9898
#[repr(transparent)]
99+
#[derive(Debug, Clone, PartialEq)]
99100
pub struct MotionFlags: u32 {
100101
const START_VANISH = 1 << 0;
101102
const END_VANISH = 1 << 1;

crates/optix_device_macros/Cargo.toml

+3-3
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,6 @@ readme = "../../README.md"
1111
proc-macro = true
1212

1313
[dependencies]
14-
quote = "1.0.9"
15-
syn = { version = "1.0.75", features = ["full"] }
16-
proc-macro2 = "1"
14+
quote = "1.0.38"
15+
syn = { version = "2.0.96", features = ["full"] }
16+
proc-macro2 = "1.0.93"

crates/ptx/Cargo.toml

+2-2
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,5 @@ readme = "../../README.md"
1010
[dependencies]
1111
ascii = "1"
1212
# used for lexing/serializing very large enums of instructions/opcodes
13-
strum = { version = "0.21", features = ["derive"] }
14-
smallvec = "1.7"
13+
strum = { version = "0.26.3", features = ["derive"] }
14+
smallvec = "1.13.2"

crates/rustc_codegen_nvvm/Cargo.toml

+7-7
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,14 @@ crate-type = ["dylib"]
1616

1717
[dependencies]
1818
nvvm = { version = "0.1", path = "../nvvm" }
19-
rustc-demangle = "0.1.20"
20-
libc = "0.2.97"
21-
tar = "0.4.35"
22-
once_cell = "1.8.0"
23-
bitflags = "1.3.2"
24-
tracing = { version = "0.1.29", features = ["release_max_level_debug"] }
19+
rustc-demangle = "0.1.24"
20+
libc = "0.2.169"
21+
tar = "0.4.43"
22+
once_cell = "1.8.0" # this can be replaced wit std::cell implementation
23+
bitflags = "2.8"
24+
tracing = { version = "0.1.41", features = ["release_max_level_debug"] }
2525
find_cuda_helper = { version = "0.2", path = "../find_cuda_helper" }
26-
tracing-subscriber = { version = "0.3.1", features = ["env-filter"] }
26+
tracing-subscriber = { version = "0.3.19", features = ["env-filter"] }
2727
rustc_codegen_nvvm_macros = { version = "0.1", path = "../rustc_codegen_nvvm_macros" }
2828

2929
[build-dependencies]

crates/rustc_codegen_nvvm_macros/Cargo.toml

+3-3
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,6 @@ readme = "../../README.md"
1111
proc-macro = true
1212

1313
[dependencies]
14-
syn = { version = "1.0.81", features = ["full"] }
15-
quote = "1.0.10"
16-
proc-macro2 = "1.0.32"
14+
syn = { version = "2.0.96", features = ["full"] }
15+
quote = "1.0.38"
16+
proc-macro2 = "1.0.93"

examples/cuda/cpu/add/Cargo.toml

+3-3
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ nanorand = "0.6.1"
1212
# the newest semver compatible versions anyway.
1313
log = "=0.4.17"
1414
regex-syntax = "=0.6.28"
15-
regex = "=1.7.1"
15+
regex = "=1.11.1"
1616
thread_local = "=1.1.4"
1717
jobserver = "=0.1.25"
1818
cc = "=1.0.78"
19-
rayon = "=1.5.1"
20-
rayon-core = "=1.10.0"
19+
rayon = "=1.10"
20+
rayon-core = "=1.12.1"
2121
byteorder = "=1.4.0"
2222

2323
[build-dependencies]

examples/cuda/cpu/path_tracer/Cargo.toml

+5-5
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@ version = "0.1.0"
44
edition = "2018"
55

66
[dependencies]
7-
vek = { version = "0.15", features = ["bytemuck", "mint"] }
8-
bytemuck = { version = "1.7.2", features = ["derive"] }
7+
vek = { version = "0.17.1", features = ["bytemuck", "mint"] }
8+
bytemuck = { version = "1.21", features = ["derive"] }
99
cust = { version = "0.3", path = "../../../../crates/cust", features = ["impl_vek"] }
10-
image = "0.23.14"
10+
image = "0.25.5"
1111
path_tracer_gpu = { path = "../../gpu/path_tracer_gpu" }
1212
gpu_rand = { version = "0.1", path = "../../../../crates/gpu_rand" }
1313
optix = { version = "0.1", path = "../../../../crates/optix" }
@@ -16,8 +16,8 @@ glutin = "0.27.0"
1616
imgui = "0.8.0"
1717
imgui-glium-renderer = "0.8.0"
1818
imgui-winit-support = "0.8.0"
19-
rayon = "1.5.1"
20-
sysinfo = "0.20.5"
19+
rayon = "1.10"
20+
sysinfo = "0.33.1"
2121
anyhow = "1.0.53"
2222

2323
[build-dependencies]

examples/cuda/gpu/path_tracer_gpu/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ edition = "2018"
55

66
[dependencies]
77
cuda_std = { version = "0.2", path = "../../../../crates/cuda_std" }
8-
enum_dispatch = "0.3.7"
8+
enum_dispatch = "0.3.13"
99
gpu_rand = { version = "0.1", path = "../../../../crates/gpu_rand" }
1010
cust_core = { path = "../../../../crates/cust_core" }
1111
optix_device = { path = "../../../../crates/optix_device" }

examples/optix/denoiser/Cargo.toml

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,5 @@ edition = "2021"
77
optix = { version = "0.1", path = "../../../crates/optix" }
88
structopt = "0.3"
99
cust = { version = "0.3", path = "../../../crates/cust", features = ["impl_vek", "bytemuck"] }
10-
image = "0.23.14"
11-
vek = { version = "0.15.1", features = ["bytemuck"] }
10+
image = "0.25.5"
11+
vek = { version = "0.17.1", features = ["bytemuck"] }

rust-toolchain

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,5 @@
55
# to the user in the error, instead of "error: invalid channel name '[toolchain]'".
66

77
[toolchain]
8-
channel = "nightly-2021-12-04"
8+
channel = "nightly-2025-01-23"
99
components = ["rust-src", "rustc-dev", "llvm-tools-preview"]

xtask/Cargo.toml

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,6 @@ license = "MIT"
66

77
[dependencies]
88
pico-args = "0.4.2"
9-
rayon = "1.5.1"
10-
regex = "1.3.9"
9+
rayon = "1.10"
10+
regex = "1.11.1"
1111
rustc_codegen_nvvm = { path = "../crates/rustc_codegen_nvvm" }

0 commit comments

Comments
 (0)