CuPy 特定功能#

CuPy 特定的函数被放置在 cupyx 命名空间下。

cupyx.rsqrt

返回倒数平方根。

cupyx.scatter_add(a, slices, value)

将给定的值添加到数组的指定元素中。

cupyx.scatter_max(a, slices, value)

将由索引指定的元素的最大值存储到一个数组中。

cupyx.scatter_min(a, slices, value)

将由索引指定的元素的最小值存储到一个数组中。

cupyx.empty_pinned(shape[, dtype, order])

返回一个具有给定形状和数据类型的新 NumPy 数组,该数组未初始化。

cupyx.empty_like_pinned(a[, dtype, order, ...])

返回一个新的、未初始化的 NumPy 数组,其形状和数据类型与给定数组相同。

cupyx.zeros_pinned(shape[, dtype, order])

返回一个具有给定形状和数据类型的新建、零初始化的 NumPy 数组。

cupyx.zeros_like_pinned(a[, dtype, order, ...])

返回一个新的、零初始化的 NumPy 数组,其形状和数据类型与给定数组的相同。

非SciPy兼容信号API#

cupyx.signal 下的函数是从 cuSignal 移植过来的非 SciPy 兼容信号 API,这是通过 Nvidia cuSignal 团队的协助实现的。

cupyx.signal.channelize_poly(x, h, n_chans)

多相通道化将信号分成n个通道

cupyx.signal.convolve1d3o(in1, in2[, mode, ...])

将一个一维数组与一个三阶滤波器进行卷积。

cupyx.signal.pulse_compression(x, template)

脉冲压缩用于通过对接收信号(x)执行与传输脉冲(模板)的匹配滤波来增加距离分辨率和信噪比。

cupyx.signal.pulse_doppler(x[, window, nfft])

脉冲多普勒处理产生一个距离/多普勒数据矩阵,该矩阵表示从杂波中分离出来的移动目标数据。

cupyx.signal.cfar_alpha(pfa, N)

计算与给定虚警概率和参考单元数N相对应的alpha值。

cupyx.signal.ca_cfar(array, guard_cells, ...)

计算给定数组的单元平均恒虚警率(CA CFAR)检测器阈值并返回结果。

cupyx.signal.freq_shift(x, freq, fs)

频率偏移信号,频率为 freq,采样率为 fs

性能分析工具#

cupyx.profiler.benchmark(func[, args, ...])

用于测量CPU和GPU所花费时间的计时工具。

cupyx.profiler.time_range([message, ...])

使用 NVTX/rocTX 标记带有范围的函数调用。

cupyx.profiler.profile()

在 with 语句期间启用 CUDA 分析。

DLPack 工具#

以下是用于从DLPack张量或任何支持DLPack数据交换协议的对象创建 cupy.ndarray 的帮助函数。有关更多详细信息,请参阅 DLPack

cupy.from_dlpack(array)

符合DLPack数据交换协议的数组对象之间的零拷贝转换。

自动内核参数优化 (cupyx.optimizing)#

cupyx.optimizing.optimize(*[, key, path, ...])

优化内核启动参数的上下文管理器。