2013-02-19 92 views
1

我使用NVIDIA CUDA 5工具包在筆記本電腦上編譯了一個cu程序。一個非常基本的接口,只使用終端輸出。然後我繼續測試它如何在我的臺式機上運行(都安裝了Ubuntu 12.04 LTS)。部署Linux CUDA應用程序

在桌面PC我收到此錯誤信息:

錯誤而載入共享庫:libcudart.so.5.0:無法打開共享對象文件:沒有這樣的文件或目錄

好吧,我明白了,一些庫沒有安裝。但是,我是否真的需要在每臺希望我的編譯代碼運行的PC上安裝CUDA工具包?

+0

您不必安裝完整的工具包,但至少您必須安裝所需的庫。如果你只使用「標準」方法如cudamemcpy,cudamalloc ..比cudart應該足夠了。 – hubs 2013-02-19 08:51:57

回答

5

在Linux上部署CUDA運行時API的應用程序,你只需要做兩件事情:

  1. 確保有問題的機器具有CUDA兼容卡和最低驅動版本,CUDA Toolkit將您匹配用於構建應用程序(您可以在工具包的發行說明中找到有關這兩者的信息)
  2. 分發您使用可執行文件構建應用程序的運行時庫(so cudart.so)。如果您使用了工具包中的其他庫(如CUBLAS,CUFFT,CUSPARSE等),則也需要包含這些庫。 CUDA運行時庫是版本化的,您必須擁有與您正在構建的工具包相匹配的庫。您可能需要使用LD_LIBRARY_PATH環境變量來確保鏈接加載程序找到正確版本的庫。通常是一個簡單的shell腳本,作爲規範應用程序,設置LD_LIBRARY_PATH變量並運行構建的可執行文件是執行此操作的最佳方法。

如果你把這兩件事情對,它應該是正常的。

+0

@Passiday:你試過這個嗎?它有用嗎? – talonmies 2013-02-25 22:27:42