
私は、CUDA をサポートする Keplar GPU を搭載した NVidia Jetson TK1 開発ボード (ARM Cortex A15) を持っています。CUDA を使用して、OpenCV 3.0 で同じ画像処理を行いたいと思っています。
NVidida のドキュメントを読んでいると、CUDA はサポートされている Linux ディストリビューションにのみインストールできることが分かりました。問題は、付属の Ubuntu OS ではなく、Yocto プロジェクトでクロスコンパイルした軽量の組み込み OS を使用していることです。OpenCV は CUDA サポートでコンパイルおよびインストールされていますが、GPU を使用することはできません。
しかし、メーリングリストの誰かが以前にそれをやったことがあるので、それが可能であることはわかっています。ここ会話です。必要なのは、適切なバイナリを適切な場所に配置することだけです。
問題は、私のアーキテクチャ用の「nvidia のプリコンパイル済みドライバー パッケージ」をどこで入手し、どこに配置すればよいかがわからないことです。どなたか助けていただければ幸いです。
答え1
可能です。apt と dpkg があれば簡単です。私の場合は、両方とも持っていなかったので、インストールする必要がありました。apt がすでにある場合は、「CUDA のインストール」に進んでください。
CUDA バイナリを apt でインストールする必要があります。イメージに apt があることを確認するには、次の 2 つの手順を実行する必要があります。
- 画像が
IMAGE_FEATURES += "package-management"
含まれていることを確認してください。 - local.confで、
PACKAGE_CLASSES
次のように変更します。package_deb
- 追加
gnupg
しapt
てCORE_IMAGE_EXTRA_INSTALL
CUDA をインストールしています。
したがって、デバイス上の Web ブラウザーを使用して L4T 用 CUDA ツールキットの .deb ファイルをダウンロードするか、PC にダウンロードしてから、USB フラッシュ スティックまたはネットワーク経由でファイルをデバイスにコピーするだけです。(ネイティブ コンパイルではなくクロス コンパイル用であるため、Ubuntu 用ツールキットではなく、L4T 用ツールキットをダウンロードするようにしてください)。
お使いのL4Tバージョンに対応するツールキットをダウンロードする必要があります。たとえば、私はR21.4を実行しているので、ここからダウンロードできます。ここ。 の上これこのページには最新バージョンのバイナリが見つかります。
次に、L4T用に手動でダウンロードしたCUDAリポジトリメタデータをインストールします。
sudo dpkg -i cuda-repo-l4t-<version-you-downloaded>_armhf.deb
NVIDIA から OpenGL ツールキットを含む実際の CUDA ツールキットをダウンロードしてインストールします。ダウンロードされるサイズは約 15 MB です。以下の 2 番目のコマンドでは、CUDA 6.0 をダウンロードした場合は「cuda-toolkit-6-0」、CUDA 6.5 をダウンロードした場合は「cuda-toolkit-6-5」などをインストールします。
sudo apt-get update
sudo apt-get install cuda-toolkit-x-x
GPUへのアクセスを許可するには、「ビデオ」グループに自分自身を追加します
sudo usermod -a -G video $USER
32 ビット CUDA パスを .bashrc ログイン スクリプトに追加し、現在のコンソールで使用を開始します。
echo "# Add CUDA bin & library paths:" >> ~/.bashrc
echo "export PATH=/usr/local/cuda/bin:$PATH" >> ~/.bashrc
echo "export LD_LIBRARY_PATH=/usr/local/cuda/lib:$LD_LIBRARY_PATH" >> ~/.bashrc
source ~/.bashrc
最後に、CUDA ツールキットがデバイスにインストールされていることを確認します。
nvcc -V
これで完了です!