1. 程式人生 > >cuda+opencv的配置以及細節問題

cuda+opencv的配置以及細節問題

本文轉載部分已經獲得作者的許可

以上網址是配置的具體方法,不過在下面我還要新增一些常見問題以及注意事項。

顯示卡作為電腦硬體的重要的一部分,其升級和換代的速度特別快,就論其框架來說,常見的一般有特斯拉、費米、開普勒以及麥克斯韋架構,這些在本文中並不是主要內容,我們在這裡說的是其中一個引數Compute Capability詳情可見一下網址

下面我們以臺式電腦gtx950顯示卡為例來說明這個引數在配置過程中的重要性。


我們看到臺式電腦gtx950m的Compute Capability是5.2,所以在cmake編譯的過程中,我們一般會看到這個


是不是特別奇怪,居然沒有5.2疑問

這個時候我們就要這樣修改,把5.2加上去


這樣我們再繼續編譯。

為什麼要這樣做呢?

下面是我的個人觀點可能不準確

這是因為GPUS一般包括許多不同的機器碼和中間碼,當你編譯的opencv-cuda庫中不包括你的顯示卡所對應的架構和彙編指令時,這是你的GPUS會選擇自己去重新編譯,這樣大量的時間會被白白的浪費,於是你的程式無論是第一次還是多次執行速度都是特別慢。

另外,如果你的cmake編譯opencv庫成功但在vs編譯出錯的話,那麼你肯能需要換一個版本的opencv庫了,這可能是你的cuda與opencv不相容。