Last active
March 19, 2019 09:00
-
-
Save ontheklaud/f3a993b40fb45e45acb1f7a2507a1d2f to your computer and use it in GitHub Desktop.
TensorFlow r1.12rc2 build
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# GCC 8.2.0 build | |
# References: | |
# https://gcc.gnu.org/install/configure.html | |
# http://luiarthur.github.io/gccinstall | |
tar xzf gcc-8.2.0.tar.gz | |
cd gcc-8.2.0 | |
# edit <./contrib/download_prerequisites>, from ftp:// to http:// | |
./contrib/download_prerequisites | |
cd .. | |
mkdir objdir | |
cd objdir | |
$PWD/../gcc-8.2.0/configure --prefix=$HOME/opt/gcc-8.2.0 --enable-languages=c,c++,fortran,go,objc,obj-c++ --disable-multilib | |
make -jN | |
make install | |
# CUSTOM GCC-8.2.0 (c,c++,fortran,go,objc,obj-c++) | |
export GCC_HOME=${HOME}/opt/gcc-8.2.0 | |
export CC=${GCC_HOME}/bin/gcc | |
export CXX=${GCC_HOME}/bin/g++ | |
export FC=${GCC_HOME}/bin/gfortran | |
export CPATH=${GCC_HOME}/include | |
export PATH=${GCC_HOME}/bin:${PATH} | |
export LD_LIBRARY_PATH=${GCC_HOME}/lib:${GCC_HOME}/lib64:${LD_LIBRARY_PATH} | |
# lastgood | |
alias bazel="bazel --server_javabase=${JAVA_HOME}" | |
alias bazelcleanup="bazel clean --expunge --async;bazel sync;bazel shutdown;" | |
# also, CLEAN-UP ~/.cache/bazel/_bazel_<user>/<random_numbers> | |
# LD_LIBRARY_PATH=${GCC_HOME}/lib:${GCC_HOME}/lib64: (no matter for gcc LD only) | |
# virtualenv setup (via conda/anaconda) | |
conda create -n mklxla -c conda-forge python=3.6 cartopy numpy=1.15.2 matplotlib scipy opencv cython seaborn pandas geopy scikit-learn scikit-image netcdf4 h5py | |
pip install keras_applications keras_preprocessing | |
# tf r1.12rc2 | |
# Apache Ignite (Y) | XLA JIT (Y) | SYCL (N) | ROCm (N) | CUDA (N) | CLANG (N) | MPI (N) | COPT (-march=native) | Android (N) | |
# Extra Flags: NOCXXABI (--cxxopt="-D_GLIBCXX_USE_CXX11_ABI=0") | COPT (--config=opt) | NGRAPH (--config=ngraph) | VERBS (--verbs) | MONO (--config=monolithic) | |
# XLA & CLANG & MPI & COPT & NOCXXABI & NGRAPH & VERBS: Fail | |
# XLA & CLANG & MPI & COPT & NGRAPH & VERBS: Fail | |
# XLA & NOCXXABI & COPT & NGRAPH: Success (Ryzen 7 1800X/E7-4860/Gold 6126) / however, SegFault | |
# XLA & NOCXXABI & COPT (custom) & NGRAPH: Success (E7-4860/Gold 6126) / however, SegFault | |
# XLA & NOCXXABI & COPT (native) & NGRAPH & MONO: Fail (Gold 6126) | |
# NOCXXABI & COPT (native) & NGRAPH: (E7-4860) Success / however, SegFault | |
# NOCXXABI & COPT (custom) & NGRAPH: Success / however, SegFauilt | |
# XLA & NOCXXABI & COPT (native) & MKL: (E7-4860/Gold 6126) Success / working | |
# Optimization Instructions | |
# Xeon E7-4860 / Westmere-EX / -march=native (fail) / -msse2 -msse3 -msse4.1 -msse4.2 | |
# Xeon Gold 6126 / Skylake / -march=native (fail) / -mavx -mavx2 -mfma -msse4.1 -msse4.2 -mavx512f | |
# Ryzen 7 1800X / Summit Ridge / -march=native / -mavx -mavx2 -mfma -msse4.1 -msse4.2 | |
bazel build --copt="-DEIGEN_USE_VML" --config=opt --config=mkl //tensorflow/tools/pip_package:build_pip_package --verbose_failures | |
bazel build --config=opt --config=mkl //tensorflow/tools/pip_package:build_pip_package --verbose_failures | |
bazel build --config=opt --config=ngraph //tensorflow/tools/pip_package:build_pip_package --verbose_failures | |
bazel build --cxxopt="-D_GLIBCXX_USE_CXX11_ABI=0" --config=opt --config=ngraph //tensorflow/tools/pip_package:build_pip_package --verbose_failures | |
# for building wheel files with successful built, | |
bazel-bin/tensorflow/tools/pip_package/build_pip_package .. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment