gpt4 book ai didi

kernel - 杀死 OpenCL 内核

转载 作者:行者123 更新时间:2023-12-03 18:33:01 29 4
gpt4 key购买 nike

有什么方法可以通过 OpenCL API 终止正在运行的 OpenCL 内核吗?我没有在规范中找到任何内容。

我能想出的唯一解决方案是 1) 定期检查内核中的标志,当主机希望内核停止时写入该标志,或 2) 在单独的进程中运行内核并终止整个进程。我认为这两个都不是非常优雅的解决方案,而且我不确定 #1 能否可靠地工作。

最佳答案

不可以,OpenCL API 不允许中断正在运行的内核。在某些系统上,运行超过几秒钟的内核将被驱动程序终止。

引用。对于 Windows:Timeout Detection and Recovery of GPUs through WDDM , 对于 Linux+NVidia:Using CUDA and X .

标准中的任何内容都不能保证您的选项 1 有效。几乎肯定不会。您的选项 2 会起作用,但随后您将必须与其他进程进行通信。

如评论中所建议的那样,将内核拆分为更小的内核可能是最佳选择。

关于kernel - 杀死 OpenCL 内核,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16308667/

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