Jetson TK1
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[FrontPage]]
|SoC|NVIDIA Tegra K1|
|CPU|Arm Cortex A15 Quad core 2.3GHz|
|GPU|CUDA capable 192 core|
|Memory|2GB|
|Storage|16GB eMMC|
#contents
[[Arm]]
*スペック [#x5bd7e55]
-CPU:Cortex-A15
-cpuinfo
$ cat /proc/cpuinfo
processor : 0
model name : ARMv7 Processor rev 3 (v7l)
Features : swp half thumb fastmult vfp edsp neon ...
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x3
CPU part : 0xc0f
CPU revision : 3
processor : 1
model name : ARMv7 Processor rev 3 (v7l)
Features : swp half thumb fastmult vfp edsp neon ...
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x3
CPU part : 0xc0f
CPU revision : 3
processor : 2
model name : ARMv7 Processor rev 3 (v7l)
Features : swp half thumb fastmult vfp edsp neon ...
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x3
CPU part : 0xc0f
CPU revision : 3
processor : 3
model name : ARMv7 Processor rev 3 (v7l)
Features : swp half thumb fastmult vfp edsp neon ...
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x3
CPU part : 0xc0f
CPU revision : 3
Hardware : jetson-tk1
Revision : 0000
Serial : 0177000003450000
Processor : ARMv7 Processor rev 3 (v7l)
-auxv
0x00000010 0x000fb0d7
0x00000006 0x00001000
0x00000011 0x00000064
0x00000003 0x00008034
0x00000004 0x00000020
0x00000005 0x00000009
0x00000007 0xb6fa7000
0x00000008 0x00000000
0x00000009 0x00008d0d
0x0000000b 0x000003e8
0x0000000c 0x000003e8
0x0000000d 0x000003e8
0x0000000e 0x000003e8
0x00000017 0x00000000
0x00000019 0xbedbb7fe
0x0000001f 0xbedbbfed
0x0000000f 0xbedbb80e
0x00000000 0x00000000
-cpufreq
$ sudo cat /sys/devices/system/cpu/cpu*/cpufreq/cpuinfo_...
2320500
2320500
2320500
2320500
-OS
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.5 LTS
Release: 14.04
Codename: trusty
-kernel
$ uname -a
Linux tegra-ubuntu 3.10.40-ged4f697 #1 SMP PREEMPT Mon D...
-gcc
$ gcc --version
gcc (Ubuntu/Linaro 4.8.4-2ubuntu1~14.04.3) 4.8.4
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying condit...
warranty; not even for MERCHANTABILITY or FITNESS FOR A ...
*Jetson の'grinch' L4T 21.3.4を入れる [#aa8b75d9]
-Jetson TK1のLinuxは結構ボロボロ
-USB 機器の認識や、画面が勝手にスリープに入ったりと、細か...
-nvidiaのフォーラムでも話題になっており、[[有志が作ったgr...
-というわけで、Jetsonの焼き直しから
-事前準備
--Jetsonを焼きなおすので、Jetsonをつなげる別のLinuxマシン...
--ダウンロードするイメージ、作業容量を合わせると、7GBぐら...
--また、外部ディスク(USBメモリなど)だとowner権限の書き換...
-イメージのダウンロード
--まずはまっ更なL4Tをダウンロードする
wget http://developer.download.nvidia.com/embedded/L4T/r...
wget http://developer.download.nvidia.com/embedded/L4T/r...
-イメージの展開
--展開した後、rootfsを展開するので、2回tarコマンドを叩く
time tar -xvf Tegra124_Linux_R21.3.0_armhf.tbz2
(中略)
real 0m38.337s
user 0m19.935s
sys 0m1.170s
cd Linux_for_Tegra/rootfs
sudo tar xpf ../../Tegra_Linux_Sample-Root-Filesystem_R2...
cd ..
sudo ./apply_binaries.sh
-Jetson TK1の接続
--Jetson TK1 のmicroUSBを、ホストマシンのUSBポートに接続...
--Jetson TK1 のリカバリーボタンを押しながら、リセットボタ...
--これでホストマシンに /dev/mmcblk0p1 として見える(はず)
--VMWareでも焼き込める。名前を確認したら'NVidia APX'とい...
-Jetson TK1の焼きこみ
--コマンドで焼きこむ
sudo ./flash.sh jetson-tk1 mmcblk0p1
--だいたい20分ぐらいかかった
-Jetson 側で起動イメージの差し替え
--ここからはJetson TK1にログインして作業する
--ここまでは通常のLinuxの入れ替え作業と同じ。
--ちなみに、初期状態では ユーザ名 ubuntu パスワード ubunt...
--Grinch Kernelをダウンロードする
wget http://www.jarzebski.pl/files/jetsontk1/grinch-21.3...
wget http://www.jarzebski.pl/files/jetsontk1/grinch-21.3...
wget http://www.jarzebski.pl/files/jetsontk1/grinch-21.3...
--ドライバ群を展開する
sudo tar -C /lib/modules -vxjf jetson-tk1-grinch-21.3.4-...
sudo tar -C /lib -vxjf jetson-tk1-grinch-21.3.4-firmware...
--起動イメージを差し替える
sudo cp zImage /boot/zImage
--これで再起動すれば、良い
--これで入れ替えたところ、手持ちのUSB Wifi アダプタ(NEC ...
--あと、USBキーボードの接続が頻繁に切断されていたのが、全...
--2016年2月25日現在、Jetson TK1用のL4Tは[[21.4までリリー...
--21.4に無理やり入れたら動くかも知れないが、試してないの...
-その他諸々初期設定
--universe をrepositoryに入れて、もろもろアップデートする
sudo apt-add-repository universe
'universe' distribution component enabled for all sources.
sudo apt-get update
sudo apt-get upgrade
--何故かc++が無いので、g++をインストールする
time sudo apt-get install g++
--それからCUDA 6.5のインストール
--L4TにはCUDAがデフォルトで入ってると聞いていたが、何故か...
--ちなみに調べてみると、
--CUDA 6.5 までは [[Arm のサポートがある>https://develope...
--CUDA 7.0 から[[なくなっており>https://developer.nvidia....
--さらにJetson X1にはL4T [[R23.1>https://developer.nvidia...
--http://elinux.org/Jetson/Installing_CUDA の手順を参考に...
--CUDAのリポジトリを追加[[ここ>https://developer.nvidia.c...
--その後にapt-getでインストール
time wget http://developer.download.nvidia.com/embedded/...
(中略)
real 1m36.382s
user 0m0.625s
sys 0m12.099s
sudo dpkg -i cuda-repo-l4t-r21.3-6-5-prod_6.5-42_armhf.deb
(中略)
sudo apt-get update
(中略)
time sudo apt-get install cuda-toolkit-6-5
(中略)
real 1m50.897s
user 0m52.091s
sys 0m33.918s
--これでCUDA6.5 とまでがインストールできた。
--あとはGPUを使える様に、自身をvideoグループに追加しておく
sudo usermod -a -G video $USER
--あとはPATHを通しておく
echo "export PATH=/usr/local/cuda/bin:$PATH" >> ~/.bashrc
echo "export LD_LIBRARY_PATH=/usr/local/cuda/lib:$LD_LIB...
source ~/.bashrc
--インストールが終われば、nvccのバージョンを確認できるはず
nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2014 NVIDIA Corporation
Built on Fri_Dec_12_11:12:07_CST_2014
Cuda compilation tools, release 6.5, V6.5.35
-gtk 2.0 をインストールする
time sudo apt-get -y install libgtk2.0-dev
real 1m19.477s
user 0m10.490s
sys 0m15.887s
-Time zoneが日本になってないので、日本にする
--GUIの時計のアイコンからTime & Date settings でタイムゾ...
-ctrlキーとcapsキーの入れ替え
--[[UbuntuTips/Desktop/HowToSetCapsLockAsCtrl - Ubuntu Ja...
--dconfコマンドで変換する
*Jetson TK1 spec [#o80127cd]
-Tegra K1 SOC
--Kepler GPU with 192 CUDA cores
--4-Plus-1 quad-core Arm Cortex A15 CPU
-2 GB x16 memory with 64 bit width
-16 GB 4.51 eMMC memory
-1 Half mini-PCIE slot
-1 Full size SD/MMC connector
-1 Full-size HDMI port
-1 USB 2.0 port, micro AB
-1 USB 3.0 port, A
-1 RS232 serial port
-1 ALC5639 Realtek Audio codec with Mic in and Line out
-1 RTL8111GS Realtek GigE LAN
-1 SATA data port
-SPI 4MByte boot flash
*JetsonTK1でOpenCV [#b5bd528f]
-[[Jetson TK1 で OpenCV を使って顔認識 - Rabbit Note>http...
-[[Jetson TK1 Development Pack>https://developer.nvidia.c...
*Jetson参考資料 [#gdc63cd8]
-[[Buy Jetson TK1 DevKit>https://developer.nvidia.com/jet...
*リカバリー [#c46356c4]
-以下の記述は 21.2 を焼き直した時の記述
-grinch版は21.3、まっさらの最新版は21.4 (2016-02-25現在)...
-何か悪い子をしたのか、起動時にグラフィカルな画面がでずに...
-なのでリカバリに挑戦
**全体 [#b186d11a]
-Tegra124 R21 での話
-ホストPCはUbuntu12.04(64bit)を使用
**必要なもの [#zb5e044a]
-まずは、
--Tegra124_Linux_R21.2.0_armhf.tbz2
--Tegra_Linux_Sample-Root-Filesystem_R21.2.0_armhf.tbz2
-の2つを[[公式サイト>https://developer.nvidia.com/linux-t...
-ファイル名がすごい似ているので注意。
wget http://developer.download.nvidia.com/mobile/tegra/l...
wget http://developer.download.nvidia.com/mobile/tegra/l...
**解凍とイメージ作成 [#n8bdbb88]
-解凍する。必ずsudoで行うこと
sudo tar xpf Tegra124_Linux_R21.2.0_armhf.tbz2
cd Linux_for_Tegra/rootfs/
sudo tar xpf ../../Tegra_Linux_Sample-Root-Filesystem_R2...
cd ../
sudo ./apply_binaries.sh
-これでイメージが作成される
**Jetsonの接続 [#y457b14b]
-ここで、JetsonをリカバリーモードでPCに接続する
-JetsonとホストPCをUSBケーブルで接続する
-リカバリーボタンを長押しする
-リセットをかける
-リカバリーボタンを離す
-これでホストPCにデバイスとして認識される
-Virtual Machineを使ったので、必ずゲストPCに接続する(ホス...
**焼きこむ [#je5f9cc7]
-最後に、flash.shを使って焼きこむ
sudo ./flash.sh jetson-tk1 mmcblk0p1
-このコマンドラインを変えることで、eMMCのサイズを変更でき...
-焼きこみには1241秒かかった。
-quick start guide には less than 10minutes と書いてあっ...
**参考 [#r342ab06]
-http://developer.download.nvidia.com/mobile/tegra/l4t/r2...
-https://developer.nvidia.com/linux-tegra-rel-21
-[[tyokota's blog -various topics-: Jetson TK1がやっ...
-[[Flashing the rootfs on a NVIDIA Jetson TK1 | Cyclic Re...
*nvcc の predefined macro を調べる [#k1a8f15e]
-Jetson TK1 のnvccをチェック
#geshi(c++,number=on){{
#ifdef __arm__
volatile unsigned int _ARM__ = 0;
#else
volatile unsigned int _NON_ARM__ = 0;
#endif
#ifdef __GNUC__
volatile unsigned int _GNUC__ = 0;
#else
volatile unsigned int _NON_GNUC__ = 0;
#endif
volatile unsigned int _GNUC_NUMBER_ = __GNUC__;
volatile unsigned int _GNUC_MINOR_NUMBER_ = __GNUC_MINOR__;
}}
$ nvcc -E sample.cu | grep volatile | tail -4
volatile unsigned int _ARM__ = 0;
volatile unsigned int _GNUC__ = 0;
volatile unsigned int _GNUC_NUMBER_ = 4;
volatile unsigned int _GNUC_MINOR_NUMBER_ = 8;
$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2014 NVIDIA Corporation
Built on Fri_Dec_12_11:12:07_CST_2014
Cuda compilation tools, release 6.5, V6.5.35
$ gcc --version
gcc (Ubuntu/Linaro 4.8.4-2ubuntu1~14.04.3) 4.8.4
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying condit...
warranty; not even for MERCHANTABILITY or FITNESS FOR A ...
-nvccのバックエンドでgccがcallされるっぽい。
-そのために、nvccなのに__GNUC__ マクロが predefine されて...
-gcc なら gcc -xc -dM -E /dev/null とかすればpredefineさ...
-nvcc だと、そのオプションは存在しない。適当なファイルを ...
-その他のマクロをチェックするためには [[stringsコマンド>h...
$ strings /usr/local/cuda/bin/nvcc | grep [-]D
-DFATBINFILE="\"
-D__CUDA_FTZ
-D__CUDA_PREC_DIV
-D__CUDA_PREC_SQRT
-DLL
-DEBUG
-D__USE_FAST_MATH__
-D__CUDACC__ -D__NVCC__ -D__CUDACC_RDC__
-D__CUDACC__ -D__NVCC__
-D__NVCC__
-D__CUDANVVM__
-D__CUDABE__
-DREGISTERLINKBINARYFILE="\"
-D__CUDA_ARCH__=200
-D__CUDA_ARCH__=210
-D__CUDA_ARCH__=300
-D__CUDA_ARCH__=320
-D__CUDA_ARCH__=350
-D__CUDA_ARCH__=370
-D__CUDA_ARCH__=500
-D__CUDA_ARCH__=520
-DCUDA_DOUBLE_MATH_FUNCTIONS
-DCUDA_DOUBLE_MATH_FUNCTIONS
-DCUDA_DOUBLE_MATH_FUNCTIONS
-DCUDA_DOUBLE_MATH_FUNCTIONS
終了行:
[[FrontPage]]
|SoC|NVIDIA Tegra K1|
|CPU|Arm Cortex A15 Quad core 2.3GHz|
|GPU|CUDA capable 192 core|
|Memory|2GB|
|Storage|16GB eMMC|
#contents
[[Arm]]
*スペック [#x5bd7e55]
-CPU:Cortex-A15
-cpuinfo
$ cat /proc/cpuinfo
processor : 0
model name : ARMv7 Processor rev 3 (v7l)
Features : swp half thumb fastmult vfp edsp neon ...
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x3
CPU part : 0xc0f
CPU revision : 3
processor : 1
model name : ARMv7 Processor rev 3 (v7l)
Features : swp half thumb fastmult vfp edsp neon ...
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x3
CPU part : 0xc0f
CPU revision : 3
processor : 2
model name : ARMv7 Processor rev 3 (v7l)
Features : swp half thumb fastmult vfp edsp neon ...
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x3
CPU part : 0xc0f
CPU revision : 3
processor : 3
model name : ARMv7 Processor rev 3 (v7l)
Features : swp half thumb fastmult vfp edsp neon ...
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x3
CPU part : 0xc0f
CPU revision : 3
Hardware : jetson-tk1
Revision : 0000
Serial : 0177000003450000
Processor : ARMv7 Processor rev 3 (v7l)
-auxv
0x00000010 0x000fb0d7
0x00000006 0x00001000
0x00000011 0x00000064
0x00000003 0x00008034
0x00000004 0x00000020
0x00000005 0x00000009
0x00000007 0xb6fa7000
0x00000008 0x00000000
0x00000009 0x00008d0d
0x0000000b 0x000003e8
0x0000000c 0x000003e8
0x0000000d 0x000003e8
0x0000000e 0x000003e8
0x00000017 0x00000000
0x00000019 0xbedbb7fe
0x0000001f 0xbedbbfed
0x0000000f 0xbedbb80e
0x00000000 0x00000000
-cpufreq
$ sudo cat /sys/devices/system/cpu/cpu*/cpufreq/cpuinfo_...
2320500
2320500
2320500
2320500
-OS
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.5 LTS
Release: 14.04
Codename: trusty
-kernel
$ uname -a
Linux tegra-ubuntu 3.10.40-ged4f697 #1 SMP PREEMPT Mon D...
-gcc
$ gcc --version
gcc (Ubuntu/Linaro 4.8.4-2ubuntu1~14.04.3) 4.8.4
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying condit...
warranty; not even for MERCHANTABILITY or FITNESS FOR A ...
*Jetson の'grinch' L4T 21.3.4を入れる [#aa8b75d9]
-Jetson TK1のLinuxは結構ボロボロ
-USB 機器の認識や、画面が勝手にスリープに入ったりと、細か...
-nvidiaのフォーラムでも話題になっており、[[有志が作ったgr...
-というわけで、Jetsonの焼き直しから
-事前準備
--Jetsonを焼きなおすので、Jetsonをつなげる別のLinuxマシン...
--ダウンロードするイメージ、作業容量を合わせると、7GBぐら...
--また、外部ディスク(USBメモリなど)だとowner権限の書き換...
-イメージのダウンロード
--まずはまっ更なL4Tをダウンロードする
wget http://developer.download.nvidia.com/embedded/L4T/r...
wget http://developer.download.nvidia.com/embedded/L4T/r...
-イメージの展開
--展開した後、rootfsを展開するので、2回tarコマンドを叩く
time tar -xvf Tegra124_Linux_R21.3.0_armhf.tbz2
(中略)
real 0m38.337s
user 0m19.935s
sys 0m1.170s
cd Linux_for_Tegra/rootfs
sudo tar xpf ../../Tegra_Linux_Sample-Root-Filesystem_R2...
cd ..
sudo ./apply_binaries.sh
-Jetson TK1の接続
--Jetson TK1 のmicroUSBを、ホストマシンのUSBポートに接続...
--Jetson TK1 のリカバリーボタンを押しながら、リセットボタ...
--これでホストマシンに /dev/mmcblk0p1 として見える(はず)
--VMWareでも焼き込める。名前を確認したら'NVidia APX'とい...
-Jetson TK1の焼きこみ
--コマンドで焼きこむ
sudo ./flash.sh jetson-tk1 mmcblk0p1
--だいたい20分ぐらいかかった
-Jetson 側で起動イメージの差し替え
--ここからはJetson TK1にログインして作業する
--ここまでは通常のLinuxの入れ替え作業と同じ。
--ちなみに、初期状態では ユーザ名 ubuntu パスワード ubunt...
--Grinch Kernelをダウンロードする
wget http://www.jarzebski.pl/files/jetsontk1/grinch-21.3...
wget http://www.jarzebski.pl/files/jetsontk1/grinch-21.3...
wget http://www.jarzebski.pl/files/jetsontk1/grinch-21.3...
--ドライバ群を展開する
sudo tar -C /lib/modules -vxjf jetson-tk1-grinch-21.3.4-...
sudo tar -C /lib -vxjf jetson-tk1-grinch-21.3.4-firmware...
--起動イメージを差し替える
sudo cp zImage /boot/zImage
--これで再起動すれば、良い
--これで入れ替えたところ、手持ちのUSB Wifi アダプタ(NEC ...
--あと、USBキーボードの接続が頻繁に切断されていたのが、全...
--2016年2月25日現在、Jetson TK1用のL4Tは[[21.4までリリー...
--21.4に無理やり入れたら動くかも知れないが、試してないの...
-その他諸々初期設定
--universe をrepositoryに入れて、もろもろアップデートする
sudo apt-add-repository universe
'universe' distribution component enabled for all sources.
sudo apt-get update
sudo apt-get upgrade
--何故かc++が無いので、g++をインストールする
time sudo apt-get install g++
--それからCUDA 6.5のインストール
--L4TにはCUDAがデフォルトで入ってると聞いていたが、何故か...
--ちなみに調べてみると、
--CUDA 6.5 までは [[Arm のサポートがある>https://develope...
--CUDA 7.0 から[[なくなっており>https://developer.nvidia....
--さらにJetson X1にはL4T [[R23.1>https://developer.nvidia...
--http://elinux.org/Jetson/Installing_CUDA の手順を参考に...
--CUDAのリポジトリを追加[[ここ>https://developer.nvidia.c...
--その後にapt-getでインストール
time wget http://developer.download.nvidia.com/embedded/...
(中略)
real 1m36.382s
user 0m0.625s
sys 0m12.099s
sudo dpkg -i cuda-repo-l4t-r21.3-6-5-prod_6.5-42_armhf.deb
(中略)
sudo apt-get update
(中略)
time sudo apt-get install cuda-toolkit-6-5
(中略)
real 1m50.897s
user 0m52.091s
sys 0m33.918s
--これでCUDA6.5 とまでがインストールできた。
--あとはGPUを使える様に、自身をvideoグループに追加しておく
sudo usermod -a -G video $USER
--あとはPATHを通しておく
echo "export PATH=/usr/local/cuda/bin:$PATH" >> ~/.bashrc
echo "export LD_LIBRARY_PATH=/usr/local/cuda/lib:$LD_LIB...
source ~/.bashrc
--インストールが終われば、nvccのバージョンを確認できるはず
nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2014 NVIDIA Corporation
Built on Fri_Dec_12_11:12:07_CST_2014
Cuda compilation tools, release 6.5, V6.5.35
-gtk 2.0 をインストールする
time sudo apt-get -y install libgtk2.0-dev
real 1m19.477s
user 0m10.490s
sys 0m15.887s
-Time zoneが日本になってないので、日本にする
--GUIの時計のアイコンからTime & Date settings でタイムゾ...
-ctrlキーとcapsキーの入れ替え
--[[UbuntuTips/Desktop/HowToSetCapsLockAsCtrl - Ubuntu Ja...
--dconfコマンドで変換する
*Jetson TK1 spec [#o80127cd]
-Tegra K1 SOC
--Kepler GPU with 192 CUDA cores
--4-Plus-1 quad-core Arm Cortex A15 CPU
-2 GB x16 memory with 64 bit width
-16 GB 4.51 eMMC memory
-1 Half mini-PCIE slot
-1 Full size SD/MMC connector
-1 Full-size HDMI port
-1 USB 2.0 port, micro AB
-1 USB 3.0 port, A
-1 RS232 serial port
-1 ALC5639 Realtek Audio codec with Mic in and Line out
-1 RTL8111GS Realtek GigE LAN
-1 SATA data port
-SPI 4MByte boot flash
*JetsonTK1でOpenCV [#b5bd528f]
-[[Jetson TK1 で OpenCV を使って顔認識 - Rabbit Note>http...
-[[Jetson TK1 Development Pack>https://developer.nvidia.c...
*Jetson参考資料 [#gdc63cd8]
-[[Buy Jetson TK1 DevKit>https://developer.nvidia.com/jet...
*リカバリー [#c46356c4]
-以下の記述は 21.2 を焼き直した時の記述
-grinch版は21.3、まっさらの最新版は21.4 (2016-02-25現在)...
-何か悪い子をしたのか、起動時にグラフィカルな画面がでずに...
-なのでリカバリに挑戦
**全体 [#b186d11a]
-Tegra124 R21 での話
-ホストPCはUbuntu12.04(64bit)を使用
**必要なもの [#zb5e044a]
-まずは、
--Tegra124_Linux_R21.2.0_armhf.tbz2
--Tegra_Linux_Sample-Root-Filesystem_R21.2.0_armhf.tbz2
-の2つを[[公式サイト>https://developer.nvidia.com/linux-t...
-ファイル名がすごい似ているので注意。
wget http://developer.download.nvidia.com/mobile/tegra/l...
wget http://developer.download.nvidia.com/mobile/tegra/l...
**解凍とイメージ作成 [#n8bdbb88]
-解凍する。必ずsudoで行うこと
sudo tar xpf Tegra124_Linux_R21.2.0_armhf.tbz2
cd Linux_for_Tegra/rootfs/
sudo tar xpf ../../Tegra_Linux_Sample-Root-Filesystem_R2...
cd ../
sudo ./apply_binaries.sh
-これでイメージが作成される
**Jetsonの接続 [#y457b14b]
-ここで、JetsonをリカバリーモードでPCに接続する
-JetsonとホストPCをUSBケーブルで接続する
-リカバリーボタンを長押しする
-リセットをかける
-リカバリーボタンを離す
-これでホストPCにデバイスとして認識される
-Virtual Machineを使ったので、必ずゲストPCに接続する(ホス...
**焼きこむ [#je5f9cc7]
-最後に、flash.shを使って焼きこむ
sudo ./flash.sh jetson-tk1 mmcblk0p1
-このコマンドラインを変えることで、eMMCのサイズを変更でき...
-焼きこみには1241秒かかった。
-quick start guide には less than 10minutes と書いてあっ...
**参考 [#r342ab06]
-http://developer.download.nvidia.com/mobile/tegra/l4t/r2...
-https://developer.nvidia.com/linux-tegra-rel-21
-[[tyokota's blog -various topics-: Jetson TK1がやっ...
-[[Flashing the rootfs on a NVIDIA Jetson TK1 | Cyclic Re...
*nvcc の predefined macro を調べる [#k1a8f15e]
-Jetson TK1 のnvccをチェック
#geshi(c++,number=on){{
#ifdef __arm__
volatile unsigned int _ARM__ = 0;
#else
volatile unsigned int _NON_ARM__ = 0;
#endif
#ifdef __GNUC__
volatile unsigned int _GNUC__ = 0;
#else
volatile unsigned int _NON_GNUC__ = 0;
#endif
volatile unsigned int _GNUC_NUMBER_ = __GNUC__;
volatile unsigned int _GNUC_MINOR_NUMBER_ = __GNUC_MINOR__;
}}
$ nvcc -E sample.cu | grep volatile | tail -4
volatile unsigned int _ARM__ = 0;
volatile unsigned int _GNUC__ = 0;
volatile unsigned int _GNUC_NUMBER_ = 4;
volatile unsigned int _GNUC_MINOR_NUMBER_ = 8;
$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2014 NVIDIA Corporation
Built on Fri_Dec_12_11:12:07_CST_2014
Cuda compilation tools, release 6.5, V6.5.35
$ gcc --version
gcc (Ubuntu/Linaro 4.8.4-2ubuntu1~14.04.3) 4.8.4
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying condit...
warranty; not even for MERCHANTABILITY or FITNESS FOR A ...
-nvccのバックエンドでgccがcallされるっぽい。
-そのために、nvccなのに__GNUC__ マクロが predefine されて...
-gcc なら gcc -xc -dM -E /dev/null とかすればpredefineさ...
-nvcc だと、そのオプションは存在しない。適当なファイルを ...
-その他のマクロをチェックするためには [[stringsコマンド>h...
$ strings /usr/local/cuda/bin/nvcc | grep [-]D
-DFATBINFILE="\"
-D__CUDA_FTZ
-D__CUDA_PREC_DIV
-D__CUDA_PREC_SQRT
-DLL
-DEBUG
-D__USE_FAST_MATH__
-D__CUDACC__ -D__NVCC__ -D__CUDACC_RDC__
-D__CUDACC__ -D__NVCC__
-D__NVCC__
-D__CUDANVVM__
-D__CUDABE__
-DREGISTERLINKBINARYFILE="\"
-D__CUDA_ARCH__=200
-D__CUDA_ARCH__=210
-D__CUDA_ARCH__=300
-D__CUDA_ARCH__=320
-D__CUDA_ARCH__=350
-D__CUDA_ARCH__=370
-D__CUDA_ARCH__=500
-D__CUDA_ARCH__=520
-DCUDA_DOUBLE_MATH_FUNCTIONS
-DCUDA_DOUBLE_MATH_FUNCTIONS
-DCUDA_DOUBLE_MATH_FUNCTIONS
-DCUDA_DOUBLE_MATH_FUNCTIONS
ページ名: