Maker Faire Tokyo 2014のNVIDIAブースで Jetson TK1 の即売が行われてて、ついうっかり買ってしまったので、いろいろ弄ってみることに。仕様をみる限りだと、OSはTK1用のカスタマイズ(L4T)がされているものの、ほぼデスクトップのUbuntu14らしいので、まずはssh経由でつないでガチャガチャといじれる環境を作ってみました。
#設置
##入出力機器をつなぐ
USBとイーサネットポートがあるので、このままキーボード、マウスをつなぎ、ネットワークにつなぐことができます。ディスプレイ出力はHDMIなので、最近のならいいかもしれませんが、すこし古いディスプレイだとDVIやVGAへの変換が必要です。
これだけでちょっとした(32ビットだけど、GPUだけアンバランスに強力な)デスクトップLinux機になります。
##ネットワークの設定をする
ビルトインのイーサネットポートは最初はDHCPの設定になっています。sshでつないで作業できるようにするために、これを固定IPアドレスにします。/etc/network/interfaces を書き換えますが、直に書き換えずにシンボリックリンクでワンクッション入れることにします。
$ cd /etc/network
$ sudo mv interfaces interfaces.default
$ cat interfaces.static
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.xxx.yyy
netmask 255.255.255.0
broadcast 192.168.xxx.255
gateway 192.168.xxx.zzz
$ ln -sf interfaces.static interfaces
$
デフォルトのネームサーバも設定しておきます。
$ sudo cat /etc/resolv.conf
# nameserver 127.0.1.1
nameserver 192.168.xxx.zzz
nameserver 8.8.8.8
nameserver 8.8.4.4
$
sshdは既に動いているので、設定にこだわりがなければ特に不要です。これでいつでもsshで入れるようになりました。
# 自宅のネットワークにはリモートアクセス用にVPNを用意してるので、いつでも外から使えます:)
#(最低限の)開発環境を作る
##CUDAツールキットをインストール
Jetson TK1を使う以上CUDAはなければ、ということでCUDAツールキットをインストールします。
CUDAツールキットは、https://developer.nvidia.com/linux-tegra-rel-19 からダウンロードします。最新のCUDAツールキットは6.5ですが、JetsonのL4Tが古いR19なので、CUDAのツールキットもそれに対応したもの(CUDA 6.0 Toolkit for L4T Rel-19.2)を入手します。
$ sudo dpkg -i cuda-repo-l4t-r19.2_6.0-42_armhf.deb
$ sudo apt-get update
$ sudo apt-get install cuda-toolkit-6-0
$ ls -l /usr/local/
lrwxrwxrwx 1 root root 8 Nov 25 14:48 cuda -> cuda-6.0
drwxr-xr-x 10 root root 4096 Nov 25 14:47 cuda-6.0
$ /usr/local/cuda/bin/nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2013 NVIDIA Corporation
Built on Sat_Mar_15_02:05:29_PDT_2014
Cuda compilation tools, release 6.0, V6.0.1
$
##universalリポジトリを使えるようにする
CUDAのツールキットだけではたぶんどうにもならなくて、必要な開発ツールやライブラリが必要になると思います。というかすぐにそうなったので、必要なものをすぐインストールできるように、aptにUbuntuのuniversalリポジトリを加えておきます。
$ sudo add-apt-repository universe
$ sudo apt-get update
$
これで、だいたいの作業にとりかかるうえでのベース環境が整いました。
#L4Tが古い
既に書いているように、OS(L4T)が一世代古いです。アップグレードしたいと思いますが、Ubuntu14が動いている母艦が必要な模様。当方、MacしかないのだけどVMwareでいけるかなぁ...
アップグレード方法は同じくJetsonを衝動買いした、tnayukiさんのノートが参考になりそう。