SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

NVIDIAの組み込みスーパーコンピュータ Jetson TK1 で遊んで学ぶ CUDAプログラミング

組み込みスーパーコンピュータ「NVIDIA Jetson TK1」のセットアップとOpenCVを使った歩行者検知プログラムの実行

NVIDIAの組み込みスーパーコンピュータ Jetson TK1 で遊んで学ぶ CUDAプログラミング 第1回


開発環境のセットアップ

 続いて、Jetson TK1へ開発環境をセットアップします。ここでは、CUDA ToolkitとOpenCVライブラリをセットアップします。Jetson TK1を起動し、ターミナルを開いてください。

「libglx.so」上書き禁止の設定

 まず、sudo apt upgrade コマンドでシステムをアップグレードする際に、「libglx.so」ファイルを上書きしないようシステムを設定します。このファイルを上書きしてしまうと、GUIが利用できなくなってしまいます。

sudo apt-mark hold xserver-xorg-core

環境変数の設定

 次に、環境変数を設定します。

cd ~/
echo 'export PATH=/usr/local/cuda-6.5/bin:$PATH' | sudo tee -a /etc/bash.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda-6.5/lib:$LD_LIBRARY_PATH' | sudo tee -a /etc/bash.bashrc

 上記のコマンドを実行したら、一度ターミナルを閉じて、再度ターミナルを開いてください。設定が反映されたことは、コマンドで確認できます。

echo $PATH
echo $LD_LIBRARY_PATH

ダウンロードとインストール

 CUDA ToolkitとOpenCV For Tegraのセットアップに必要なファイルをダウンロードします。次のコマンドで「CUDA 6.5 Toolkit for L4T Rel 21.2」と「OpenCV4Tegra for L4T 21.x」をダウンロードしてください。

cd $HOME
mkdir SETUP
cd $HOME/SETUP
wget http://developer.download.nvidia.com/compute/cuda/6_5/rel/installers/cuda-repo-l4t-r21.2-6-5-prod_6.5-34_armhf.deb
wget http://developer.download.nvidia.com/embedded/OpenCV/L4T_21.2/libopencv4tegra-repo_l4t-r21_2.4.10.1_armhf.deb

 ダウンロードしたら、まずCUDA Toolkitを次のコマンドでインストールします。

sudo dpkg -i cuda-repo-l4t-r21.2-6-5-prod_6.5-34_armhf.deb
sudo apt update
sudo apt install -yV cuda-toolkit-6-5 cuda-samples-6-5
sudo usermod -aG video ubuntu

 次のコマンドを実行して、コンパイラのバージョンが表示されればインストールは成功です。

nvcc --version

 さらに次のコマンドで、OpenCV For Tegraをインストールしてください。

sudo dpkg -i libopencv4tegra-repo_l4t-r21_2.4.10.1_armhf.deb
sudo apt-add-repository universe
sudo apt update
sudo apt upgrade -yV
sudo apt install -yV libopencv4tegra libopencv4tegra-dev

 次のコマンドを実行して、ファイルが表示されればインストールは成功です。

ls /usr/lib/libopencv_*
ls /usr/include/opencv*

サンプルプログラムのセットアップ

 最後に、サンプルプログラムをセットアップします。次のコマンドでNVIDIA提供のサンプルプログラムをホームディレクトリ以下にコピーします。

cd $HOME
cuda-install-samples-6.5.sh ./
cd NVIDIA_CUDA-6.5_Samples
sudo apt install -yV openmp-bin libopenmpi-dev

 次に、サンプルプログラムをコンパイルしますが、そのままGUI上のターミナルで全サンプルプログラムのコンパイルを実行すると、たびたび操作不能になります。[Ctrl]+[Alt]+[F1]キーを押してCUI画面に移行し、CUI上でコンパイルを実行してください。[Enter]キーを押すとログインプロンプトが表示されるので、ユーザubuntu、パスワードubuntuでログインしてください。それから次のコマンドを実行し、コンパイルを行います。

cd NVIDIA_CUDA6.5_Samples
make

 make コマンドを、make > make.log 2> make.err < /dev/null & とすることで、コンパイルのログを残すことができます。

 コンパイルが完了したら、いくつかサンプルプログラムを実行できる状態になっています。[Ctrl]+[Alt]+[F7]キーを押してGUI画面に戻ってください。

 試しに1つ、サンプルプログラムを実行してみましょう。サンプルプログラムが配置されているディレクトリに移動して、deviceQuery を実行してみてください。CUDAコアの数、GPUの動作周波数、メモリの動作周波数、メモリのサイズなど、CUDAプログラミングに必要なTegra K1 chipの基本情報が表示されます。

cd $HOME/NVIDIA_CUDA-6.5_Samples/1_Utilities/deviceQuery
./deviceQuery

./deviceQuery Starting...

 CUDA Device Query (Runtime API) version (CUDART static linking)

Detected 1 CUDA Capable device(s)

Device 0: "GK20A"
  CUDA Driver Version / Runtime Version          6.5 / 6.5
  CUDA Capability Major/Minor version number:    3.2
(以下略)

次のページ
サンプル:GUIを用いたCUDAプログラム

この記事は参考になりましたか?

この記事の著者

株式会社 爆発研究所 千田哲明 / 舘山直美 / 吉田正典(カブシキガイシャバクハツケンキュウジョ)

株式会社 爆発研究所は……

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/8440 2015/03/06 20:09

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー