Class GPULazyCudaFreeMemoryManager
- java.lang.Object
-
- org.apache.sysds.runtime.instructions.gpu.context.GPULazyCudaFreeMemoryManager
-
public class GPULazyCudaFreeMemoryManager extends Object
-
-
Constructor Summary
Constructors Constructor Description GPULazyCudaFreeMemoryManager(GPUMemoryManager gpuManager)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
add(long size, jcuda.Pointer toFree)
Add a pointer to the rmvar-ed listvoid
clearAll()
Set<jcuda.Pointer>
getAllPointers()
int
getNumPointers()
Get total number of rmvared pointersjcuda.Pointer
getRmvarPointer(String opcode, long size)
Get any pointer of the given size from rmvar-ed pointers (applicable if eager cudaFree is set to false)jcuda.Pointer
getRmvarPointerMinSize(String opcode, long minSize)
long
getTotalMemoryAllocated()
Return the total memory in bytes used by this memory managervoid
removeIfPresent(long size, jcuda.Pointer ptr)
Remove a specific pointer if present in the internal hashmap
-
-
-
Constructor Detail
-
GPULazyCudaFreeMemoryManager
public GPULazyCudaFreeMemoryManager(GPUMemoryManager gpuManager)
-
-
Method Detail
-
getRmvarPointer
public jcuda.Pointer getRmvarPointer(String opcode, long size)
Get any pointer of the given size from rmvar-ed pointers (applicable if eager cudaFree is set to false)- Parameters:
opcode
- opcodesize
- size in bytes- Returns:
- pointer
-
getAllPointers
public Set<jcuda.Pointer> getAllPointers()
-
clearAll
public void clearAll()
-
getRmvarPointerMinSize
public jcuda.Pointer getRmvarPointerMinSize(String opcode, long minSize) throws DMLRuntimeException
- Throws:
DMLRuntimeException
-
getTotalMemoryAllocated
public long getTotalMemoryAllocated()
Return the total memory in bytes used by this memory manager- Returns:
- number of bytes
-
getNumPointers
public int getNumPointers()
Get total number of rmvared pointers- Returns:
- number of pointers
-
add
public void add(long size, jcuda.Pointer toFree)
Add a pointer to the rmvar-ed list- Parameters:
size
- size of the pointertoFree
- pointer
-
removeIfPresent
public void removeIfPresent(long size, jcuda.Pointer ptr)
Remove a specific pointer if present in the internal hashmap- Parameters:
size
- size in bytesptr
- pointer to be removed
-
-