2013-08-26 30 views
0

CL_OUT_OF_RESOURCES錯誤的一個可能原因是該卡用於運行顯示器(Ref)。但是,我發現斷開顯示器後,我仍然繼續出現此錯誤,並且它一直持續到我重新啓動。有沒有可以使OpenCL資源再次可用的命令?CL_OUT_OF_RESOURCES - 外部顯示器

回答

0

CL_OUT_OF_RESOURCES是nVIDIA驅動程序的常見錯誤。並且可以由以下原因引起:

  1. 真正走出資源(罕見)
  2. 閱讀已使用的讀/所著出界內核的陣列。 (典型)
  3. 任何其他奇怪的錯誤,沒有適當的錯誤代碼。

你可以面對第二個,所以我會檢查內核。

編輯:正如你所說,它發生,直到重新啓動。也許你可以檢查你是否正確刪除了所有的OpenCL對象。事件非常棘手,容易泄漏一些OpenCL內存。

+0

我不確定這是否可能。序列更像是1)連接監視器,2)斷開監視器,3)嘗試分配內存。 所以在發生錯誤時,我的代碼甚至沒有機會泄漏內存。 – EternalTyro

+0

OpenCL的哪些功能告訴你CL_OUT_OF_RESOURCES? – DarkZeros

0

你試圖分配多少內存,卡上有多少內存?驅動顯示器的視頻卡爲某些操作留出了一定量的內存。驅動程序可能只是保留這些內存而不關心顯示是否消失,直到重新啓動。

在該說明中,可以使用devcon在Windows中重新啓動視頻驅動程序。在Linux上,你可以嘗試的

lsmod | grep nvidia 

,一旦你知道的模塊名稱,也許是

rmmod 

modprobe -r 

我不知道這是否會在OSX工作。