用法:
DataFrame.apply_chunks(func, incols, outcols, kwargs=None, pessimistic_nulls=True, chunks=None, blkct=None, tpb=None)
使用用户提供的函数转换用户指定的块。
- df:DataFrame
源 DataFrame 。
- func:函数
将在 CUDA GPU 上执行的转换函数。
- incols: list or dict:
与函数参数匹配的输入列的名称列表。或者,将输入列名称映射到它们相应的函数参数的字典,例如 {‘col1’: ‘arg1’}。
- outcols: dict:
输出列名称及其 dtype 的字典。
- kwargs: dict:
name-value 的额外参数。这些值直接传递给函数。
- pessimistic_nulls:bool
当任何相应的输入为空时,apply_rows 输出是否应为空。如果为 False,则所有输出都将为非空,但将是对基础列数据应用 func 的结果,这可能是垃圾。
- chunks:整数或Series-like
如果它是
int
,则它是块大小。如果它是一个数组,它包含每个块开始的整数偏移量。对于任何i + 1 < chunks.size
,块 i-th 的块的跨度是data[chunks[i] : chunks[i + 1]]
;或者,data[chunks[i]:]
用于i == len(chunks) - 1
。- tpb:诠释;可选的
底层内核的threads-per-block。如果未指定(默认),则使用 Numba
.forall(...)
内置查询 CUDA 驱动程序 API 以确定最佳内核启动配置。指定 1 以模拟每个块的串行执行。这是一个很好的起点,但效率低下。它的最大可能值受可用 CUDA GPU 资源的限制。- blkct:诠释;可选的
底层内核的块数。如果未指定(默认)和
tpb
未指定(默认),则使用 Numba.forall(...)
内置查询 CUDA 驱动程序 API 以确定最佳内核启动配置。如果未指定(默认)并且指定了tpb
,则使用chunks
作为块数。
参数:
例子:
对于
tpb > 1
,func
由tpb
线程数同时执行。要访问线程 ID 和计数,请分别使用numba.cuda.threadIdx.x
和numba.cuda.blockDim.x
(参见 numba CUDA kernel documentation )。在下面的示例中,
kernel
在每个指定的块上同时调用。kernel
计算块的相应输出。通过循环
range(cuda.threadIdx.x, in1.size, cuda.blockDim.x)
范围,kernel
函数可以有效地与任何tpb
一起使用。>>> from numba import cuda >>> @cuda.jit ... def kernel(in1, in2, in3, out1): ... for i in range(cuda.threadIdx.x, in1.size, cuda.blockDim.x): ... x = in1[i] ... y = in2[i] ... z = in3[i] ... out1[i] = x * y + z
相关用法
- Python cudf.DataFrame.apply_rows用法及代码示例
- Python cudf.DataFrame.apply用法及代码示例
- Python cudf.DataFrame.append用法及代码示例
- Python cudf.DataFrame.all用法及代码示例
- Python cudf.DataFrame.add用法及代码示例
- Python cudf.DataFrame.asin用法及代码示例
- Python cudf.DataFrame.abs用法及代码示例
- Python cudf.DataFrame.atan用法及代码示例
- Python cudf.DataFrame.acos用法及代码示例
- Python cudf.DataFrame.astype用法及代码示例
- Python cudf.DataFrame.any用法及代码示例
- Python cudf.DataFrame.assign用法及代码示例
- Python cudf.DataFrame.argsort用法及代码示例
- Python cudf.DataFrame.mod用法及代码示例
- Python cudf.DataFrame.isin用法及代码示例
- Python cudf.DataFrame.rmul用法及代码示例
- Python cudf.DataFrame.exp用法及代码示例
- Python cudf.DataFrame.drop用法及代码示例
- Python cudf.DataFrame.where用法及代码示例
- Python cudf.DataFrame.median用法及代码示例
注:本文由纯净天空筛选整理自rapids.ai大神的英文原创作品 cudf.DataFrame.apply_chunks。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。