Skip to content
This repository was archived by the owner on Nov 17, 2023. It is now read-only.
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
111 commits
Select commit Hold shift + click to select a range
1e17a51
mkldnn is default makefile and explicitly turn off for buidls
azai91 Sep 18, 2018
abbc3ad
add endif
azai91 Sep 18, 2018
92b91f8
retrigger
azai91 Oct 30, 2018
335748b
Merge branch 'master' into feature/mklnn-default-make
azai91 Oct 30, 2018
ce5336c
retrigger
azai91 Oct 31, 2018
d12d2cd
Merge branch 'master' into feature/mklnn-default-make
azai91 Nov 9, 2018
b8a0203
build mkldnn as static lib
azai91 Nov 9, 2018
bc6c482
update makefile to statically build mkldnn
azai91 Nov 9, 2018
15a41fc
build static mkldnn
azai91 Nov 9, 2018
42b3353
fix static name
azai91 Nov 9, 2018
5af258a
fix static name
azai91 Nov 9, 2018
32ab9ce
update static for mac
azai91 Nov 9, 2018
e2422d6
rename mkldnn dep in ci
azai91 Nov 12, 2018
372f697
remove moving mkldnn dynamic lib
azai91 Nov 12, 2018
67e4dff
retrigger
azai91 Nov 13, 2018
150b324
remove commented code
azai91 Nov 13, 2018
890cf1d
merge master
azai91 Nov 13, 2018
89b11c6
retrigger
azai91 Nov 13, 2018
da8f62c
Merge branch 'master' into feature/mklnn-default-make
azai91 Nov 13, 2018
f29c254
Merge branch 'master' into feature/mkldnn-static
azai91 Nov 14, 2018
40fd0ac
remove mkldnn dnaymic for unitest
azai91 Nov 14, 2018
78c6093
Merge branch 'master' into feature/mklnn-default-make
azai91 Nov 21, 2018
cb095c6
retrigger
azai91 Nov 21, 2018
c08f6fa
retrigger
azai91 Nov 22, 2018
0302290
force static for mkldnn lib
azai91 Nov 22, 2018
bf78666
turn of mkldnn on arm builds
azai91 Nov 22, 2018
23fd7d9
Merge branch 'master' into feature/mkldnn-static
azai91 Nov 27, 2018
d103ec8
remove dynamic mkldnn bind
azai91 Nov 28, 2018
46da874
Merge branch 'master' into feature/mklnn-default-make
azai91 Nov 29, 2018
9b60119
Merge branch 'feature/mklnn-default-make' of github.com:azai91/incuba…
azai91 Nov 29, 2018
4b07dcf
update jenkins to use only mkldnn
azai91 Nov 29, 2018
6536cda
remove last flag
azai91 Nov 29, 2018
de4ff31
turn mkldnn by default on mac
azai91 Nov 29, 2018
0e5a362
move mkldnn files for GPU MKLDNN build
azai91 Nov 29, 2018
6eadfae
copy lib mxnet in gpu build
azai91 Nov 30, 2018
c9e8bd2
Merge branch 'master' into feature/mkldnn-static
azai91 Nov 30, 2018
0d0f407
only link windows
azai91 Nov 30, 2018
b300b88
add mkldnn.mk
azai91 Nov 30, 2018
b336ef0
try force linking
azai91 Nov 30, 2018
9827a5b
Merge branch 'master' into feature/mklnn-default-make-2
azai91 Nov 30, 2018
b9be823
retrigger
azai91 Nov 30, 2018
fdcee0d
retrigger
azai91 Nov 30, 2018
46ee0bd
remove mkldnn dynanmic check
azai91 Nov 30, 2018
7772cdd
use ifndef
azai91 Nov 30, 2018
45e8cd8
remove test mkldnn install
azai91 Nov 30, 2018
ed31e12
fix spacing
azai91 Nov 30, 2018
746596c
Merge branch 'master' into feature/mklnn-default-make-2
azai91 Nov 30, 2018
ab2ec74
Merge branch 'feature/mkldnn-static' into feature/mklnn-default-make-2
azai91 Nov 30, 2018
6a02949
fix index
azai91 Nov 30, 2018
9ba1181
Merge branch 'feature/mkldnn-static' into feature/mklnn-default-make-2
azai91 Nov 30, 2018
3cc21f3
remove cp of mkldnn since statically linked
azai91 Nov 30, 2018
0b894a0
add libmkldnn.a to list of files to pack
azai91 Nov 30, 2018
6b4db54
include mkl_ml
azai91 Nov 30, 2018
a754793
merge from master
azai91 Dec 3, 2018
4ad0b29
Merge branch 'master' into feature/mklnn-default-make-2
azai91 Dec 10, 2018
ccf9855
add mkldnn to pack
azai91 Dec 10, 2018
225b446
add libiomp to ci pack
azai91 Dec 11, 2018
54231a9
move static libs
azai91 Dec 11, 2018
2d2a0f9
fix typo
azai91 Dec 11, 2018
884d955
pack mkldnn
azai91 Dec 11, 2018
7dfa87e
retrigger
azai91 Dec 11, 2018
409acd0
add linux artifacts
azai91 Dec 11, 2018
8422287
move libmkldnn in gpu cmake build
azai91 Dec 11, 2018
346a602
move libmkldnn and libiomp5 on gpu workspace
azai91 Dec 11, 2018
20741c4
move linked files
azai91 Dec 11, 2018
4e6b2ca
fix typo
azai91 Dec 11, 2018
992a2a0
fix typo
azai91 Dec 11, 2018
45fd008
add artifacts for tensorrt
azai91 Dec 11, 2018
7934cf1
move mkldnn lib in scala build
azai91 Dec 11, 2018
b40e996
move mkldnn lib on cpu scala
azai91 Dec 11, 2018
74e86e6
create dir for binding
azai91 Dec 11, 2018
5a18a8f
rename libmkldnn in scala
azai91 Dec 11, 2018
c0bd964
move mklml dep in scala builds
azai91 Dec 11, 2018
2dc1683
move mkl to another linked folder
azai91 Dec 11, 2018
4eb65df
move libmkl to another dir
azai91 Dec 12, 2018
ec5421d
add libmklml
azai91 Dec 12, 2018
75dd532
move mkldnn
azai91 Dec 12, 2018
2af09a8
move mkldnn on centos
azai91 Dec 12, 2018
76d842f
specify new dynamic path
azai91 Dec 12, 2018
103c9d1
retrigger
azai91 Dec 13, 2018
edc3bd1
merge from master
azai91 Dec 13, 2018
d510436
remove mkldnn dynamic lib
azai91 Dec 13, 2018
16cca19
remove moving mkldnn artifact
azai91 Dec 13, 2018
ab75373
add ld path
azai91 Dec 14, 2018
63821d4
retrigger
azai91 Dec 14, 2018
13bf7ae
Revert "remove moving mkldnn artifact"
azai91 Dec 14, 2018
935b1dc
Revert "remove mkldnn dynamic lib"
azai91 Dec 14, 2018
96482f7
merge from master
azai91 Dec 14, 2018
59bae57
update makefile
azai91 Dec 14, 2018
ce55f1b
updated reference to Apache MXNet (#13645)
srochel Dec 14, 2018
8f56933
Complimentary gluon DataLoader improvements (#13606)
zhreshold Dec 14, 2018
d59dae6
Improve CCache handling (#13456)
marcoabreu Dec 14, 2018
948ea01
[MXNET-918] Random module (#13039)
mdespriee Dec 14, 2018
ae377f8
Fix incorrect delete in MXExecutorReshape exception handling (#13376)
Dec 14, 2018
73c72d1
[MXNET-1251] Basic configuration to do static-linking (#13621)
lanking520 Dec 15, 2018
0072d82
[MXNET-1195] Cleanup Scala README file (#13582)
piyushghai Dec 15, 2018
47e2c48
scripts for building libmxnet binary and wheel (#13648)
szha Dec 15, 2018
0bbbaac
[MXNET-1083] Add the example to demonstrate the inference workflow us…
leleamol Dec 15, 2018
c41d873
Update MKLDNN_README.md (#13653)
mseth10 Dec 15, 2018
8a00f18
Support Quantized Fully Connected by INT8 GEMM (#12922)
Dec 15, 2018
02a0e7e
add build fix for Scala/Java build (#13655)
lanking520 Dec 16, 2018
e2fe081
Fix Jetson compilation (#13532)
larroy Dec 17, 2018
aecae34
remove omp which can cause ssd accuracy variance (#13622)
xinyu-intel Dec 17, 2018
43e8125
Revert "[MXNET-43] Fix Jetson compilation" (#13665)
KellenSunderland Dec 18, 2018
cd1540c
Fix Jetson compilation (#13666)
larroy Dec 18, 2018
e15c34b
turn on Sphinx warnings as errors (#13544)
aaronmarkham Dec 18, 2018
12d34a7
Update CODEOWNERS, add Pedro Larroy. (#13579)
larroy Dec 18, 2018
097bc58
Revert "Revert "[MXNET-43] Fix Jetson compilation" (#13665)" (#13672)
larroy Dec 18, 2018
e5b236c
revert rpath
Dec 18, 2018
438e75e
set mkldnn flag=0 for non mkldnn test and removing redundant mkldnn f…
Dec 18, 2018
edfce60
removing export ld lib path
Dec 18, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 0 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -167,10 +167,6 @@ python/.eggs
tests/Makefile
tests/mxnet_unit_tests

# generated wrappers for ccache
cc
cxx

# Code coverage related
.coverage
*.gcov
Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ mxnet_option(USE_F16C "Build with x86 F16C instruction support" ON)
mxnet_option(USE_LAPACK "Build with lapack support" ON)
mxnet_option(USE_MKL_IF_AVAILABLE "Use MKL if found" ON)
mxnet_option(USE_MKLML_MKL "Use MKLDNN variant of MKL (if MKL found)" ON IF USE_MKL_IF_AVAILABLE AND (NOT APPLE))
mxnet_option(USE_MKLDNN "Use MKLDNN variant of MKL (if MKL found)" ON IF USE_MKL_IF_AVAILABLE AND (NOT APPLE))
mxnet_option(USE_MKLDNN "Use MKLDNN variant of MKL (if MKL found)" ON IF USE_MKL_IF_AVAILABLE)
mxnet_option(USE_OPERATOR_TUNING "Enable auto-tuning of operators" ON IF NOT MSVC)
mxnet_option(USE_GPERFTOOLS "Build with GPerfTools support (if found)" ON)
mxnet_option(USE_JEMALLOC "Build with Jemalloc support" ON)
Expand Down
22 changes: 13 additions & 9 deletions CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,14 @@

# Language bindings
/R-package/ @thirdwing
/scala-package/ @yzhliu @nswamy
/scala-package/ @yzhliu @nswamy @pllarroy
/perl-package/ @sergeykolychev
/python/ @szha
/python/ @szha @pllarroy
/contrib/clojure-package/ @gigasquid

# C++ base
/src/kvstore/ @rahul003 @anirudh2290
/include/ @anirudh2290
/include/ @anirudh2290 @pllarroy
/src/c_api/ @anirudh2290
/src/common/ @anirudh2290
/src/engine/ @anirudh2290
Expand All @@ -33,13 +33,17 @@
/src/profiler/ @anirudh2290
/src/storage/ @anirudh2290
/tests/cpp/ @anirudh2290
/cpp-package/ @nswamy
/cpp-package/ @nswamy @pllarroy
/src/ @pllarroy
/plugin/ @pllarroy

# CMake
CMakeLists.txt @szha @rahul003
/cmake/ @szha @rahul003
CMakeLists.txt @szha @rahul003 @pllarroy
/cmake/ @szha @rahul003 @pllarroy

# MXNet CI
dev_menu.py @pllarroy
/ci/ @pllarroy
/tests/ci_build/ @marcoabreu
Jenkinsfile @marcoabreu
.travis.yml @marcoabreu
Expand All @@ -50,16 +54,16 @@ Makefile @szha
prepare_mkl.sh @szha

# Docs
/docs/ @szha
/docs/ @szha @pllarroy

# Submodules
.gitmodules @szha

# Examples
/example/ @szha
/example/ @szha @pllarroy

# Tools
/tools/ @szha
/tools/ @szha @pllarroy

# Github templates
/.github/ @szha
Expand Down
12 changes: 6 additions & 6 deletions MKLDNN_README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
# Build/Install MXNet with MKL-DNN

A better training and inference perforamce are expected to achieved on Intel-Architecture CPUs with MXNET built with [Intel MKL-DNN](https://github.com/intel/mkl-dnn) on multiple operating system, including Linux, Windows and MacOS.
In the following sections, you will find building instructions for MXNET with Intel MKL-DNN on Linux, MacOS and Windows.
A better training and inference performance is expected to be achieved on Intel-Architecture CPUs with MXNet built with [Intel MKL-DNN](https://github.com/intel/mkl-dnn) on multiple operating system, including Linux, Windows and MacOS.
In the following sections, you will find build instructions for MXNet with Intel MKL-DNN on Linux, MacOS and Windows.

The detailed performance data collected on Intel Xeon CPU with MXNET built with Intel MKL-DNN can be found at [here](https://mxnet.incubator.apache.org/faq/perf.html#intel-cpu).
The detailed performance data collected on Intel Xeon CPU with MXNet built with Intel MKL-DNN can be found [here](https://mxnet.incubator.apache.org/faq/perf.html#intel-cpu).


<h2 id="0">Contents</h2>
Expand Down Expand Up @@ -83,7 +83,7 @@ LIBRARY_PATH=$(brew --prefix llvm)/lib/ make -j $(sysctl -n hw.ncpu) CC=$(brew -

<h2 id="3">Windows</h2>

On Windows, you can use [Micrsoft Visual Studio 2015](https://www.visualstudio.com/vs/older-downloads/) and [Microsoft Visual Studio 2017](https://www.visualstudio.com/downloads/) to compile MXNET with Intel MKL-DNN.
On Windows, you can use [Micrsoft Visual Studio 2015](https://www.visualstudio.com/vs/older-downloads/) and [Microsoft Visual Studio 2017](https://www.visualstudio.com/downloads/) to compile MXNet with Intel MKL-DNN.
[Micrsoft Visual Studio 2015](https://www.visualstudio.com/vs/older-downloads/) is recommended.

**Visual Studio 2015**
Expand Down Expand Up @@ -123,7 +123,7 @@ cmake -G "Visual Studio 14 Win64" .. -DUSE_CUDA=0 -DUSE_CUDNN=0 -DUSE_NVRTC=0 -D
These commands produce a library called ```libmxnet.dll``` in the ```./build/Release/``` or ```./build/Debug``` folder.
Also ```libmkldnn.dll``` with be in the ```./build/3rdparty/mkldnn/src/Release/```

6. Make sure that all the dll files used above(such as `libmkldnn.dll`, `libmklml.dll`, `libiomp5.dll`, `libopenblas.dll`, etc) are added to the system PATH. For convinence, you can put all of them to ```\windows\system32```. Or you will come across `Not Found Dependencies` when loading mxnet.
6. Make sure that all the dll files used above(such as `libmkldnn.dll`, `libmklml.dll`, `libiomp5.dll`, `libopenblas.dll`, etc) are added to the system PATH. For convinence, you can put all of them to ```\windows\system32```. Or you will come across `Not Found Dependencies` when loading MXNet.

**Visual Studio 2017**

Expand Down Expand Up @@ -177,7 +177,7 @@ cmake -G "Visual Studio 15 2017 Win64" .. -T host=x64 -DUSE_CUDA=0 -DUSE_CUDNN=0
msbuild mxnet.sln /p:Configuration=Release;Platform=x64 /maxcpucount
```

9. Make sure that all the dll files used above(such as `libmkldnn.dll`, `libmklml.dll`, `libiomp5.dll`, `libopenblas.dll`, etc) are added to the system PATH. For convinence, you can put all of them to ```\windows\system32```. Or you will come across `Not Found Dependencies` when loading mxnet.
9. Make sure that all the dll files used above(such as `libmkldnn.dll`, `libmklml.dll`, `libiomp5.dll`, `libopenblas.dll`, etc) are added to the system PATH. For convinence, you can put all of them to ```\windows\system32```. Or you will come across `Not Found Dependencies` when loading MXNet.

<h2 id="4">Verify MXNet with python</h2>

Expand Down
10 changes: 7 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,10 @@ endif
# use customized config file
include $(config)

ifndef $(USE_MKLDNN)
USE_MKLDNN = 1
endif

ifeq ($(USE_MKL2017), 1)
$(warning "USE_MKL2017 is deprecated. We will switch to USE_MKLDNN.")
USE_MKLDNN=1
Expand Down Expand Up @@ -463,7 +467,7 @@ build/src/%.o: src/%.cc | mkldnn

build/src/%_gpu.o: src/%.cu | mkldnn
@mkdir -p $(@D)
$(NVCC) $(NVCCFLAGS) $(CUDA_ARCH) -Xcompiler "$(CFLAGS)" -M -MT build/src/$*_gpu.o $< >build/src/$*_gpu.d
$(NVCC) $(NVCCFLAGS) $(CUDA_ARCH) -Xcompiler "$(CFLAGS)" --generate-dependencies -MT build/src/$*_gpu.o $< >build/src/$*_gpu.d
$(NVCC) -c -o $@ $(NVCCFLAGS) $(CUDA_ARCH) -Xcompiler "$(CFLAGS)" $<

# A nvcc bug cause it to generate "generic/xxx.h" dependencies from torch headers.
Expand All @@ -479,7 +483,7 @@ build/plugin/%.o: plugin/%.cc

%_gpu.o: %.cu
@mkdir -p $(@D)
$(NVCC) $(NVCCFLAGS) $(CUDA_ARCH) -Xcompiler "$(CFLAGS) -Isrc/operator" -M -MT $*_gpu.o $< >$*_gpu.d
$(NVCC) $(NVCCFLAGS) $(CUDA_ARCH) -Xcompiler "$(CFLAGS) -Isrc/operator" --generate-dependencies -MT $*_gpu.o $< >$*_gpu.d
$(NVCC) -c -o $@ $(NVCCFLAGS) $(CUDA_ARCH) -Xcompiler "$(CFLAGS) -Isrc/operator" $<

%.o: %.cc $(CORE_INC)
Expand Down Expand Up @@ -686,7 +690,7 @@ rclean:

ifneq ($(EXTRA_OPERATORS),)
clean: rclean cyclean $(EXTRA_PACKAGES_CLEAN)
$(RM) -r build lib bin *~ */*~ */*/*~ */*/*/*~
$(RM) -r build lib bin deps *~ */*~ */*/*~ */*/*/*~
cd $(DMLC_CORE); $(MAKE) clean; cd -
cd $(PS_PATH); $(MAKE) clean; cd -
cd $(NNVM_PATH); $(MAKE) clean; cd -
Expand Down
5 changes: 5 additions & 0 deletions ci/docker/Dockerfile.build.android_armv7
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,11 @@ ENV OpenBLAS_DIR=${CROSS_ROOT}

WORKDIR /work

ARG USER_ID=0
ARG GROUP_ID=0
COPY install/ubuntu_adduser.sh /work/
RUN /work/ubuntu_adduser.sh

COPY runtime_functions.sh /work/
WORKDIR /work/mxnet

8 changes: 7 additions & 1 deletion ci/docker/Dockerfile.build.android_armv8
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,12 @@ ENV CXX=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-clang++
COPY install/android_arm64_openblas.sh /work/
RUN /work/android_arm64_openblas.sh
ENV CPLUS_INCLUDE_PATH /work/deps/OpenBLAS
WORKDIR /work/build

ARG USER_ID=0
ARG GROUP_ID=0
COPY install/ubuntu_adduser.sh /work/
RUN /work/ubuntu_adduser.sh

COPY runtime_functions.sh /work/

WORKDIR /work/build
5 changes: 5 additions & 0 deletions ci/docker/Dockerfile.build.armv6
Original file line number Diff line number Diff line change
Expand Up @@ -38,5 +38,10 @@ ENV OpenBLAS_DIR=${CROSS_ROOT}
COPY install/deb_ubuntu_ccache.sh /work/
RUN /work/deb_ubuntu_ccache.sh

ARG USER_ID=0
ARG GROUP_ID=0
COPY install/ubuntu_adduser.sh /work/
RUN /work/ubuntu_adduser.sh

COPY runtime_functions.sh /work/
WORKDIR /work/mxnet
5 changes: 5 additions & 0 deletions ci/docker/Dockerfile.build.armv7
Original file line number Diff line number Diff line change
Expand Up @@ -38,5 +38,10 @@ ENV OpenBLAS_DIR=${CROSS_ROOT}
COPY install/deb_ubuntu_ccache.sh /work/
RUN /work/deb_ubuntu_ccache.sh

ARG USER_ID=0
ARG GROUP_ID=0
COPY install/ubuntu_adduser.sh /work/
RUN /work/ubuntu_adduser.sh

COPY runtime_functions.sh /work/
WORKDIR /work/mxnet
5 changes: 5 additions & 0 deletions ci/docker/Dockerfile.build.armv8
Original file line number Diff line number Diff line change
Expand Up @@ -42,5 +42,10 @@ ENV OpenBLAS_DIR=${CROSS_ROOT}
COPY install/deb_ubuntu_ccache.sh /work/
RUN /work/deb_ubuntu_ccache.sh

ARG USER_ID=0
ARG GROUP_ID=0
COPY install/ubuntu_adduser.sh /work/
RUN /work/ubuntu_adduser.sh

COPY runtime_functions.sh /work/
WORKDIR /work/build
6 changes: 6 additions & 0 deletions ci/docker/Dockerfile.build.jetson
Original file line number Diff line number Diff line change
Expand Up @@ -77,10 +77,16 @@ RUN JETPACK_DOWNLOAD_PREFIX=https://developer.download.nvidia.com/devzone/devcen
dpkg -i --force-architecture $ARM_NVINFER_INSTALLER_PACKAGE && \
dpkg -i --force-architecture $ARM_NVINFER_DEV_INSTALLER_PACKAGE && \
apt update -y || true && apt install -y cuda-libraries-dev-9-0 libcudnn7-dev libnvinfer-dev
RUN ln -s /usr/include/aarch64-linux-gnu/cudnn_v7.h /usr/include/aarch64-linux-gnu/cudnn.h
ENV PATH $PATH:/usr/local/cuda/bin
ENV NVCCFLAGS "-m64"
ENV CUDA_ARCH "-gencode arch=compute_53,code=sm_53 -gencode arch=compute_62,code=sm_62"
ENV NVCC /usr/local/cuda/bin/nvcc

ARG USER_ID=0
ARG GROUP_ID=0
COPY install/ubuntu_adduser.sh /work/
RUN /work/ubuntu_adduser.sh

COPY runtime_functions.sh /work/
WORKDIR /work/mxnet
5 changes: 5 additions & 0 deletions ci/docker/install/centos7_adduser.sh
Original file line number Diff line number Diff line change
Expand Up @@ -34,4 +34,9 @@ then
mkdir /work/mxnet
mkdir /work/build
chown -R jenkins_slave /work/

# Later on, we have to override the links because underlying build systems ignore our compiler settings. Thus,
# we have to give the process the proper permission to these files. This is hacky, but unfortunately
# there's no better way to do this without patching all our submodules.
chown -R jenkins_slave /usr/local/bin
fi
5 changes: 5 additions & 0 deletions ci/docker/install/ubuntu_adduser.sh
Original file line number Diff line number Diff line change
Expand Up @@ -40,4 +40,9 @@ then
mkdir /work/mxnet
mkdir /work/build
chown -R jenkins_slave /work/

# Later on, we have to override the links because underlying build systems ignore our compiler settings. Thus,
# we have to give the process the proper permission to these files. This is hacky, but unfortunately
# there's no better way to do this without patching all our submodules.
chown -R jenkins_slave /usr/local/bin
fi
48 changes: 48 additions & 0 deletions ci/docker/install/ubuntu_publish.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
#!/usr/bin/env bash

# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.

# Build on Ubuntu 14.04 LTS for LINUX CPU/GPU
apt-get update
apt-get install -y software-properties-common
add-apt-repository ppa:ubuntu-toolchain-r/test -y
add-apt-repository ppa:openjdk-r/ppa -y # Java lib
apt-get update
apt-get install -y git \
cmake3 \
libcurl4-openssl-dev \
unzip \
gcc-4.8 \
g++-4.8 \
gfortran \
gfortran-4.8 \
binutils \
nasm \
libtool \
curl \
pandoc \
python3-pip \
automake \
pkg-config \
openjdk-8-jdk
curl -o apache-maven-3.3.9-bin.tar.gz http://www.eu.apache.org/dist/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
tar xzf apache-maven-3.3.9-bin.tar.gz
mkdir /usr/local/maven
mv apache-maven-3.3.9/ /usr/local/maven/
update-alternatives --install /usr/bin/mvn mvn /usr/local/maven/apache-maven-3.3.9/bin/mvn 1
update-ca-certificates -f
Loading