列设备视图类定义。 更多...
#include <cudf/column/column_view.hpp>
#include <cudf/detail/offsets_iterator.cuh>
#include <cudf/detail/utilities/alignment.hpp>
#include <cudf/fixed_point/fixed_point.hpp>
#include <cudf/lists/list_view.hpp>
#include <cudf/strings/string_view.cuh>
#include <cudf/strings/strings_column_view.hpp>
#include <cudf/structs/struct_view.hpp>
#include <cudf/types.hpp>
#include <cudf/utilities/bit.hpp>
#include <cudf/utilities/default_stream.hpp>
#include <cudf/utilities/span.hpp>
#include <cudf/utilities/traits.hpp>
#include <cudf/utilities/type_dispatcher.hpp>
#include <rmm/cuda_stream_view.hpp>
#include <cuda/std/optional>
#include <cuda/std/type_traits>
#include <thrust/iterator/counting_iterator.h>
#include <thrust/iterator/transform_iterator.h>
#include <thrust/pair.h>
#include <algorithm>
#include <functional>
#include <type_traits>
类 | |
struct | cudf::nullate |
指示在编译时或运行时是否存在 null 值。 更多... | |
struct | cudf::nullate::YES |
struct | cudf::nullate::NO |
struct | cudf::nullate::DYNAMIC |
nullate::DYNAMIC 将 nullability 的确定从编译时推迟到运行时。调用代码负责在运行时使用构造函数参数指定是否存在 null 值。 更多... | |
class | cudf::detail::column_device_view_base |
一个不可变的、非拥有的设备数据视图,作为元素列,该视图可简单复制并可在 CUDA 设备代码中使用。 更多... | |
class | cudf::column_device_view |
一个不可变的、非拥有的设备数据视图,作为元素列,该视图可简单复制并可在 CUDA 设备代码中使用。 更多... | |
class | cudf::mutable_column_device_view |
一个可变的、非拥有的设备数据视图,作为元素列,该视图可简单复制并可在 CUDA 设备代码中使用。 更多... | |
struct | cudf::detail::value_accessor< T > |
没有 null 位掩码的列的值访问器 更多... | |
struct | cudf::detail::optional_accessor< T, Nullate > |
列的可选访问器 更多... | |
struct | cudf::detail::pair_accessor< T, has_nulls > |
带/不带 null 位掩码的列的对访问器 更多... | |
struct | cudf::detail::pair_rep_accessor< T, has_nulls > |
带/不带 null 位掩码的列的对访问器 更多... | |
struct | cudf::detail::mutable_value_accessor< T > |
没有 null 位掩码的列的可变值访问器。 更多... | |
命名空间 | |
cudf | |
cuDF 接口 | |
函数 | |
template<typename ColumnDeviceView , typename ColumnViewIterator > | |
ColumnDeviceView * | cudf::detail::child_columns_to_device_array (ColumnViewIterator child_begin, ColumnViewIterator child_end, void *h_ptr, void *d_ptr) |
一个辅助函数,供 column_device_view 和 mutable_column_device_view 构造函数用于从视图构建 device_view。 更多... | |
列设备视图类定义。
定义于文件 column_device_view.cuh 中。
ColumnDeviceView* cudf::detail::child_columns_to_device_array | ( | ColumnViewIterator | child_begin, |
ColumnViewIterator | child_end, | ||
void * | h_ptr, | ||
void * | d_ptr | ||
) |
一个辅助函数,供 column_device_view 和 mutable_column_device_view 构造函数用于从视图构建 device_view。
它用于在设备内存中构建子列数组。由于子列也可以有子列,因此这里使用递归来构建平坦的设备缓冲区以包含所有子元素,并适当地设置成员指针。
这是通过首先将所有子元素和孙子元素布置到一个平坦的主机缓冲区中实现的,同时也保留一个正在运行的设备指针,用于设置 d_children 数组结果时使用。
此函数提供了用于插入其子元素(以及通过递归插入其孙子元素)的主机指针,以及用于计算 d_children 成员的最终设备指针时使用的设备指针。
ColumnView | 是 column_view 或 mutable_column_view |
ColumnDeviceView | 是 column_device_view 或 mutable_column_device_view |
child_begin | 指向要构建 device view 的子列起始位置的迭代器 |
child_end | 指向要构建 device view 的子列结束位置的迭代器 |
h_ptr | 用于放置任何子数据的宿主内存 |
d_ptr | 用于计算任何子数据的 d_children 成员的设备指针 |
定义于文件 column_device_view.cuh 的 1503 行。