SoC | NVIDIA Tegra K1 |
CPU | Arm Cortex A15 Quad core 2.3GHz |
GPU | CUDA capable 192 core |
Memory | 2GB |
Storage | 16GB eMMC |
$ cat /proc/cpuinfo processor : 0 model name : ARMv7 Processor rev 3 (v7l) Features : swp half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt 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 vfpv3 tls vfpv4 idiva idivt 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 vfpv3 tls vfpv4 idiva idivt 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 vfpv3 tls vfpv4 idiva idivt 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)
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
$ sudo cat /sys/devices/system/cpu/cpu*/cpufreq/cpuinfo_cur_freq 2320500 2320500 2320500 2320500
$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 14.04.5 LTS Release: 14.04 Codename: trusty
$ uname -a Linux tegra-ubuntu 3.10.40-ged4f697 #1 SMP PREEMPT Mon Dec 1 14:34:46 PST 2014 armv7l armv7l armv7l GNU/Linux
$ 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 conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
wget http://developer.download.nvidia.com/embedded/L4T/r21_Release_v3.0/Tegra124_Linux_R21.3.0_armhf.tbz2 wget http://developer.download.nvidia.com/embedded/L4T/r21_Release_v3.0/Tegra_Linux_Sample-Root-Filesystem_R21.3.0_armhf.tbz2
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_R21.3.0_armhf.tbz2 cd .. sudo ./apply_binaries.sh
sudo ./flash.sh jetson-tk1 mmcblk0p1
wget http://www.jarzebski.pl/files/jetsontk1/grinch-21.3.4/zImage wget http://www.jarzebski.pl/files/jetsontk1/grinch-21.3.4/jetson-tk1-grinch-21.3.4-modules.tar.bz2 wget http://www.jarzebski.pl/files/jetsontk1/grinch-21.3.4/jetson-tk1-grinch-21.3.4-firmware.tar.bz2
sudo tar -C /lib/modules -vxjf jetson-tk1-grinch-21.3.4-modules.tar.bz2 sudo tar -C /lib -vxjf jetson-tk1-grinch-21.3.4-firmware.tar.bz2
sudo cp zImage /boot/zImage
sudo apt-add-repository universe 'universe' distribution component enabled for all sources. sudo apt-get update sudo apt-get upgrade
time sudo apt-get install g++
time wget http://developer.download.nvidia.com/embedded/L4T/r21_Release_v3.0/cuda-repo-l4t-r21.3-6-5-prod_6.5-42_armhf.deb (中略) 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
sudo usermod -a -G video $USER
echo "export PATH=/usr/local/cuda/bin:$PATH" >> ~/.bashrc echo "export LD_LIBRARY_PATH=/usr/local/cuda/lib:$LD_LIBRARY_PATH" >> ~/.bashrc source ~/.bashrc
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
time sudo apt-get -y install libgtk2.0-dev real 1m19.477s user 0m10.490s sys 0m15.887s
wget http://developer.download.nvidia.com/mobile/tegra/l4t/r21.2.0/pm375_release_armhf/Tegra124_Linux_R21.2.0_armhf.tbz2 wget http://developer.download.nvidia.com/mobile/tegra/l4t/r21.2.0/pm375_release_armhf/Tegra_Linux_Sample-Root-Filesystem_R21.2.0_armhf.tbz2
sudo tar xpf Tegra124_Linux_R21.2.0_armhf.tbz2 cd Linux_for_Tegra/rootfs/ sudo tar xpf ../../Tegra_Linux_Sample-Root-Filesystem_R21.2.0_armhf.tbz2 cd ../ sudo ./apply_binaries.sh
sudo ./flash.sh jetson-tk1 mmcblk0p1
#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 conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
$ 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