jetson nano 安装 numba
- 一、Numba是什么?
- 二、jetson nano科学安装numba
- 1.安装标准的llvm编译库
- 2.安装llvmlite
- 3. 重新编译TBB(Thread Building Blocks)
- 4.安装numba
- 三、numba的简洁安装方式(待试*)
- 参考链接
- 由于机缘,就在今年的11月,又选择了jetson系列的开发板。不同于去年冬季的jetson nx,今年是性能低一点的jetson nano,意外发现nano的‘无头模式’很好用,通过此模式,完全可以实现终端控制以及脱离显示屏连接Wifi。可以畅想一下,在户外,需要用嵌入式设备jetson nano以及在其上搭载的算法实现某种功能,在事先没有连接过或者没有网络、没有显示屏的情况下,如何实现并控制jetson nano的内核算法运行呢?‘无头模式’提供了便利,只需用USB数据线将其与PC相连,PC会出现用于双方通信的驱动器,通过Xshell/Putty连接便可以进行终端控制了;若有Wifi,可以在终端为其连接Wifi,不仅可上网、可脱离USB数据线、也可方便同一局域网下多人共享(比如使用Jupyter等)。(这里补充说明一点,当时没有在jetson nx上尝试过‘无头模式’,按理都应该支持的才对^ o ^)
- 本来以为曾经认识过jetson nx,jetson nano会简单点,的确如此。但,配环境属实又一堆错误,参考了很多踩坑经验,于是心态平和的划了好几天(不是
一、Numba是什么?
官方:Numba is an open source JIT compiler that translates a subset of Python and NumPy code into fast machine code.
其实,numba是一个加速包,可以支持Intel和AMD x86,POWER8/9,ARM CPUs,NVIDIA和AMD GPUs,Python 3.6-3.9,Windows/macOS/Linux等CPU、GPU、编程语言和操作系统。
二、jetson nano科学安装numba
1.安装标准的llvm编译库
(这里安装的9.0.1版本,可自行选择版本)
wget https://github.com/llvm/llvm-project/releases/download/llvmorg-9.0.1/llvm-9.0.1.src.tar.xz
tar -xvf llvm-9.0.1.src.tar.xz
cd llvm-9.0.1.src
mkdir llvm_build_dir
cd llvm_build_dir/
cmake ../ -DCMAKE_BUILD_TYPE=Release -DLLVM_TARGETS_TO_BUILD="ARM;X86;AArch64"
make -j4
sudo make install
cd bin/
echo "export LLVM_CONFIG=\""`pwd`"/llvm-config\"" >> ~/.bashrc
echo "alias llvm='"`pwd`"/llvm-lit'" >> ~/.bashrc
source ~/.bashrc
此过程需要等好久~~(划
2.安装llvmlite
llvmlite和llvm的版本对应关系如下(官网截取的),安装时pip3 install llvmlite==0.xx.0
:
官网上说llvmlite需要python3.7或者更高版本,不过我是python3.6,也安装成功了。
3. 重新编译TBB(Thread Building Blocks)
TBB被numba用于提升数据并行能力的库,如果不重新编译TBB,若直接pip安装numba,大概率依然会出现很多错误,所以先编译:
git clone https://github.com/wjakob/tbb.git
cd tbb/build
cmake ..
make -j
sudo make install
此过程需要等好久~~(泪
4.安装numba
这里用pip3安装就好:pip3 install numba
终端可以进入python交互试一下:import numba
,不报错即成功~
三、numba的简洁安装方式(待试*)
在查找解决方法的过程中,发现了一个简洁的安装方式,至少看上去不需要等待编译很久,有兴趣的可以尝试如下:
开启玩耍模式\ (^ o ^) /
参考链接
1.llvmlite->llvmlite
2. TBB->tbb
3. Numba->numba
4. llvm->llvm
5. Jetson Nano安装Numba->Jetson Nano安装Numba
6. 编译llvm->编译llvm
7. jetson家族依赖安装->jetson家族依赖安装