You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
SurfaceFluxes.jl is required for the computation of boundary conditions for the atmosphere model. As such, GPU compatibility is a necessity. This issue defines pending tasks for GPU support.
UniversalFunctions.jl : Contains expressions for similarity and stability correction functions for use within the SurfaceFluxes.jl package.
SurfaceFluxes.jl : Contains functions that compute physical properties at the lower boundary of an atmosphere simulation, using the Monin-Obukhov similarity theory(MOST). This includes fluxes of momentum, heat, moisture and scale variables for use in the MOST.
Inputs
Results and Deliverables
GPU compatible SurfaceFluxes.jl package, tested in both single and double precision configurations.
Task Breakdown And Schedule
Set up correct dependencies for CUDA.
Identify failing tests
Update test_profiles.jl to specialize based on device.
Update test_convergence.jl to specialize based on device.
Update test_universal_functions.jl to specialize based on device.
PR Enable GPU tests #86. GPU Tests are currently disabled. These need to be brought back online-
#FIXME: Refactor tests to work on GPUs as in `Thermodynamics.jl`
#if get(ARGS, 1, "Array") == "CuArray"
# using CUDA
# import CUDAKernels: CUDADevice
# ArrayType = CUDA.CuArray
# CUDA.allowscalar(false)
# device(::T) where {T <: CuArray} = CUDADevice()
#else
ArrayType = Array
device(::T) where {T <:Array} =CPU()
#end
Documented, GPU compatible toolbox for surface flux calculations for use within ClimaAtmos.jl.
SDI Revision Log
9/11/2023: Moves all GPU specific items from other issues #83 # into #113
10/27/2023: Device specialisation not necessary -> current solution removes error print statements which is sufficient: the resulting issue is tracked in CliMA/ClimaAtmos.jl#2136
CC
The text was updated successfully, but these errors were encountered:
The Climate Modeling Alliance
Software Design Issue 📜
Purpose
SurfaceFluxes.jl is required for the computation of boundary conditions for the atmosphere model. As such, GPU compatibility is a necessity. This issue defines pending tasks for GPU support.
Cost/Benefits/Risks
People and Personnel
@LenkaNovak @sriharshakandala @charleskawczynski @simonbyrneComponents
Inputs
Results and Deliverables
Task Breakdown And Schedule
test_profiles.jl
to specialize based on device.test_convergence.jl
to specialize based on device.test_universal_functions.jl
to specialize based on device.SurfaceFluxes.jl/test/runtests.jl
Lines 24 to 34 in 48b25f1
ClimaAtmos.jl
.SDI Revision Log
9/11/2023: Moves all GPU specific items from other issues #83 # into #113
10/27/2023: Device specialisation not necessary -> current solution removes error print statements which is sufficient: the resulting issue is tracked in CliMA/ClimaAtmos.jl#2136
CC
The text was updated successfully, but these errors were encountered: