You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将NumPy数组复制到已预分配的CuPy设备数组?

将NumPy数组复制到预分配的CuPy GPU数组

直接用CuPy数组的set()方法就能实现,它支持把主机端的NumPy数组直接复制到已预分配的设备数组中,完全利用预分配内存:

import numpy as np
import cupy as cp

# 创建NumPy主机数组
np_arr = np.array([1, 2, 3, 4, 5], dtype=np.float32)

# 预分配同形状、同数据类型的CuPy设备数组
pre_allocated_cp_arr = cp.empty_like(np_arr)

# 把NumPy数组复制到预分配的GPU数组
pre_allocated_cp_arr.set(np_arr)

# 验证结果
print(pre_allocated_cp_arr)  # 输出: [1. 2. 3. 4. 5.]

注意事项

  • 必须保证NumPy数组和预分配的CuPy数组形状一致、数据类型匹配,否则会触发类型不兼容或形状不匹配的错误
  • set()方法是原地修改操作,不会额外分配新的GPU内存,完全复用你预先开辟的空间

内容的提问来源于stack exchange,提问作者stavoltafunzia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 02:27:34