dedalus icon indicating copy to clipboard operation
dedalus copied to clipboard

GPU support for Cartesian problems

Open kburns opened this issue 3 months ago • 2 comments

This PR adds GPU support for one dimensional bases and cartesian problems. Remaining rough edges include good defaults for subproblem coupling, and raising or warning for unsupported features (GPU+MPI, GPU+curvilinear).

kburns avatar Oct 21 '25 16:10 kburns

Just noting here that the trace operator doesn't work on GPU's as cupy's einsum doesn't take an out argument. A similar fix to dot product (commit fb9b3d6) fixes things. Also problem.add_equation will not work for float32 as unify attributes for dtype raises an 'Objects are not all equal' error.

csskene avatar Oct 28 '25 16:10 csskene

Interpolate doesn't currently work either, with error ... File "~/Packages/dedalus_gpu/dedalus/core/operators.py", line 975, in _subspace_matrix return cls._full_matrix(input_basis, output_basis, *args) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ TypeError: InterpolateRealFourier._full_matrix() missing 1 required positional argument: 'position'

csskene avatar Nov 10 '25 11:11 csskene