EnsureDeviceBuffers_MappedScalar2D Subroutine

public subroutine EnsureDeviceBuffers_MappedScalar2D(this)

Grow the device buffers to hold the current logical arrays, reusing existing allocations when the bytes already fit (AMR Stage 6b).

Arguments

TypeIntentOptionalAttributesName
class(MappedScalar2D), intent(inout) :: this

Calls

proc~~ensuredevicebuffers_mappedscalar2d~~CallsGraph proc~ensuredevicebuffers_mappedscalar2d EnsureDeviceBuffers_MappedScalar2D ensuredevicebuffers_scalar2d ensuredevicebuffers_scalar2d proc~ensuredevicebuffers_mappedscalar2d->ensuredevicebuffers_scalar2d ensuredevicebuffer ensuredevicebuffer proc~ensuredevicebuffers_mappedscalar2d->ensuredevicebuffer

Called by

proc~~ensuredevicebuffers_mappedscalar2d~~CalledByGraph proc~ensuredevicebuffers_mappedscalar2d EnsureDeviceBuffers_MappedScalar2D proc~init_mappedscalar2d Init_MappedScalar2D proc~init_mappedscalar2d->proc~ensuredevicebuffers_mappedscalar2d proc~resize_mappedscalar2d Resize_MappedScalar2D proc~resize_mappedscalar2d->proc~ensuredevicebuffers_mappedscalar2d

Contents


Source Code

  subroutine EnsureDeviceBuffers_MappedScalar2D(this)
    !! Grow the device buffers to hold the current logical arrays, reusing existing allocations
    !! when the bytes already fit (AMR Stage 6b).
    implicit none
    class(MappedScalar2D),intent(inout) :: this
    ! Local
    integer(c_size_t) :: workSize

    call EnsureDeviceBuffers_Scalar2D(this)

    workSize = int(this%interp%N+1,c_size_t)*(this%interp%N+1)*this%nElem*this%nVar*4*prec
    call EnsureDeviceBuffer(this%jas_gpu,this%alloc_jas,workSize)

  endsubroutine EnsureDeviceBuffers_MappedScalar2D