gpt4 book ai didi

c++ - OpenCL:返回 std::future 而不是使用 clFinish 进行阻塞

转载 作者:行者123 更新时间:2023-11-30 05:38:38 24 4
gpt4 key购买 nike

我是 OpenCL 的新手,但有一件事让我很烦,目前我用 clFlush 结束每个 OpenCL 函数,这是根据标准阻塞。有没有办法通过返回 std::future 或编写手写的 my::craft::future 来实现异步,只在必要时允许等待?

最佳答案

clFlush 不会阻塞,clFinish 会。“clFlush 只保证所有排队到 command_queue 的命令最终都会被提交到适当的设备。不能保证它们在 clFlush 返回后完成。” https://www.khronos.org/registry/cl/sdk/1.2/docs/man/xhtml/clFlush.html

您可以使用 clSetEventCallback 在某事完成时调用一个函数。 https://www.khronos.org/registry/cl/sdk/1.2/docs/man/xhtml/clSetEventCallback.html

关于c++ - OpenCL:返回 std::future 而不是使用 clFinish 进行阻塞,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32624283/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com