這個是我用鴻海的Banana Pi系列截至目前為止最大的挑戰! 說實話 : 我自己都不知道會不會成功
我打算拿Banana Pi安裝TensorFlow做深度學習, 不用OpenCL以及CUDA和GPU. 效能方面要是不足就計畫以MPI跑叢集運算的方式試圖改良
目前已經在Banana Pi M2+下, 用 洪宗勝 教授提供的Ubuntu 16.04 LTS映像image檔案提供的作業系統與環境, 安裝成功JDK8、Bazel 0.4.5
之後得擴充SD卡, 甚至利用On board的8G EMMC來獲得更大記憶空間, 把TensorFlow裝起來執行看看
我把安裝到Bazel 0.4.5的過程、方法, 線分享出來讓大家試試看 :
Step 1 ==> 安裝相關套件
sudo apt-get install autoconf automake libtool maven
sudo apt-get install pkg-config zip g++ zlib1g-dev unzip openjdk-8-jdk
sudo apt-get install python-pip python-numpy swig python-dev
pip install --user wheel
sudo apt-get install gcc-4.8 g++-4.8
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 100
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 100
sudo apt-get clean
Step 2 ==> 用Source build的方法建置Bazel 0.4.5 (可以任何更新的版本!)
sudo mkdir tf
cd tf
sudo wget
https://github.com/…/re…/download/0.4.5/bazel-0.4.5-dist.zip
sudo unzip -d bazel bazel-0.4.5-dist.zip
cd bazel
Step 3 ==> 修改Bazel的相關檔案 (不然編譯好像都會跳掉)
sudo nano scripts/bootstrap/compile.sh
找到 : run "${JAVAC}" -classpath "${classpath}" -sourcepath "${sourcepath}" \
-d "${output}/classes" -source "$JAVA_VERSION" -target "$JAVA_VERSION" \
-encoding UTF-8 "@${paramfile}"
換成 : run "${JAVAC}" -classpath "${classpath}" -sourcepath "${sourcepath}" \
-d "${output}/classes" -source "$JAVA_VERSION" -target "$JAVA_VERSION" \
-encoding UTF-8 "@${paramfile}" -J-Xmx500M
sudo nano tools/cpp/cc_configure.bzl
找到 : """Compute the cpu_value based on the OS name."""
新增一列 : return "arm"
Step 4 ==> 開始編譯 (會很久!!! 可能超過一兩天)
sudo ./compile.sh
Step 5 ==> 把終於編譯成功的Bazel複製到 /usr/local/bin/ 目錄中, 然後執行看看 (第一次執行Bazel也是...很久!!!)
sudo cp output/bazel /usr/local/bin/bazel
sudo bazel
James Chou
2017-04-18 12:29:48
Elena Nien
2017-04-18 14:11:31