APIs for converting between cudf tables/columns and DLPack tensors or Apache Arrow arrays. More...
#include <cudf/column/column.hpp>#include <cudf/detail/transform.hpp>#include <cudf/strings/strings_column_view.hpp>#include <cudf/table/table.hpp>#include <cudf/table/table_view.hpp>#include <cudf/types.hpp>#include <cudf/utilities/export.hpp>#include <cudf/utilities/memory_resource.hpp>#include <cudf/utilities/span.hpp>#include <rmm/resource_ref.hpp>#include <span>#include <utility>Go to the source code of this file.
Classes | |
| struct | cudf::column_metadata |
| Detailed metadata information for arrow array. More... | |
| struct | cudf::custom_view_deleter< ViewType > |
| functor for a custom deleter to a unique_ptr of table_view More... | |
| class | cudf::interop::arrow_column |
| A standard interchange medium for ArrowDeviceArray data in cudf. More... | |
| class | cudf::interop::arrow_table |
| A standard interchange medium for ArrowDeviceArray data in cudf. More... | |
Namespaces | |
| cudf | |
| cuDF interfaces | |
Typedefs | |
| using | cudf::unique_schema_t = std::unique_ptr< ArrowSchema, void(*)(ArrowSchema *)> |
| typedef for a unique_ptr to an ArrowSchema with custom deleter | |
| using | cudf::unique_device_array_t = std::unique_ptr< ArrowDeviceArray, void(*)(ArrowDeviceArray *)> |
| typedef for a unique_ptr to an ArrowDeviceArray with a custom deleter | |
| using | cudf::owned_columns_t = std::vector< std::unique_ptr< cudf::column > > |
| typedef for a vector of owning columns, used for conversion from ArrowDeviceArray | |
| using | cudf::unique_table_view_t = std::unique_ptr< cudf::table_view, custom_view_deleter< cudf::table_view > > |
typedef for a unique_ptr to a cudf::table_view with custom deleter | |
| using | cudf::unique_column_view_t = std::unique_ptr< cudf::column_view, custom_view_deleter< cudf::column_view > > |
typedef for a unique_ptr to a cudf::column_view with custom deleter | |
Functions | |
| std::unique_ptr< table > | cudf::from_dlpack (DLManagedTensor const *managed_tensor, cuda::stream_ref stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
| Convert a DLPack DLTensor into a cudf table. More... | |
| DLManagedTensor * | cudf::to_dlpack (table_view const &input, cuda::stream_ref stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
| Convert a cudf table into a DLPack DLTensor. More... | |
| cudf::column_metadata | cudf::interop::get_column_metadata (cudf::column_view const &input) |
| Helper function to generate empty column metadata (column with no name) for arrow conversion. More... | |
| std::vector< cudf::column_metadata > | cudf::interop::get_table_metadata (cudf::table_view const &input) |
| Helper function to generate empty table metadata (all columns with no names) for arrow conversion. More... | |
| unique_schema_t | cudf::to_arrow_schema (cudf::table_view const &input, std::span< column_metadata const > metadata) |
| Create ArrowSchema from cudf table and metadata. More... | |
| unique_device_array_t | cudf::to_arrow_device (cudf::table &&table, cuda::stream_ref stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
Create ArrowDeviceArray from cudf table and metadata. More... | |
| unique_device_array_t | cudf::to_arrow_device (cudf::column &&col, cuda::stream_ref stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
Create ArrowDeviceArray from cudf column and metadata. More... | |
| unique_device_array_t | cudf::to_arrow_device (cudf::table_view const &table, cuda::stream_ref stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
Create ArrowDeviceArray from a table view. More... | |
| unique_device_array_t | cudf::to_arrow_device (cudf::column_view const &col, cuda::stream_ref stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
Create ArrowDeviceArray from a column view. More... | |
| unique_device_array_t | cudf::to_arrow_host (cudf::table_view const &table, cuda::stream_ref stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
Copy table view data to host and create ArrowDeviceArray for it. More... | |
| unique_device_array_t | cudf::to_arrow_host (cudf::column_view const &col, cuda::stream_ref stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
Copy column view data to host and create ArrowDeviceArray for it. More... | |
| unique_device_array_t | cudf::to_arrow_host_stringview (cudf::strings_column_view const &col, cuda::stream_ref stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
Copy strings column data to host and create ArrowDeviceArray for it using the ArrowBinaryView format. More... | |
| std::unique_ptr< cudf::table > | cudf::from_arrow (ArrowSchema const *schema, ArrowArray const *input, cuda::stream_ref stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
Create cudf::table from given ArrowArray and ArrowSchema input. More... | |
| std::unique_ptr< cudf::column > | cudf::from_arrow_column (ArrowSchema const *schema, ArrowArray const *input, cuda::stream_ref stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
Create cudf::column from a given ArrowArray and ArrowSchema input. More... | |
| std::unique_ptr< table > | cudf::from_arrow_host (ArrowSchema const *schema, ArrowDeviceArray const *input, cuda::stream_ref stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
Create cudf::table from given ArrowDeviceArray input. More... | |
| std::unique_ptr< table > | cudf::from_arrow_stream (ArrowArrayStream *input, cuda::stream_ref stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
Create cudf::table from given ArrowArrayStream input. More... | |
| std::unique_ptr< column > | cudf::from_arrow_stream_column (ArrowArrayStream *input, cuda::stream_ref stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
Create cudf::column from given ArrowArrayStream input. More... | |
| std::unique_ptr< column > | cudf::from_arrow_host_column (ArrowSchema const *schema, ArrowDeviceArray const *input, cuda::stream_ref stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
Create cudf::column from given ArrowDeviceArray input. More... | |
| unique_table_view_t | cudf::from_arrow_device (ArrowSchema const *schema, ArrowDeviceArray const *input, cuda::stream_ref stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
Create cudf::table_view from given ArrowDeviceArray and ArrowSchema More... | |
| unique_column_view_t | cudf::from_arrow_device_column (ArrowSchema const *schema, ArrowDeviceArray const *input, cuda::stream_ref stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
Create cudf::column_view from given ArrowDeviceArray and ArrowSchema More... | |
APIs for converting between cudf tables/columns and DLPack tensors or Apache Arrow arrays.
Definition in file interop.hpp.
| cudf::column_metadata cudf::interop::get_column_metadata | ( | cudf::column_view const & | input | ) |
Helper function to generate empty column metadata (column with no name) for arrow conversion.
This function is helpful for internal conversions between host and device data using existing arrow functions. It is also convenient for external usage of the libcudf Arrow APIs to produce the canonical mapping from cudf column names to Arrow column names (i.e. empty names with appropriate nesting).
| input | The column to generate metadata for |
| std::vector<cudf::column_metadata> cudf::interop::get_table_metadata | ( | cudf::table_view const & | input | ) |
Helper function to generate empty table metadata (all columns with no names) for arrow conversion.
This function is helpful for internal conversions between host and device data using existing arrow functions. It is also convenient for external usage of the libcudf Arrow APIs to produce the canonical mapping from cudf column names to Arrow column names (i.e. empty names with appropriate nesting).
| input | The table to generate metadata for |