文件 | |
文件 | interop.hpp |
函数 | |
std::unique_ptr< 表 > | cudf::from_dlpack (DLManagedTensor const *managed_tensor, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
将 DLPack DLTensor 转换为 cudf 表。 更多... | |
DLManagedTensor * | cudf::to_dlpack (表视图 const &input, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref()) |
将 cudf 表转换为 DLPack DLTensor。 更多... | |
std::unique_ptr<表> cudf::from_dlpack | ( | DLManagedTensor const * | managed_tensor, |
rmm::cuda_stream_view | stream = cudf::get_default_stream() , |
||
rmm::device_async_resource_ref | mr = cudf::get_current_device_resource_ref() |
||
) |
将 DLPack DLTensor 转换为 cudf 表。
DLTensor 的 device_type
必须是 kDLCPU
、kDLCuda
或 kDLCUDAHost
,并且 device_id
必须与当前设备匹配。ndim
必须设置为 1 或 2。dtype
必须有 1 个通道,并且 bitsize 必须与支持的 cudf::data_type
匹配。
cudf::logic_error | 如果 DLTensor 的任何字段不受支持 |
managed_tensor | 一个 1D 或 2D 列主序 (Fortran order) tensor |
stream | 用于设备内存操作和内核启动的 CUDA stream |
mr | 用于分配返回表的设备内存的设备内存资源 |
DLManagedTensor* cudf::to_dlpack | ( | 表视图 const & | input, |
rmm::cuda_stream_view | stream = cudf::get_default_stream() , |
||
rmm::device_async_resource_ref | mr = cudf::get_current_device_resource_ref() |
||
) |
将 cudf 表转换为 DLPack DLTensor。
所有列必须具有相同的数据类型,且此类型必须是数字类型。列可能可为空,但 null 计数必须为零。如果输入表为空或行数为零,结果将为 nullptr。
DLManagedTensor
的 deleter
方法来释放为 tensor 分配的内存。cudf::logic_error | 如果数据类型不相等或不是数字类型,或任何列的 null 计数非零 |
input | 要转换为 DLPack 的表 |
stream | 用于设备内存操作和内核启动的 CUDA stream |
mr | 用于分配返回的 DLPack tensor 的设备内存的设备内存资源 |