RmmArenaMemoryResource#

public class RmmArenaMemoryResource<C extends RmmDeviceMemoryResource> extends RmmWrappingDeviceMemoryResource<C>#

A device memory resource that will pre-allocate a pool of resources and sub-allocate from this pool to improve memory performance.

This uses an algorithm to try and reduce fragmentation much more than the RmmPoolMemoryResource does.

Constructor Summary

RmmArenaMemoryResource(C wrapped, long size, boolean dumpLogOnFailure)

Create a new arena memory resource taking ownership of the RmmDeviceMemoryResource that it is wrapping.

Method Summary

Fields inherited from class ai.rapids.cudf.RmmWrappingDeviceMemoryResource: wrapped

Methods inherited from class ai.rapids.cudf.RmmWrappingDeviceMemoryResource: getWrapped, releaseWrapped

Constructors

public RmmArenaMemoryResource(
C wrapped,
long size,
boolean dumpLogOnFailure
)#

Create a new arena memory resource taking ownership of the RmmDeviceMemoryResource that it is wrapping.

Parameters:
  • wrapped – the memory resource to use for the pool. This should not be reused.

  • size – the size of the pool

  • dumpLogOnFailure – if true, dump memory log when running out of memory.

Methods

public long getHandle()#
public long getSize()#
public void close()#
public String toString()#