问题标签 [offloading]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 使用 nvc++ OpenMP 卸载编译的 Python C 扩展无法在 GPU 上运行
我有一个 C/C++ 中的 Python 扩展,我想使用 OpenMP 卸载。使用 NVIDIA 的 nvc++,编译和在 python 中使用/运行扩展一样有效。问题在于它默认不使用 GPU。设置 $OMP_OFFLOAD_TARGET=MANDATORY 会导致以下错误:
在纯 C/C++ 版本中使用相同的 OpenMP 指令效果很好。
顺便说一句,编译期间的输出看起来很有希望:
openmp - OpenMP 目标任务缩减
我正在使用 OpenMP 目标卸载将一些嵌套循环卸载到 gpu。我正在使用nowait
它来异步调整它。这使它成为一项任务。使用相同的输入值,结果与未卸载时的结果不同(例如,cpu: sum=0.99, offloading sum=0.5)。删除该nowait
子句时,它工作得很好。所以我认为问题在于它变成了一项 OpenMP 任务,而我正在努力让它正确。