return the number of actual used memory (bytes) per element
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_element_type), | intent(inout) | :: | me |
element object |
||
integer(kind=long_k), | intent(out) | :: | elemSize |
number of total entries to be returned |
subroutine getReqSize_element( me, elemSize ) ! --------------------------------------------------------------------------- !> element object type( tem_element_type ), intent(inout) :: me !> number of total entries to be returned integer(kind=long_k), intent(out) :: elemSize ! --------------------------------------------------------------------------- integer :: iVal, nSize ! --------------------------------------------------------------------------- elemSize = 0 elemSize = elemSize + int( me%tID%nVals*12, kind=long_k) elemSize = elemSize + int( me%property%nVals*8, kind=long_k) elemSize = elemSize + int( me%eType%nVals*4, kind=long_k) elemSize = elemSize + int( me%pntTID%nVals*4, kind=long_k) do iVal = 1, me%stencil%nVals if( me%stencil%val( iVal )%nVals > 0 ) then nSize = size( me%stencil%val( iVal )%val(1)%tIDpos )*8 else nSize = 0 end if elemSize = elemSize + int( me%stencil%val(iVal)%nVals*nSize, kind=long_k) end do do iVal = 1, me%neighID%nVals elemSize = elemSize + int( me%neighID%val( iVal )%nVals*12, kind=long_k) end do elemSize = elemSize + int( me%sourceProc%nVals*4, kind=long_k) elemSize = elemSize + int( me%haloNesting%nVals*4, kind=long_k) elemSize = elemSize + int( me%needsUpdate%nVals*4, kind=long_k) end subroutine getReqSize_element