Skip to content

CompatHelper: bump compat for CUDA in [weakdeps] to 6, (keep existing compat)#2925

Merged
ranocha merged 20 commits into
mainfrom
compathelper/new_version/2026-04-11-00-10-58-699-03687460567
Jun 10, 2026
Merged

CompatHelper: bump compat for CUDA in [weakdeps] to 6, (keep existing compat)#2925
ranocha merged 20 commits into
mainfrom
compathelper/new_version/2026-04-11-00-10-58-699-03687460567

Conversation

@github-actions

@github-actions github-actions Bot commented Apr 11, 2026

Copy link
Copy Markdown
Contributor

This pull request changes the compat entry for the CUDA package from 5.9.1 to 5.9.1, 6.
This keeps the compat entries for earlier versions.

Note: I have not tested your package with this new compat entry.
It is your responsibility to make sure that your package tests pass before you merge this pull request.

Closes #2927.

@ranocha ranocha force-pushed the compathelper/new_version/2026-04-11-00-10-58-699-03687460567 branch from 700969d to 785415b Compare April 11, 2026 00:11
@codecov

codecov Bot commented Apr 11, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 0% with 11 lines in your changes missing coverage. Please review.
✅ Project coverage is 96.87%. Comparing base (29765b9) to head (79c2ea2).
⚠️ Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
ext/TrixiCUDACoreExt.jl 0.00% 11 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2925      +/-   ##
==========================================
+ Coverage   96.84%   96.87%   +0.03%     
==========================================
  Files         642      642              
  Lines       49824    49808      -16     
==========================================
  Hits        48250    48250              
+ Misses       1574     1558      -16     
Flag Coverage Δ
unittests 96.87% <0.00%> (+0.03%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

…ing compat) (#2926)

Co-authored-by: CompatHelper Julia <compathelper_noreply@julialang.org>

@ranocha ranocha left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking at the release notes of CUDA.jl, there should be no breaking changes (just internal reorganization of the repository).

@JoshuaLampert JoshuaLampert left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@vchuravy

Copy link
Copy Markdown
Member

Eventually we can drop the CUDA dependency and only depend on for our extension CUDACore

JoshuaLampert
JoshuaLampert previously approved these changes May 22, 2026

@JoshuaLampert JoshuaLampert left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CI uses CUDA.jl v6.1. So this should be ready to merge.

@ranocha ranocha left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CUDA tests fail:

elixir_euler_source_terms.jl Float32 / CUDA: Error During Test at /root/.cache/julia-buildkite-plugin/depots/019658de-efdd-4c0c-a098-7a91a0dafb4d/packages/TrixiTest/6CVoC/src/macros.jl:196
  Got exception outside of a @test
  LoadError: UndefVarError: `local_toolkit` not defined
  Stacktrace:
    [1] trixi_backend_info!(setup::Vector{Pair{String, Any}}, ::CUDACore.CUDAKernels.CUDABackend)
      @ TrixiCUDAExt /var/lib/buildkite-agent/builds/gpuci-7/julialang/trixi-dot-jl/ext/TrixiCUDAExt.jl:38
    [2] initialize_summary_callback(cb::SciMLBase.DiscreteCallback{typeof(Trixi.summary_callback), typeof(Trixi.summary_callback), Trixi.var"#initialize#1676"{Bool}, typeof(Trixi.finalize_summary_callback), Nothing, Tuple{}}, u::CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}, t::Float64, integrator::OrdinaryDiffEqCore.ODEIntegrator{OrdinaryDiffEqLowStorageRK.CarpenterKennedy2N54{typeof(OrdinaryDiffEqCore.trivial_limiter!), typeof(OrdinaryDiffEqCore.trivial_limiter!), FastBroadcast.Serial}, true, CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}, Nothing, Float64, Trixi.SemidiscretizationHyperbolic{Trixi.P4estMesh{3, 3, Float64, Static.False, P4est.PointerWrappers.PointerWrapper{P4est.LibP4est.p8est}, P4est.PointerWrappers.PointerWrapper{P4est.LibP4est.p8est_ghost_t}, 5, 4}, Trixi.CompressibleEulerEquations3D{Float32}, typeof(Trixi.initial_condition_convergence_test), Trixi.BoundaryConditionPeriodic, typeof(Trixi.source_terms_convergence_test), Trixi.DGSEM{Trixi.LobattoLegendreBasis{Float32, 4, StaticArraysCore.SVector{4, Float32}, CUDACore.CuArray{Float32, 2, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 2, CUDACore.DeviceMemory}}, Trixi.LobattoLegendreMortarL2{Float32, 4, CUDACore.CuArray{Float32, 2, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 2, CUDACore.DeviceMemory}}, Trixi.SurfaceIntegralWeakForm{Trixi.FluxLaxFriedrichs{typeof(Trixi.max_abs_speed_naive)}}, Trixi.VolumeIntegralWeakForm}, @NamedTuple{elements::Trixi.P4estElementContainer{3, Float32, Float32, 4, 5, 6, CUDACore.CuArray{Float32, 4, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 5, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 6, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 5, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}}, interfaces::Trixi.P4estInterfaceContainer{3, Float64, Float32, 4, 5, CUDACore.CuArray{Float32, 5, CUDACore.DeviceMemory}, Nothing, CUDACore.CuArray{Int64, 2, CUDACore.DeviceMemory}, CUDACore.CuArray{Tuple{Symbol, Symbol, Symbol}, 2, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}, Nothing, CUDACore.CuArray{Int64, 1, CUDACore.DeviceMemory}, CUDACore.CuArray{Tuple{Symbol, Symbol, Symbol}, 1, CUDACore.DeviceMemory}}, boundaries::Trixi.P4estBoundaryContainer{3, Float32, 4, CUDACore.CuArray{Float32, 4, CUDACore.DeviceMemory}, CUDACore.CuArray{Int64, 1, CUDACore.DeviceMemory}, CUDACore.CuArray{Tuple{Symbol, Symbol, Symbol}, 1, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}}, mortars::Trixi.P4estMortarContainer{3, Float32, 4, 6, CUDACore.CuArray{Float32, 6, CUDACore.DeviceMemory}, CUDACore.CuArray{Int64, 2, CUDACore.DeviceMemory}, CUDACore.CuArray{Tuple{Symbol, Symbol, Symbol}, 2, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}, CUDACore.CuArray{Int64, 1, CUDACore.DeviceMemory}, CUDACore.CuArray{Tuple{Symbol, Symbol, Symbol}, 1, CUDACore.DeviceMemory}}, fstar_primary_threaded::Trixi.VecOfArrays{CUDACore.CuArray{Float32, 4, CUDACore.DeviceMemory}}, fstar_secondary_threaded::Trixi.VecOfArrays{CUDACore.CuArray{Float32, 4, CUDACore.DeviceMemory}}, fstar_tmp_threaded::Trixi.VecOfArrays{CUDACore.CuArray{Float32, 3, CUDACore.DeviceMemory}}, u_threaded::Trixi.VecOfArrays{CUDACore.CuArray{Float32, 3, CUDACore.DeviceMemory}}}}, Float64, Float64, Vector{CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}}, SciMLBase.ODESolution{Float32, 2, Vector{CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}}, Nothing, Nothing, Vector{Float64}, Vector{Vector{CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}}}, Nothing, SciMLBase.ODEProblem{CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}, Tuple{Float64, Float64}, true, Trixi.SemidiscretizationHyperbolic{Trixi.P4estMesh{3, 3, Float64, Static.False, P4est.PointerWrappers.PointerWrapper{P4est.LibP4est.p8est}, P4est.PointerWrappers.PointerWrapper{P4est.LibP4est.p8est_ghost_t}, 5, 4}, Trixi.CompressibleEulerEquations3D{Float32}, typeof(Trixi.initial_condition_convergence_test), Trixi.BoundaryConditionPeriodic, typeof(Trixi.source_terms_convergence_test), Trixi.DGSEM{Trixi.LobattoLegendreBasis{Float32, 4, StaticArraysCore.SVector{4, Float32}, CUDACore.CuArray{Float32, 2, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 2, CUDACore.DeviceMemory}}, Trixi.LobattoLegendreMortarL2{Float32, 4, CUDACore.CuArray{Float32, 2, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 2, CUDACore.DeviceMemory}}, Trixi.SurfaceIntegralWeakForm{Trixi.FluxLaxFriedrichs{typeof(Trixi.max_abs_speed_naive)}}, Trixi.VolumeIntegralWeakForm}, @NamedTuple{elements::Trixi.P4estElementContainer{3, Float32, Float32, 4, 5, 6, CUDACore.CuArray{Float32, 4, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 5, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 6, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 5, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}}, interfaces::Trixi.P4estInterfaceContainer{3, Float64, Float32, 4, 5, CUDACore.CuArray{Float32, 5, CUDACore.DeviceMemory}, Nothing, CUDACore.CuArray{Int64, 2, CUDACore.DeviceMemory}, CUDACore.CuArray{Tuple{Symbol, Symbol, Symbol}, 2, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}, Nothing, CUDACore.CuArray{Int64, 1, CUDACore.DeviceMemory}, CUDACore.CuArray{Tuple{Symbol, Symbol, Symbol}, 1, CUDACore.DeviceMemory}}, boundaries::Trixi.P4estBoundaryContainer{3, Float32, 4, CUDACore.CuArray{Float32, 4, CUDACore.DeviceMemory}, CUDACore.CuArray{Int64, 1, CUDACore.DeviceMemory}, CUDACore.CuArray{Tuple{Symbol, Symbol, Symbol}, 1, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}}, mortars::Trixi.P4estMortarContainer{3, Float32, 4, 6, CUDACore.CuArray{Float32, 6, CUDACore.DeviceMemory}, CUDACore.CuArray{Int64, 2, CUDACore.DeviceMemory}, CUDACore.CuArray{Tuple{Symbol, Symbol, Symbol}, 2, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}, CUDACore.CuArray{Int64, 1, CUDACore.DeviceMemory}, CUDACore.CuArray{Tuple{Symbol, Symbol, Symbol}, 1, CUDACore.DeviceMemory}}, fstar_primary_threaded::Trixi.VecOfArrays{CUDACore.CuArray{Float32, 4, CUDACore.DeviceMemory}}, fstar_secondary_threaded::Trixi.VecOfArrays{CUDACore.CuArray{Float32, 4, CUDACore.DeviceMemory}}, fstar_tmp_threaded::Trixi.VecOfArrays{CUDACore.CuArray{Float32, 3, CUDACore.DeviceMemory}}, u_threaded::Trixi.VecOfArrays{CUDACore.CuArray{Float32, 3, CUDACore.DeviceMemory}}}}, SciMLBase.ODEFunction{true, SciMLBase.FullSpecialize, typeof(Trixi.rhs!), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, Nothing, Nothing, Nothing}, @Kwargs{}, SciMLBase.StandardODEProblem}, OrdinaryDiffEqLowStorageRK.CarpenterKennedy2N54{typeof(OrdinaryDiffEqCore.trivial_limiter!), typeof(OrdinaryDiffEqCore.trivial_limiter!), FastBroadcast.Serial}, OrdinaryDiffEqCore.InterpolationData{SciMLBase.ODEFunction{true, SciMLBase.FullSpecialize, typeof(Trixi.rhs!), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, Nothing, Nothing, Nothing}, Vector{CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}}, Vector{Float64}, Vector{Vector{CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}}}, Nothing, OrdinaryDiffEqLowStorageRK.LowStorageRK2NCache{CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}, OrdinaryDiffEqLowStorageRK.LowStorageRK2NConstantCache{4, Float32, Float64}, typeof(OrdinaryDiffEqCore.trivial_limiter!), typeof(OrdinaryDiffEqCore.trivial_limiter!), FastBroadcast.Serial}, Nothing}, SciMLBase.DEStats, Nothing, Nothing, Nothing, Nothing}, SciMLBase.ODEFunction{true, SciMLBase.FullSpecialize, typeof(Trixi.rhs!), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, Nothing, Nothing, Nothing}, OrdinaryDiffEqLowStorageRK.LowStorageRK2NCache{CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}, CUDACore.CuArray{Float32, 1, CUDACore.DeviceMemory}, OrdinaryDiffEqLowStorageRK.LowStorageRK2NConstantCache{4, Float32, Float64}, typeof(OrdinaryDiffEqCore.trivial_limiter!), typeof(OrdinaryDiffEqCore.trivial_limiter!), FastBroadcast.Serial}, OrdinaryDiffEqCore.DEOptions{Float32, Float32, Float64, Float64, typeof(DiffEqBase.ODE_DEFAULT_NORM), typeof(LinearAlgebra.opnorm), Nothing, SciMLBase.CallbackSet{Tuple{}, Tuple{SciMLBase.DiscreteCallback{typeof(Trixi.summary_callback), typeof(Trixi.summary_callback), Trixi.var"#initialize#1676"{Bool}, typeof(Trixi.finalize_summary_callback), Nothing, Tuple{}}, SciMLBase.DiscreteCallback{Trixi.var"#1682#1689"{Int64}, Trixi.AnalysisCallback{Trixi.LobattoLegendreAnalyzer{Float64, 7, StaticArraysCore.SVector{7, Float64}, Matrix{Float64}}, Tuple{typeof(Trixi.entropy_timederivative)}, StaticArraysCore.SVector{5, Float64}, @NamedTuple{u_local::StrideArraysCore.StaticStrideArray{Float64, 4, (1, 2, 3, 4), Tuple{Static.StaticInt{5}, Static.StaticInt{7}, Static.StaticInt{7}, Static.StaticInt{7}}, NTuple{4, Nothing}, NTuple{4, Static.StaticInt{1}}, 1715}, u_tmp1::StrideArraysCore.StaticStrideArray{Float64, 4, (1, 2, 3, 4), Tuple{Static.StaticInt{5}, Static.StaticInt{7}, Static.StaticInt{4}, Static.StaticInt{4}}, NTuple{4, Nothing}, NTuple{4, Static.StaticInt{1}}, 560}, u_tmp2::StrideArraysCore.StaticStrideArray{Float64, 4, (1, 2, 3, 4), Tuple{Static.StaticInt{5}, Static.StaticInt{7}, Static.StaticInt{7}, Static.StaticInt{4}}, NTuple{4, Nothing}, NTuple{4, Static.StaticInt{1}}, 980}, x_local::StrideArraysCore.StaticStrideArray{Float64, 4, (1, 2, 3, 4), Tuple{Static.StaticInt{3}, Static.StaticInt{7}, Static.StaticInt{7}, Static.StaticInt{7}}, NTuple{4, Nothing}, NTuple{4, Static.StaticInt{1}}, 1029}, x_tmp1::StrideArraysCore.StaticStrideArray{Float64, 4, (1, 2, 3, 4), Tuple{Static.StaticInt{3}, Static.StaticInt{7}, Static.StaticInt{4}, Static.StaticInt{4}}, NTuple{4, Nothing}, NTuple{4, Static.StaticInt{1}}, 336}, x_tmp2::StrideArraysCore.StaticStrideArray{Float64, 4, (1, 2, 3, 4), Tuple{Static.StaticInt{3}, Static.StaticInt{7}, Static.StaticInt{7}, Static.StaticInt{4}}, NTuple{4, Nothing}, NTuple{4, Static.StaticInt{1}}, 588}, jacobian_local::StrideArraysCore.StaticStrideArray{Float64, 3, (1, 2, 3), Tuple{Static.StaticInt{7}, Static.StaticInt{7}, Static.StaticInt{7}}, Tuple{Nothing, Nothing, Nothing}, Tuple{Static.StaticInt{1}, Static.StaticInt{1}, Static.StaticInt{1}}, 343}, jacobian_tmp1::StrideArraysCore.StaticStrideArray{Float64, 3, (1, 2, 3), Tuple{Static.StaticInt{7}, Static.StaticInt{4}, Static.StaticInt{4}}, Tuple{Nothing, Nothing, Nothing}, Tuple{Static.StaticInt{1}, Static.StaticInt{1}, Static.StaticInt{1}}, 112}, jacobian_tmp2::StrideArraysCore.StaticStrideArray{Float64, 3, (1, 2, 3), Tuple{Static.StaticInt{7}, Static.StaticInt{7}, Static.StaticInt{4}}, Tuple{Nothing, Nothing, Nothing}, Tuple{Static.StaticInt{1}, Static.StaticInt{1}, Static.StaticInt{1}}, 196}}}, typeof(Trixi.initialize!), typeof(SciMLBase.FINALIZE_DEFAULT), Nothing, Tuple{}}, SciMLBase.DiscreteCallback{Trixi.AliveCallback, Trixi.AliveCallback, typeof(Trixi.initialize!), typeof(SciMLBase.FINALIZE_DEFAULT), Nothing, Tuple{}}, SciMLBase.DiscreteCallback{Trixi.SaveSolutionCallback{Int64, typeof(Trixi.cons2prim)}, Trixi.SaveSolutionCallback{Int64, typeof(Trixi.cons2prim)}, typeof(Trixi.initialize_save_cb!), typeof(SciMLBase.FINALIZE_DEFAULT), Nothing, Tuple{}}, SciMLBase.DiscreteCallback{Trixi.StepsizeCallback{Returns{Float64}, Returns{Float64}}, Trixi.StepsizeCallback{Returns{Float64}, Returns{Float64}}, typeof(Trixi.initialize!), typeof(SciMLBase.FINALIZE_DEFAULT), Nothing, Tuple{}}}}, typeof(DiffEqBase.ODE_DEFAULT_ISOUTOFDOMAIN), typeof(DiffEqBase.ODE_DEFAULT_PROG_MESSAGE), typeof(DiffEqBase.ODE_DEFAULT_UNSTABLE_CHECK), DataStructures.BinaryHeap{Float64, DataStructures.FasterForward}, DataStructures.BinaryHeap{Float64, DataStructures.FasterForward}, Nothing, Nothing, Int64, Tuple{}, Tuple{}, Tuple{}, DiffEqBase.DEVerbosity{true, SciMLLogging.Minimal, SciMLLogging.Minimal}, Nothing}, Nothing, Float32, Nothing, DiffEqBase.DefaultInit, Nothing, OrdinaryDiffEqCore.PIControllerCache{Float64, Float32}, Random.TaskLocalRNG, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing}; reset_threads::Bool)
      @ Trixi /var/lib/buildkite-agent/builds/gpuci-7/julialang/trixi-dot-jl/src/callbacks_step/summary.jl:226
    [3] initialize_summary_callback
      @ /var/lib/buildkite-agent/builds/gpuci-7/julialang/trixi-dot-jl/src/callbacks_step/summary.jl:153 [inlined]
    [4] initialize
      @ /var/lib/buildkite-agent/builds/gpuci-7/julialang/trixi-dot-jl/src/callbacks_step/summary.jl:20 [inlined]

see https://buildkite.com/julialang/trixi-dot-jl/builds/6963/list?jid=019e4e9d-4933-4270-afc9-a3bd786e0653&tab=output#019e4e9d-4933-4270-afc9-a3bd786e0653/L2758

CC @vchuravy

@JoshuaLampert

Copy link
Copy Markdown
Member

Looks like that is because CUDA.jl was split into subpackages in CUDA.jl v6. Now local_toolkit lives in CUDACore.jl. So it would be good if the extension only depends on CUDACore.jl.

@JoshuaLampert

Copy link
Copy Markdown
Member

Is everything we need in the extension already defined CUDACore.jl, i.e., is it trivial to only depend on CUDACore.jl by essentially replacing CUDA by CUDACore, @vchuravy?

Comment thread ext/TrixiCUDAExt.jl Outdated
JoshuaLampert and others added 2 commits May 28, 2026 18:15
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
@JoshuaLampert

Copy link
Copy Markdown
Member

Because the NVML stuff lives in CUDATools.jl, the extension has to be for both CUDACore.jl and CUDATools.jl.

JoshuaLampert
JoshuaLampert previously approved these changes May 28, 2026

@JoshuaLampert JoshuaLampert left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

From my point of view, this is ready and could be merged. Would you prefer to keep compatibility with CUDA.jl v5 (at least for some more time) @vchuravy? It would probably be messy to try to make Trixi.jl compatible with both CUDA.jl v5 and v6 at the same time since I think then the extension would need to be for CUDA (for the v5 case), CUDACore, and CUDATools (for the v6 case) with some @static ifs for the imports.

@JoshuaLampert JoshuaLampert requested review from ranocha and vchuravy May 31, 2026 07:55

@ranocha ranocha left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for updating this to CUDA.jl v6, @JoshuaLampert! I would like to get the opinion of @vchuravy before merging this.

Comment thread Project.toml Outdated
Comment thread Project.toml Outdated
Comment thread Project.toml Outdated
Co-authored-by: Valentin Churavy <v.churavy@gmail.com>
vchuravy
vchuravy previously approved these changes Jun 8, 2026
Comment thread ext/TrixiCUDACoreExt.jl
Comment thread Project.toml Outdated
Comment thread Project.toml Outdated
JoshuaLampert and others added 4 commits June 8, 2026 16:41

@JoshuaLampert JoshuaLampert left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we loose anything by removing the NVML stuff, @vchuravy?

@ranocha ranocha left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@vchuravy and I discussed this offline: No, we don't lose anything in terms of capabilities. It just makes some query functions used in the summary callback a bit more tedious, but this does not matter (also not in terms of performance since it is only used once in a simulation).

@ranocha ranocha merged commit 42b5759 into main Jun 10, 2026
67 of 69 checks passed
@ranocha ranocha deleted the compathelper/new_version/2026-04-11-00-10-58-699-03687460567 branch June 10, 2026 11:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants