class ShuffleBufferCatalog extends Logging
Catalog for lookup of shuffle buffers by block ID
- Alphabetic
- By Inheritance
- ShuffleBufferCatalog
- Logging
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new ShuffleBufferCatalog(catalog: RapidsBufferCatalog, diskBlockManager: RapidsDiskBlockManager)
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
acquireBuffer(handle: RapidsBufferHandle): RapidsBuffer
Lookup the shuffle buffer that corresponds to the specified buffer handle and acquire it.
Lookup the shuffle buffer that corresponds to the specified buffer handle and acquire it. NOTE: It is the responsibility of the caller to close the buffer.
- handle
shuffle buffer handle
- returns
shuffle buffer that has been acquired
-
def
addBuffer(blockId: ShuffleBlockId, buffer: DeviceMemoryBuffer, tableMeta: TableMeta, initialSpillPriority: Long, needsSync: Boolean): RapidsBufferHandle
Adds a buffer to the device storage, taking ownership of the buffer.
Adds a buffer to the device storage, taking ownership of the buffer.
- blockId
Spark's
ShuffleBlockIdthat identifies this buffer- buffer
buffer that will be owned by the store
- tableMeta
metadata describing the buffer layout
- initialSpillPriority
starting spill priority value for the buffer
- returns
RapidsBufferHandle associated with this buffer
-
def
addContiguousTable(blockId: ShuffleBlockId, contigTable: ContiguousTable, initialSpillPriority: Long, needsSync: Boolean): RapidsBufferHandle
Adds a contiguous table shuffle table to the device storage.
Adds a contiguous table shuffle table to the device storage. This does NOT take ownership of the contiguous table, so it is the responsibility of the caller to close it. The refcount of the underlying device buffer will be incremented so the contiguous table can be closed before this buffer is destroyed.
- blockId
Spark's
ShuffleBlockIdthat identifies this buffer- contigTable
contiguous table to track in storage
- initialSpillPriority
starting spill priority value for the buffer
- needsSync
whether the spill framework should stream synchronize while adding this device buffer (defaults to true)
- returns
RapidsBufferHandle identifying this table
-
def
addDegenerateRapidsBuffer(blockId: ShuffleBlockId, meta: TableMeta): RapidsBufferHandle
Register a new buffer with the catalog.
Register a new buffer with the catalog. An exception will be thrown if an existing buffer was registered with the same block ID (extremely unlikely)
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
- def blockIdToBufferHandles(blockId: ShuffleBlockId): Array[RapidsBufferHandle]
-
def
blockIdToBuffersIds(blockId: ShuffleBlockId): Array[ShuffleBufferId]
Get all the buffer IDs that correspond to a shuffle block identifier.
-
def
blockIdToMetas(blockId: ShuffleBlockId): Seq[TableMeta]
Get all the buffer metadata that correspond to a shuffle block identifier.
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
getShuffleBufferHandle(tableId: Int): RapidsBufferHandle
Lookup the shuffle buffer handle that corresponds to the specified table identifier.
- def hasActiveShuffle(shuffleId: Int): Boolean
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
initializeLogIfNecessary(isInterpreter: Boolean, silent: Boolean): Boolean
- Attributes
- protected
- Definition Classes
- Logging
-
def
initializeLogIfNecessary(isInterpreter: Boolean): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isTraceEnabled(): Boolean
- Attributes
- protected
- Definition Classes
- Logging
-
def
log: Logger
- Attributes
- protected
- Definition Classes
- Logging
-
def
logDebug(msg: ⇒ String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logDebug(msg: ⇒ String): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logError(msg: ⇒ String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logError(msg: ⇒ String): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logInfo(msg: ⇒ String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logInfo(msg: ⇒ String): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logName: String
- Attributes
- protected
- Definition Classes
- Logging
-
def
logTrace(msg: ⇒ String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logTrace(msg: ⇒ String): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logWarning(msg: ⇒ String, throwable: Throwable): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
def
logWarning(msg: ⇒ String): Unit
- Attributes
- protected
- Definition Classes
- Logging
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
nextShuffleBufferId(blockId: ShuffleBlockId): ShuffleBufferId
Allocate a new shuffle buffer identifier and update the shuffle block mapping.
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
registerShuffle(shuffleId: Int): Unit
Register a new shuffle.
Register a new shuffle. This must be called before any buffer identifiers associated with this shuffle can be tracked.
- shuffleId
shuffle identifier
-
def
removeBuffer(handle: RapidsBufferHandle): Unit
Remove a buffer and table given a buffer handle NOTE: This function is not thread safe! The caller should only invoke if the handle being removed is not being utilized by another thread.
Remove a buffer and table given a buffer handle NOTE: This function is not thread safe! The caller should only invoke if the handle being removed is not being utilized by another thread.
- handle
buffer handle
- def removeCachedHandles(): Unit
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
def
unregisterShuffle(shuffleId: Int): Unit
Frees all buffers that correspond to the specified shuffle.
-
def
updateSpillPriorityForLocalRead(handle: RapidsBufferHandle): Unit
Update the spill priority of a shuffle buffer that soon will be read locally.
Update the spill priority of a shuffle buffer that soon will be read locally.
- handle
shuffle buffer handle of buffer to update
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()