ai.rapids.cudf#

Interfaces#

BinaryOperable

A value that can be an operand of a binary operation, such as a column or a scalar.

HostBufferConsumer

Provides a set of APIs for consuming host buffers.

HostBufferProvider

Provides a set of APIs for providing host buffers to be read.

HostMemoryAllocator

An allocator of host memory buffers.

RmmDeviceMemoryResource

A resource that allocates/deallocates device memory.

RmmEventHandler

A callback interface for RMM memory allocation events.

StreamedTableReader

Provides an interface for reading multiple tables from a single input source.

Classes#

Aggregation128Utils

Utility methods for breaking apart and reassembling 128-bit values during aggregations to enable hash-based aggregations and detect overflows.

AggregationOverWindow

An Aggregation instance that also holds a column number and window metadata so the aggregation can be done over a specific window.

ArrowColumnBuilder

Column builder from Arrow data.

ArrowIPCOptions

Options for reading data in Arrow IPC format.

ArrowIPCWriterOptions

Settings for writing Arrow IPC data.

AssertEmptyNulls

This class is a Helper class to assert there are no non-empty nulls in a ColumnView.

AvroOptions

Options for reading an Avro file.

BaseDeviceMemoryBuffer

Base class for all MemoryBuffers that are in device memory.

ByteRange

Immutable byte range describing an offset and size within a file or buffer.

CSVOptions

Options for reading a CSV file.

CSVWriterOptions

Options for writing a CSV file.

ChunkedPack

JNI interface to cudf::chunked_pack.

CloseableArray

Utility class that wraps an array of closeable instances and can be closed.

ColumnFilterOptions

Base options class for input formats that can filter columns.

ColumnVector

This class represents the immutable vector of data.

ColumnView

This class represents the column_view of a column analogous to its cudf cpp counterpart.

ColumnWriterOptions

Per column settings for writing Parquet/ORC files.

CompressionMetadataWriterOptions

Base writer options that add a compression type and key-value file metadata.

ContigSplitGroupByResult

Used to save groups and uniq key table for Table.contiguousSplitGroupsAndGenUniqKeys Each row in uniq key table is corresponding to a group Resource management note: This class is the owner of groups and uniqKeysTable(or uniqKeyColumns if table is not constructed) 1: Use closeGroups and closeUniqKeyTable to close the resources separately if you want to close eagerly.

ContiguousTable

A table that is backed by a single contiguous device buffer.

CuFile

JNI wrapper for accessing the cuFile API.

CuFileBuffer

Represents a cuFile buffer.

CuFileReadHandle

Represents a cuFile file handle for reading.

CuFileWriteHandle

Represents a cuFile file handle for reading.

Cuda

Java bindings for a subset of the CUDA runtime API.

CudaMemInfo

Represent free and total device memory.

CudaMemoryBuffer

This class represents data allocated using cudaMalloc directly instead of the default RMM memory resource.

Cudf

Global settings for the native cuDF library.

DType

The data type of a column or scalar, with a scale for decimal types.

DataSource

Base class that can be used to provide data dynamically to CUDF.

DecimalUtils

Utility methods for creating decimal types and comparing decimal columns.

DefaultHostMemoryAllocator

The default HostMemoryAllocator, which uses pinned memory when requested and available and falls back to off-heap memory.

DeletionVector

Provides JNI wrappers for reading Parquet files with deletion vector support.

DeviceMemoryBuffer

This class represents data in some form on the GPU.

DeviceMemoryBufferView

This class represents data in some form on the GPU.

DictionaryByteRange

Byte range of a column chunk’s dictionary page, and whether that range is exactly the page.

DistinctHashJoin

This class represents a reusable hash table built from distinct join keys from the right-side table for a join operation.

FilteredJoin

A reusable hash lookup built from the right-side join keys for left semi and left anti joins.

GatherMap

This class tracks the data associated with a gather map, a buffer of INT32 elements that index a source table and can be passed to a table gather operation.

GetJsonObjectOptions

Options that control how ColumnView.getJSONObject(Scalar, GetJsonObjectOptions) parses JSON.

GroupByAggregation

An aggregation that can be used for a reduce.

GroupByAggregationOnColumn

A GroupByAggregation for a specific column in a table.

GroupByOptions

Options for groupby (see cudf::groupby::groupby’s constructor).

GroupByScanAggregation

An aggregation that can be used for a grouped scan.

GroupByScanAggregationOnColumn

A GroupByScanAggregation for a specific column in a table.

HashJoin

This class represents a hash table built from the join keys of the right-side table for a join operation.

HostColumnVector

Similar to a ColumnVector, but the data is stored in host memory and accessible directly from the JVM.

HostColumnVectorCore

A class that holds Host side Column Vector APIs and the OffHeapState.

HostMemoryBuffer

This class holds an off-heap buffer in the host/CPU memory.

HostUDFWrapper

A wrapper around native host UDF aggregations.

HybridScanReader

Experimental Parquet hybrid-scan reader.

JCudfSerialization

Serialize and deserialize CUDF tables and columns using a custom format.

JSONOptions

Options for reading in JSON encoded data.

KeyRemapping

Remaps keys to unique integer IDs.

MemoryBuffer

Abstract class for representing the Memory Buffer.

MemoryCleaner

ColumnVectors may store data off heap, and because of complicated processing the life time of an individual vector can vary a lot.

MixedJoinSize

This class tracks size information associated with a mixed table join.

MultiBufferDataSource

This is a DataSource that can take multiple HostMemoryBuffers.

NativeDepUtil

Command-line utilities for inspecting and extracting packaged native dependencies.

NativeDepsLoader

This class will load the native dependencies.

NvtxRange

This class supports push/pop NVTX profiling ranges, or “scoped” ranges.

NvtxUniqueRange

This class supports start/end NVTX profiling ranges.

ORCChunkedReader

Provide an interface for reading an ORC file in an iterative manner.

ORCOptions

Options for reading a ORC file.

ORCWriterOptions

This class represents settings for writing ORC files.

OrderByArg

Provides the ordering for specific columns.

PackedColumnMetadata

Metadata for a table that is backed by a single contiguous device buffer.

ParquetChunkedReader

Provide an interface for reading a Parquet file in an iterative manner.

ParquetOptions

Options for reading a parquet file.

ParquetTableWriter

A chunked Parquet writer that can return its footer metadata when closed.

ParquetWriterOptions

This class represents settings for writing Parquet files.

PartitionedTable

Class to provide a PartitionedTable.

PinnedMemoryPool

This is the JNI interface to an RMM pool backed by pinned host memory.

Range

Helper utility for creating ranges.

ReductionAggregation

An aggregation that can be used for a reduce.

RegexProgram

Regex program class, closely following cudf::strings::regex_program.

ReplacePolicyWithColumn

A replacement policy for a specific column.

Rmm

This is the binding class for rmm lib.

RmmAllocationMode

Bit flags that select the RMM memory allocation strategy.

RmmArenaMemoryResource

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

RmmCudaAsyncMemoryResource

A device memory resource that uses cudaMallocAsync and cudaFreeAsync for allocation and deallocation.

RmmCudaMemoryResource

A device memory resource that uses cudaMalloc and cudaFree for allocation and deallocation.

RmmEventHandlerResourceAdaptor

A device memory resource that will give callbacks in specific situations.

RmmLimitingResourceAdaptor

A device memory resource that will limit the maximum amount allocated.

RmmLoggingResourceAdaptor

A device memory resource that will log interactions.

RmmManagedMemoryResource

A device memory resource that uses cudaMallocManaged and cudaFreeManaged for allocation and deallocation.

RmmPoolMemoryResource

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

RmmTrackingResourceAdaptor

A device memory resource that will track some basic statistics about the memory usage.

RmmWrappingDeviceMemoryResource

A resource that wraps another RmmDeviceMemoryResource.

RollingAggregation

An aggregation that can be used on rolling windows.

RollingAggregationOnColumn

A RollingAggregation for a specific column in a table.

Scalar

A single scalar value.

ScanAggregation

An aggregation that can be used for a scan.

Schema

The schema of data to be read in.

SegmentedReductionAggregation

An aggregation that can be used for a reduce.

Table

Class to represent a collection of ColumnVectors and operations that can be performed on them collectively.

TableDebug

A debugging utility that prints the contents of tables and columns.

TableWithMeta

A table along with some metadata about the table.

TableWriter

Provides an interface for writing out Table information in multiple steps.

VariantOperationResult

Owning result of a status-aware Variant extraction or cast.

VariantUtils

Utility methods for cuDF’s experimental Parquet Variant extraction APIs.

WindowOptions

Options for rolling windows.

Enums#

BinaryOp

Mathematical binary operations.

BufferType

Types of buffers supported by ColumnVectors and HostColumnVectors.

CaptureGroups

Capture groups setting, closely following cudf::strings::capture_groups.

CompressionType

Enumeration of compression formats.

CudaComputeMode

This is the Java mapping of CUDA device compute modes.

DateTimeComponent

Types of datetime components that may be extracted.

DateTimeRoundingFrequency

The unit to which timestamps are rounded.

DuplicateKeepOption

Used for the dropListDuplicates function Specifies which duplicate to keep.

HashType

Hash algorithm identifiers, mirroring native enum cudf::hash_id.

JoinKind

Join semantics to apply when filtering equality-join gather maps of the corresponding kind.

NaNEquality

How should NaNs be compared in an operation.

NullEquality

How should nulls be compared in an operation.

NullPolicy

Specify whether to include nulls or exclude nulls in an operation.

NvtxColor

The color of an NVTX range, as shown in profiling tools.

OutOfBoundsPolicy

Policy to account for possible out-of-bounds indices.

PadSide

The side of a string to which padding characters are added.

QuantileMethod

Interpolation method to use when the desired quantile lies between two data points i and j.

QuoteStyle

Quote style for CSV records, closely following cudf::io::quote_style.

RegexFlag

Regex flags setting, closely following cudf::strings::regex_flags.

ReplacePolicy

Policy to specify the position of replacement values relative to null rows.

ScanType

Scan operation type.

UnaryOp

Mathematical unary operations.

VariantLogicalType

Logical type identifiers returned by VariantUtils.getVariantTypeId(ColumnView).

VariantOperationStatus

Per-row status identifiers returned by Variant extraction and cast operations.

Exceptions#

CudaException

Exception from the cuda language/library.

CudaFatalException

CudaFatalException is a kind of CudaException which leaves the process in an inconsistent state and any further CUDA work will return the same error.

CudfColumnSizeOverflowException

Exception thrown when CUDF operation results in a column size exceeding CUDF column size limits.

CudfException

Exception thrown by cudf itself.

RmmException

Exception from RMM allocator.

Annotation Types#

Experimental

Marks a public type whose API is still considered experimental and may change without notice.