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

如何留存OpenCL核函数结果于设备内存,无需回传主机供其他核复用?

OpenCL设备内存复用问题求助

我的应用里包含两个OpenCL核函数:

__kernel void
set_decomposition_key(
    __global const double* values_ref,
    __global const double* decomposition_results_ref,
    __global double* decomposition_keys)
{ /* 核心逻辑,计算结果存入decomposition_keys */ }

__kernel void
decompose(
    __global const double* values,
    __global const double* decomposition_keys,
    __global double* decomposition_results)
{ /* 核心逻辑,基于输入和decomposition_keys生成结果 */ }

set_decomposition_key()只在应用启动时执行一次,计算结果会写入decomposition_keys;主核函数decompose()需要循环执行完成实时运算,它必须使用decomposition_keys中存储的第一个核函数的结果作为输入参数。

我希望让decomposition_keys直接留存于OpenCL设备内存中,无需回传至主机后再重新传递给decompose()核函数,但自行尝试多次均未成功,此前参考过相关方案也无效,恳请提供可行的解决方法。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 15:05:22