This is an automated email from the ASF dual-hosted git repository.
zhasheng pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-mxnet.git
The following commit(s) were added to refs/heads/master by this push:
new 3801f97 [CI] fix debug build (#18240)
3801f97 is described below
commit 3801f9730a8c0ef4cd7679091d06f326f02b9861
Author: Sheng Zha <[email protected]>
AuthorDate: Wed May 6 10:45:34 2020 -0700
[CI] fix debug build (#18240)
* reverse control in jenkins steps, add debug gpu build test
* try enabling gluon rnn cell tests on gpu
* add faulthandler timeout
---
CMakeLists.txt | 1 -
ci/docker/runtime_functions.sh | 17 ++
ci/jenkins/Jenkins_steps.groovy | 370 +++++++++++++++-------------
ci/jenkins/Jenkinsfile_centos_cpu | 16 +-
ci/jenkins/Jenkinsfile_centos_gpu | 8 +-
ci/jenkins/Jenkinsfile_edge | 10 +-
ci/jenkins/Jenkinsfile_miscellaneous | 10 +-
ci/jenkins/Jenkinsfile_tools | 2 +-
ci/jenkins/Jenkinsfile_unix_cpu | 53 ++--
ci/jenkins/Jenkinsfile_unix_gpu | 45 ++--
ci/jenkins/Jenkinsfile_website_beta | 4 +-
ci/jenkins/Jenkinsfile_website_c_docs | 6 +-
ci/jenkins/Jenkinsfile_website_clojure_docs | 6 +-
ci/jenkins/Jenkinsfile_website_full | 16 +-
ci/jenkins/Jenkinsfile_website_full_pr | 16 +-
ci/jenkins/Jenkinsfile_website_java_docs | 6 +-
ci/jenkins/Jenkinsfile_website_jekyll_docs | 1 -
ci/jenkins/Jenkinsfile_website_julia_docs | 6 +-
ci/jenkins/Jenkinsfile_website_mxnet_build | 2 +-
ci/jenkins/Jenkinsfile_website_nightly | 16 +-
ci/jenkins/Jenkinsfile_website_python_docs | 7 +-
ci/jenkins/Jenkinsfile_website_r_docs | 4 +-
ci/jenkins/Jenkinsfile_website_scala_docs | 6 +-
ci/jenkins/Jenkinsfile_windows_cpu | 14 +-
ci/jenkins/Jenkinsfile_windows_gpu | 8 +-
pytest.ini | 1 +
src/operator/nn/batch_norm.cu | 20 +-
tests/python/unittest/test_gluon_rnn.py | 4 -
28 files changed, 348 insertions(+), 327 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d8d6952..47b0b25 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -168,7 +168,6 @@ else()
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O0 -g")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_GLIBCXX_ASSERTIONS")
elseif(CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo")
- add_definitions(-DNDEBUG=1)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O3 -g")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_GLIBCXX_ASSERTIONS")
else()
diff --git a/ci/docker/runtime_functions.sh b/ci/docker/runtime_functions.sh
index 2155723..47b3877 100755
--- a/ci/docker/runtime_functions.sh
+++ b/ci/docker/runtime_functions.sh
@@ -761,6 +761,23 @@ build_ubuntu_gpu_cuda101_cudnn7() {
ninja
}
+build_ubuntu_gpu_cuda101_cudnn7_debug() {
+ set -ex
+ cd /work/build
+ CC=gcc-7 CXX=g++-7 cmake \
+ -DCMAKE_BUILD_TYPE=Debug \
+ -DUSE_MKL_IF_AVAILABLE=OFF \
+ -DUSE_CUDA=ON \
+ -DMXNET_CUDA_ARCH="$CI_CMAKE_CUDA_ARCH" \
+ -DUSE_CUDNN=ON \
+ -DUSE_MKLDNN=OFF \
+ -DUSE_CPP_PACKAGE=ON \
+ -DUSE_DIST_KVSTORE=ON \
+ -DBUILD_CYTHON_MODULES=ON \
+ -G Ninja /work/mxnet
+ ninja
+}
+
build_ubuntu_gpu_cuda101_cudnn7_make() {
set -ex
export CC=gcc-7
diff --git a/ci/jenkins/Jenkins_steps.groovy b/ci/jenkins/Jenkins_steps.groovy
index 56c7e2f..204567d 100644
--- a/ci/jenkins/Jenkins_steps.groovy
+++ b/ci/jenkins/Jenkins_steps.groovy
@@ -80,278 +80,294 @@ def python3_gpu_ut_cython(docker_container_name) {
//------------------------------------------------------------------------------------------
-def compile_unix_cpu_openblas() {
+def compile_unix_cpu_openblas(lib_name) {
return ['CPU: Openblas': {
node(NODE_LINUX_CPU) {
ws('workspace/build-cpu-openblas') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('ubuntu_cpu', 'build_ubuntu_cpu_openblas', false)
- utils.pack_lib('cpu', mx_lib_cython, true)
+ utils.pack_lib(lib_name, mx_lib_cython, true)
}
}
}
}]
}
-def compile_unix_cpu_openblas_make() {
+def compile_unix_cpu_openblas_make(lib_name) {
return ['CPU: Openblas Makefile': {
node(NODE_LINUX_CPU) {
ws('workspace/build-cpu-openblas') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('ubuntu_cpu', 'build_ubuntu_cpu_openblas_make',
false)
- utils.pack_lib('cpu_make', mx_lib_make)
+ utils.pack_lib(lib_name, mx_lib_make)
}
}
}
}]
}
-def compile_unix_openblas_debug_cpu() {
+def compile_unix_openblas_debug_cpu(lib_name) {
return ['CPU: Openblas, cmake, debug': {
node(NODE_LINUX_CPU) {
ws('workspace/build-cpu-openblas') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('ubuntu_cpu', 'build_ubuntu_cpu_cmake_debug',
false)
- utils.pack_lib('cpu_debug', mx_cmake_lib_debug, true)
+ utils.pack_lib(lib_name, mx_cmake_lib_debug, true)
}
}
}
}]
}
-def compile_unix_openblas_cpu_no_tvm_op() {
+def compile_unix_openblas_cpu_no_tvm_op(lib_name) {
return ['CPU: Openblas, cmake, TVM_OP OFF': {
node(NODE_LINUX_CPU) {
ws('workspace/build-cpu-openblas-no-tvm-op') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('ubuntu_cpu', 'build_ubuntu_cpu_cmake_no_tvm_op',
false)
- utils.pack_lib('cpu_openblas_no_tvm_op', mx_cmake_lib_no_tvm_op)
+ utils.pack_lib(lib_name, mx_cmake_lib_no_tvm_op)
}
}
}
}]
}
-def compile_unix_int64_cpu() {
+def compile_unix_int64_cpu(lib_name) {
return ['CPU: USE_INT64_TENSOR_SIZE': {
node(NODE_LINUX_CPU) {
ws('workspace/build-cpu-int64') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
- utils.docker_run('ubuntu_cpu', 'build_ubuntu_cpu_large_tensor',
false)
+ utils.docker_run(lib_name, 'build_ubuntu_cpu_large_tensor', false)
}
}
}
}]
}
-def compile_unix_int64_gpu() {
+def compile_unix_int64_gpu(lib_name) {
return ['GPU: USE_INT64_TENSOR_SIZE': {
node(NODE_LINUX_GPU) {
ws('workspace/build-gpu-int64') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('ubuntu_gpu_cu101',
'build_ubuntu_gpu_large_tensor', false)
- utils.pack_lib('ubuntu_gpu_int64', mx_cmake_lib)
+ utils.pack_lib(lib_name, mx_cmake_lib)
}
}
}
}]
}
-def compile_unix_mkl_cpu() {
+def compile_unix_mkl_cpu(lib_name) {
return ['CPU: MKL': {
node(NODE_LINUX_CPU) {
ws('workspace/build-cpu-mkl') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('ubuntu_cpu', 'build_ubuntu_cpu_mkl', false)
- utils.pack_lib('cpu_mkl', mx_lib, true)
+ utils.pack_lib(lib_name, mx_lib, true)
}
}
}
}]
}
-def compile_unix_mkldnn_cpu() {
+def compile_unix_mkldnn_cpu(lib_name) {
return ['CPU: MKLDNN': {
node(NODE_LINUX_CPU) {
ws('workspace/build-mkldnn-cpu') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('ubuntu_cpu', 'build_ubuntu_cpu_mkldnn', false)
- utils.pack_lib('mkldnn_cpu', mx_mkldnn_lib, true)
+ utils.pack_lib(lib_name, mx_mkldnn_lib, true)
}
}
}
}]
}
-def compile_unix_mkldnn_cpu_make() {
+def compile_unix_mkldnn_cpu_make(lib_name) {
return ['CPU: MKLDNN Makefile': {
node(NODE_LINUX_CPU) {
ws('workspace/build-mkldnn-cpu') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('ubuntu_cpu', 'build_ubuntu_cpu_mkldnn_make',
false)
- utils.pack_lib('mkldnn_cpu_make', mx_mkldnn_lib_make)
+ utils.pack_lib(lib_name, mx_mkldnn_lib_make)
}
}
}
}]
}
-def compile_unix_mkldnn_mkl_cpu() {
+def compile_unix_mkldnn_mkl_cpu(lib_name) {
return ['CPU: MKLDNN_MKL': {
node(NODE_LINUX_CPU) {
ws('workspace/build-mkldnn-cpu') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('ubuntu_cpu', 'build_ubuntu_cpu_mkldnn_mkl',
false)
- utils.pack_lib('mkldnn_mkl_cpu', mx_mkldnn_lib, true)
+ utils.pack_lib(lib_name, mx_mkldnn_lib, true)
}
}
}
}]
}
-def compile_unix_mkldnn_gpu() {
+def compile_unix_mkldnn_gpu(lib_name) {
return ['GPU: MKLDNN': {
node(NODE_LINUX_CPU) {
ws('workspace/build-mkldnn-gpu') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('ubuntu_build_cuda', 'build_ubuntu_gpu_mkldnn',
false)
- utils.pack_lib('mkldnn_gpu', mx_mkldnn_lib)
+ utils.pack_lib(lib_name, mx_mkldnn_lib)
}
}
}
}]
}
-def compile_unix_mkldnn_nocudnn_gpu() {
+def compile_unix_mkldnn_nocudnn_gpu(lib_name) {
return ['GPU: MKLDNN_CUDNNOFF': {
node(NODE_LINUX_CPU) {
ws('workspace/build-mkldnn-gpu-nocudnn') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('ubuntu_build_cuda',
'build_ubuntu_gpu_mkldnn_nocudnn', false)
- utils.pack_lib('mkldnn_gpu_nocudnn', mx_mkldnn_lib)
+ utils.pack_lib(lib_name, mx_mkldnn_lib)
}
}
}
}]
}
-def compile_unix_full_gpu() {
+def compile_unix_full_gpu(lib_name) {
return ['GPU: CUDA10.1+cuDNN7': {
node(NODE_LINUX_CPU) {
ws('workspace/build-gpu') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('ubuntu_build_cuda',
'build_ubuntu_gpu_cuda101_cudnn7', false)
- utils.pack_lib('gpu', mx_lib_cpp_examples)
+ utils.pack_lib(lib_name, mx_lib_cpp_examples)
}
}
}
}]
}
-def compile_unix_full_gpu_make() {
+def compile_unix_full_gpu_make(lib_name) {
return ['GPU: CUDA10.1+cuDNN7 Makefile': {
node(NODE_LINUX_CPU) {
ws('workspace/build-gpu') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('ubuntu_build_cuda',
'build_ubuntu_gpu_cuda101_cudnn7_make', false)
- utils.pack_lib('gpu_make', mx_lib_cpp_examples_make)
+ utils.pack_lib(lib_name, mx_lib_cpp_examples_make)
}
}
}
}]
}
-def compile_unix_full_gpu_mkldnn_cpp_test() {
+
+def compile_unix_full_gpu_debug(lib_name) {
+ return ['GPU: CUDA10.1+cuDNN7, debug': {
+ node(NODE_LINUX_CPU) {
+ ws('workspace/build-gpu') {
+ timeout(time: max_time, unit: 'MINUTES') {
+ utils.init_git()
+ utils.docker_run('ubuntu_build_cuda',
'build_ubuntu_gpu_cuda101_cudnn7_debug', false)
+ utils.pack_lib(lib_name, mx_lib_cpp_examples)
+ }
+ }
+ }
+ }]
+}
+
+def compile_unix_full_gpu_mkldnn_cpp_test(lib_name) {
return ['GPU: CUDA10.1+cuDNN7+MKLDNN+CPPTEST Makefile': {
node(NODE_LINUX_CPU) {
ws('workspace/build-gpu-mkldnn-cpp') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('ubuntu_build_cuda',
'build_ubuntu_gpu_cuda101_cudnn7_mkldnn_cpp_test', false)
- utils.pack_lib('gpu_mkldnn_cpp_test_make', mx_lib_cpp_capi_make)
+ utils.pack_lib(lib_name, mx_lib_cpp_capi_make)
}
}
}
}]
}
-def compile_unix_cmake_gpu() {
+def compile_unix_cmake_gpu(lib_name) {
return ['GPU: CMake': {
node(NODE_LINUX_CPU) {
ws('workspace/build-cmake-gpu') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('ubuntu_gpu_cu101', 'build_ubuntu_gpu_cmake',
false)
- utils.pack_lib('cmake_gpu', mx_cmake_lib_cython)
+ utils.pack_lib(lib_name, mx_cmake_lib_cython)
}
}
}
}]
}
-def compile_unix_cmake_gpu_no_rtc() {
+def compile_unix_cmake_gpu_no_rtc(lib_name) {
return ['GPU: CMake CUDA RTC OFF': {
- node(NODE_LINUX_CPU) {
- ws('workspace/build-cmake-gpu-no-rtc') {
- timeout(time: max_time, unit: 'MINUTES') {
- utils.init_git()
- utils.docker_run('ubuntu_gpu_cu101',
'build_ubuntu_gpu_cmake_no_rtc', false)
- }
- }
+ node(NODE_LINUX_CPU) {
+ ws('workspace/build-cmake-gpu-no-rtc') {
+ timeout(time: max_time, unit: 'MINUTES') {
+ utils.init_git()
+ utils.docker_run('ubuntu_gpu_cu101',
'build_ubuntu_gpu_cmake_no_rtc', false)
+ utils.pack_lib(lib_name, mx_cmake_lib)
+ }
}
+ }
}]
}
-def compile_unix_tensorrt_gpu() {
+def compile_unix_tensorrt_gpu(lib_name) {
return ['TensorRT': {
node(NODE_LINUX_CPU) {
ws('workspace/build-tensorrt') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('ubuntu_gpu_tensorrt',
'build_ubuntu_gpu_tensorrt', false)
- utils.pack_lib('tensorrt', mx_tensorrt_lib)
+ utils.pack_lib(lib_name, mx_tensorrt_lib)
}
}
}
}]
}
-def compile_centos7_cpu() {
+def compile_centos7_cpu(lib_name) {
return ['CPU: CentOS 7': {
node(NODE_LINUX_CPU) {
ws('workspace/build-centos7-cpu') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('centos7_cpu', 'build_centos7_cpu', false)
- utils.pack_lib('centos7_cpu', mx_lib, true)
+ utils.pack_lib(lib_name, mx_lib, true)
}
}
}
}]
}
-def compile_centos7_cpu_make() {
+def compile_centos7_cpu_make(lib_name) {
return ['CPU: CentOS 7 Makefile': {
node(NODE_LINUX_CPU) {
ws('workspace/build-centos7-cpu') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('centos7_cpu', 'build_centos7_cpu_make', false)
- utils.pack_lib('centos7_cpu_make', mx_lib_make)
+ utils.pack_lib(lib_name, mx_lib_make)
}
}
}
@@ -371,14 +387,14 @@ def compile_centos7_cpu_mkldnn() {
}]
}
-def compile_centos7_gpu() {
+def compile_centos7_gpu(lib_name) {
return ['GPU: CentOS 7': {
node(NODE_LINUX_CPU) {
ws('workspace/build-centos7-gpu') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('centos7_gpu_cu92', 'build_centos7_gpu', false)
- utils.pack_lib('centos7_gpu', mx_lib)
+ utils.pack_lib(lib_name, mx_lib)
}
}
}
@@ -465,42 +481,42 @@ def compile_armv8_jetson_gpu() {
}]
}
-def compile_armv6_cpu() {
+def compile_armv6_cpu(lib_name) {
return ['ARMv6':{
node(NODE_LINUX_CPU) {
ws('workspace/build-ARMv6') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('armv6', 'build_armv6', false)
- utils.pack_lib('armv6', mx_lib)
+ utils.pack_lib(lib_name, mx_lib)
}
}
}
}]
}
-def compile_armv7_cpu() {
+def compile_armv7_cpu(lib_name) {
return ['ARMv7':{
node(NODE_LINUX_CPU) {
ws('workspace/build-ARMv7') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('armv7', 'build_armv7', false)
- utils.pack_lib('armv7', mx_lib)
+ utils.pack_lib(lib_name, mx_lib)
}
}
}
}]
}
-def compile_armv8_cpu() {
+def compile_armv8_cpu(lib_name) {
return ['ARMv8':{
node(NODE_LINUX_CPU) {
ws('workspace/build-ARMv8') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('armv8', 'build_armv8', false)
- utils.pack_lib('armv8', mx_lib)
+ utils.pack_lib(lib_name, mx_lib)
}
}
}
@@ -533,56 +549,56 @@ def compile_armv7_android_cpu() {
}]
}
-def compile_unix_asan_cpu() {
+def compile_unix_asan_cpu(lib_name) {
return ['CPU: ASAN': {
node(NODE_LINUX_CPU) {
ws('workspace/build-cpu-asan') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('ubuntu_cpu', 'build_ubuntu_cpu_cmake_asan',
false)
- utils.pack_lib('cpu_asan', mx_lib_cpp_examples_cpu)
+ utils.pack_lib(lib_name, mx_lib_cpp_examples_cpu)
}
}
}
}]
}
-def compile_unix_gcc8_werror() {
+def compile_unix_gcc8_werror(lib_name) {
return ['CPU: GCC8 -WError': {
node(NODE_LINUX_CPU) {
ws('workspace/build-cpu-gcc8') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('ubuntu_cpu', 'build_ubuntu_cpu_gcc8_werror',
false)
- utils.pack_lib('cpu_gcc8', mx_lib)
+ utils.pack_lib(lib_name, mx_lib)
}
}
}
}]
}
-def compile_unix_clang10_werror() {
+def compile_unix_clang10_werror(lib_name) {
return ['CPU: Clang10 -WError': {
node(NODE_LINUX_CPU) {
ws('workspace/build-cpu-clang10') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('ubuntu_cpu', 'build_ubuntu_cpu_clang10_werror',
false)
- utils.pack_lib('cpu_clang10', mx_lib)
+ utils.pack_lib(lib_name, mx_lib)
}
}
}
}]
}
-def compile_unix_clang10_cuda_werror() {
+def compile_unix_clang10_cuda_werror(lib_name) {
return ['GPU: Clang10 -WError': {
node(NODE_LINUX_CPU) {
ws('workspace/build-cpu-clang10') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('ubuntu_gpu_cu101',
'build_ubuntu_gpu_clang10_werror', false)
- utils.pack_lib('gpu_clang10', mx_lib)
+ utils.pack_lib(lib_name, mx_lib)
}
}
}
@@ -615,91 +631,91 @@ def compile_unix_amalgamation() {
}]
}
-def compile_windows_cpu() {
+def compile_windows_cpu(lib_name) {
return ['Build CPU windows':{
node(NODE_WINDOWS_CPU) {
ws('workspace/build-cpu') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git_win()
powershell 'py -3 ci/build_windows.py -f WIN_CPU'
- stash includes: 'windows_package.7z', name: 'windows_package_cpu'
+ stash includes: 'windows_package.7z', name: lib_name
}
}
}
}]
}
-def compile_windows_cpu_mkldnn() {
+def compile_windows_cpu_mkldnn(lib_name) {
return ['Build CPU MKLDNN windows':{
node(NODE_WINDOWS_CPU) {
ws('workspace/build-cpu-mkldnn') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git_win()
powershell 'py -3 ci/build_windows.py -f WIN_CPU_MKLDNN'
- stash includes: 'windows_package.7z', name:
'windows_package_cpu_mkldnn'
+ stash includes: 'windows_package.7z', name: lib_name
}
}
}
}]
}
-def compile_windows_cpu_mkldnn_mkl() {
+def compile_windows_cpu_mkldnn_mkl(lib_name) {
return ['Build CPU MKLDNN MKL windows':{
node(NODE_WINDOWS_CPU) {
ws('workspace/build-cpu-mkldnn-mkl') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git_win()
powershell 'py -3 ci/build_windows.py -f WIN_CPU_MKLDNN_MKL'
- stash includes: 'windows_package.7z', name:
'windows_package_cpu_mkldnn_mkl'
+ stash includes: 'windows_package.7z', name: lib_name
}
}
}
}]
}
-def compile_windows_cpu_mkl() {
+def compile_windows_cpu_mkl(lib_name) {
return ['Build CPU MKL windows':{
node(NODE_WINDOWS_CPU) {
ws('workspace/build-cpu-mkl') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git_win()
powershell 'py -3 ci/build_windows.py -f WIN_CPU_MKL'
- stash includes: 'windows_package.7z', name:
'windows_package_cpu_mkl'
+ stash includes: 'windows_package.7z', name: lib_name
}
}
}
}]
}
-def compile_windows_gpu() {
+def compile_windows_gpu(lib_name) {
return ['Build GPU windows':{
node(NODE_WINDOWS_CPU) {
ws('workspace/build-gpu') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git_win()
powershell 'py -3 ci/build_windows.py -f WIN_GPU'
- stash includes: 'windows_package.7z', name: 'windows_package_gpu'
+ stash includes: 'windows_package.7z', name: lib_name
}
}
}
}]
}
-def compile_windows_gpu_mkldnn() {
+def compile_windows_gpu_mkldnn(lib_name) {
return ['Build GPU MKLDNN windows':{
node(NODE_WINDOWS_CPU) {
ws('workspace/build-gpu') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git_win()
powershell 'py -3 ci/build_windows.py -f WIN_GPU_MKLDNN'
- stash includes: 'windows_package.7z', name:
'windows_package_gpu_mkldnn'
+ stash includes: 'windows_package.7z', name: lib_name
}
}
}
}]
}
-def test_static_scala_cpu() {
+def compile_static_scala_cpu() {
return ['Static build CPU CentOS7 Scala' : {
node(NODE_LINUX_CPU) {
ws('workspace/ut-publish-scala-cpu') {
@@ -712,7 +728,7 @@ def test_static_scala_cpu() {
}]
}
-def test_static_python_cpu() {
+def compile_static_python_cpu() {
return ['Static build CPU CentOS7 Python' : {
node(NODE_LINUX_CPU) {
ws('workspace/ut-publish-python-cpu') {
@@ -725,7 +741,7 @@ def test_static_python_cpu() {
}]
}
-def test_static_python_cpu_cmake() {
+def compile_static_python_cpu_cmake() {
return ['Static build CPU CentOS7 Python with CMake' : {
node(NODE_LINUX_CPU) {
ws('workspace/ut-publish-python-cpu') {
@@ -738,7 +754,7 @@ def test_static_python_cpu_cmake() {
}]
}
-def test_static_python_gpu() {
+def compile_static_python_gpu() {
return ['Static build GPU CentOS7 Python' : {
node(NODE_LINUX_GPU) {
ws('workspace/ut-publish-python-gpu') {
@@ -751,7 +767,7 @@ def test_static_python_gpu() {
}]
}
-def test_static_python_gpu_cmake() {
+def compile_static_python_gpu_cmake() {
return ['Static build GPU CentOS7 Python with CMake' : {
node(NODE_LINUX_GPU) {
ws('workspace/ut-publish-python-gpu') {
@@ -764,12 +780,12 @@ def test_static_python_gpu_cmake() {
}]
}
-def test_unix_python3_cpu() {
+def test_unix_python3_cpu(lib_name) {
return ['Python3: CPU': {
node(NODE_LINUX_CPU) {
ws('workspace/ut-python3-cpu') {
try {
- utils.unpack_and_init('cpu', mx_lib, true)
+ utils.unpack_and_init(lib_name, mx_lib, true)
python3_ut('ubuntu_cpu')
utils.publish_test_coverage()
} finally {
@@ -781,12 +797,12 @@ def test_unix_python3_cpu() {
}]
}
-def test_unix_python3_mkl_cpu() {
+def test_unix_python3_mkl_cpu(lib_name) {
return ['Python3: MKL-CPU': {
node(NODE_LINUX_CPU) {
ws('workspace/ut-python3-cpu') {
try {
- utils.unpack_and_init('cpu_mkl', mx_lib, true)
+ utils.unpack_and_init(lib_name, mx_lib, true)
python3_ut('ubuntu_cpu')
utils.publish_test_coverage()
} finally {
@@ -798,12 +814,12 @@ def test_unix_python3_mkl_cpu() {
}]
}
-def test_unix_python3_gpu() {
+def test_unix_python3_gpu(lib_name) {
return ['Python3: GPU': {
node(NODE_LINUX_GPU) {
ws('workspace/ut-python3-gpu') {
try {
- utils.unpack_and_init('gpu', mx_lib_cython)
+ utils.unpack_and_init(lib_name, mx_lib_cython)
python3_gpu_ut_cython('ubuntu_gpu_cu101')
utils.publish_test_coverage()
} finally {
@@ -814,13 +830,13 @@ def test_unix_python3_gpu() {
}]
}
-def test_unix_python3_quantize_gpu() {
+def test_unix_python3_quantize_gpu(lib_name) {
return ['Python3: Quantize GPU': {
node(NODE_LINUX_GPU_P3) {
ws('workspace/ut-python3-quantize-gpu') {
timeout(time: max_time, unit: 'MINUTES') {
try {
- utils.unpack_and_init('gpu', mx_lib)
+ utils.unpack_and_init(lib_name, mx_lib)
utils.docker_run('ubuntu_gpu_cu101',
'unittest_ubuntu_python3_quantization_gpu', true)
utils.publish_test_coverage()
} finally {
@@ -848,12 +864,12 @@ def test_unix_python3_debug_cpu() {
}]
}
-def test_unix_python3_cpu_no_tvm_op() {
+def test_unix_python3_cpu_no_tvm_op(lib_name) {
return ['Python3: CPU TVM_OP OFF': {
node(NODE_LINUX_CPU) {
ws('workspace/ut-python3-cpu-no-tvm-op') {
try {
- utils.unpack_and_init('cpu_openblas_no_tvm_op',
mx_cmake_lib_no_tvm_op)
+ utils.unpack_and_init(lib_name, mx_cmake_lib_no_tvm_op)
python3_ut('ubuntu_cpu')
} finally {
utils.collect_test_results_unix('tests_unittest.xml',
'tests_python3_cpu_no_tvm_op_unittest.xml')
@@ -864,12 +880,12 @@ def test_unix_python3_cpu_no_tvm_op() {
}]
}
-def test_unix_python3_mkldnn_cpu() {
+def test_unix_python3_mkldnn_cpu(lib_name) {
return ['Python3: MKLDNN-CPU': {
node(NODE_LINUX_CPU) {
ws('workspace/ut-python3-mkldnn-cpu') {
try {
- utils.unpack_and_init('mkldnn_cpu', mx_mkldnn_lib, true)
+ utils.unpack_and_init(lib_name, mx_mkldnn_lib, true)
python3_ut_mkldnn('ubuntu_cpu')
utils.publish_test_coverage()
} finally {
@@ -881,12 +897,12 @@ def test_unix_python3_mkldnn_cpu() {
}]
}
-def test_unix_python3_mkldnn_mkl_cpu() {
+def test_unix_python3_mkldnn_mkl_cpu(lib_name) {
return ['Python3: MKLDNN-MKL-CPU': {
node(NODE_LINUX_CPU) {
ws('workspace/ut-python3-mkldnn-mkl-cpu') {
try {
- utils.unpack_and_init('mkldnn_mkl_cpu', mx_lib, true)
+ utils.unpack_and_init(lib_name, mx_lib, true)
python3_ut_mkldnn('ubuntu_cpu')
utils.publish_test_coverage()
} finally {
@@ -898,12 +914,12 @@ def test_unix_python3_mkldnn_mkl_cpu() {
}]
}
-def test_unix_python3_mkldnn_gpu() {
+def test_unix_python3_mkldnn_gpu(lib_name) {
return ['Python3: MKLDNN-GPU': {
node(NODE_LINUX_GPU) {
ws('workspace/ut-python3-mkldnn-gpu') {
try {
- utils.unpack_and_init('mkldnn_gpu', mx_mkldnn_lib)
+ utils.unpack_and_init(lib_name, mx_mkldnn_lib)
python3_gpu_ut('ubuntu_gpu_cu101')
utils.publish_test_coverage()
} finally {
@@ -914,12 +930,12 @@ def test_unix_python3_mkldnn_gpu() {
}]
}
-def test_unix_python3_mkldnn_nocudnn_gpu() {
+def test_unix_python3_mkldnn_nocudnn_gpu(lib_name) {
return ['Python3: MKLDNN-GPU-NOCUDNN': {
node(NODE_LINUX_GPU) {
ws('workspace/ut-python3-mkldnn-gpu-nocudnn') {
try {
- utils.unpack_and_init('mkldnn_gpu_nocudnn', mx_mkldnn_lib)
+ utils.unpack_and_init(lib_name, mx_mkldnn_lib)
python3_gpu_ut_nocudnn('ubuntu_gpu_cu101')
utils.publish_test_coverage()
} finally {
@@ -930,13 +946,13 @@ def test_unix_python3_mkldnn_nocudnn_gpu() {
}]
}
-def test_unix_python3_tensorrt_gpu() {
+def test_unix_python3_tensorrt_gpu(lib_name) {
return ['Python3: TensorRT GPU': {
node(NODE_LINUX_GPU_P3) {
ws('workspace/build-tensorrt') {
timeout(time: max_time, unit: 'MINUTES') {
try {
- utils.unpack_and_init('tensorrt', mx_tensorrt_lib)
+ utils.unpack_and_init(lib_name, mx_tensorrt_lib)
utils.docker_run('ubuntu_gpu_tensorrt',
'unittest_ubuntu_tensorrt_gpu', true)
utils.publish_test_coverage()
} finally {
@@ -948,12 +964,12 @@ def test_unix_python3_tensorrt_gpu() {
}]
}
-def test_unix_python3_integration_gpu() {
+def test_unix_python3_integration_gpu(lib_name) {
return ['Python Integration GPU': {
node(NODE_LINUX_GPU) {
ws('workspace/it-python-gpu') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('gpu', mx_lib)
+ utils.unpack_and_init(lib_name, mx_lib)
utils.docker_run('ubuntu_gpu_cu101',
'integrationtest_ubuntu_gpu_python', true)
utils.publish_test_coverage()
}
@@ -962,12 +978,12 @@ def test_unix_python3_integration_gpu() {
}]
}
-def test_unix_cpp_package_gpu() {
+def test_unix_cpp_package_gpu(lib_name) {
return ['cpp-package GPU Makefile': {
node(NODE_LINUX_GPU) {
ws('workspace/it-cpp-package') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('gpu_make', mx_lib_cpp_examples_make)
+ utils.unpack_and_init(lib_name, mx_lib_cpp_examples_make)
utils.docker_run('ubuntu_gpu_cu101',
'integrationtest_ubuntu_gpu_cpp_package', true)
utils.publish_test_coverage()
}
@@ -976,12 +992,12 @@ def test_unix_cpp_package_gpu() {
}]
}
-def test_unix_capi_cpp_package() {
+def test_unix_capi_cpp_package(lib_name) {
return ['capi-cpp-package GPU Makefile': {
node(NODE_LINUX_GPU) {
ws('workspace/it-capi-cpp-package') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('gpu_mkldnn_cpp_test_make',
mx_lib_cpp_capi_make)
+ utils.unpack_and_init(lib_name, mx_lib_cpp_capi_make)
utils.docker_run('ubuntu_gpu_cu101',
'integrationtest_ubuntu_gpu_capi_cpp_package', true)
utils.publish_test_coverage()
}
@@ -990,12 +1006,12 @@ def test_unix_capi_cpp_package() {
}]
}
-def test_unix_scala_cpu() {
+def test_unix_scala_cpu(lib_name) {
return ['Scala: CPU Makefile': {
node(NODE_LINUX_CPU) {
ws('workspace/ut-scala-cpu') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('cpu_make', mx_lib_make)
+ utils.unpack_and_init(lib_name, mx_lib_make)
utils.docker_run('ubuntu_cpu', 'integrationtest_ubuntu_cpu_scala',
false)
utils.publish_test_coverage()
}
@@ -1004,12 +1020,12 @@ def test_unix_scala_cpu() {
}]
}
-def test_unix_scala_mkldnn_cpu(){
+def test_unix_scala_mkldnn_cpu(lib_name){
return ['Scala: MKLDNN-CPU Makefile': {
node(NODE_LINUX_CPU) {
ws('workspace/ut-scala-mkldnn-cpu') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('mkldnn_cpu_make', mx_mkldnn_lib_make)
+ utils.unpack_and_init(lib_name, mx_mkldnn_lib_make)
utils.docker_run('ubuntu_cpu', 'integrationtest_ubuntu_cpu_scala',
false)
utils.publish_test_coverage()
}
@@ -1018,12 +1034,12 @@ def test_unix_scala_mkldnn_cpu(){
}]
}
-def test_unix_scala_gpu() {
+def test_unix_scala_gpu(lib_name) {
return ['Scala: GPU Makefile': {
node(NODE_LINUX_GPU) {
ws('workspace/ut-scala-gpu') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('gpu_make', mx_lib_make)
+ utils.unpack_and_init(lib_name, mx_lib_make)
utils.docker_run('ubuntu_gpu_cu101',
'integrationtest_ubuntu_gpu_scala', true)
utils.publish_test_coverage()
}
@@ -1032,12 +1048,12 @@ def test_unix_scala_gpu() {
}]
}
-def test_unix_clojure_cpu() {
+def test_unix_clojure_cpu(lib_name) {
return ['Clojure: CPU Makefile': {
node(NODE_LINUX_CPU) {
ws('workspace/ut-clojure-cpu') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('cpu_make', mx_lib_make)
+ utils.unpack_and_init(lib_name, mx_lib_make)
utils.docker_run('ubuntu_cpu', 'unittest_ubuntu_cpu_clojure',
false)
utils.publish_test_coverage()
}
@@ -1046,12 +1062,12 @@ def test_unix_clojure_cpu() {
}]
}
-def test_unix_clojure_integration_cpu() {
+def test_unix_clojure_integration_cpu(lib_name) {
return ['Clojure: CPU Integration Makefile': {
node(NODE_LINUX_CPU) {
ws('workspace/ut-clojure-integration-cpu') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('cpu_make', mx_lib_make)
+ utils.unpack_and_init(lib_name, mx_lib_make)
utils.docker_run('ubuntu_cpu',
'unittest_ubuntu_cpu_clojure_integration', false)
}
}
@@ -1059,12 +1075,12 @@ def test_unix_clojure_integration_cpu() {
}]
}
-def test_unix_r_cpu() {
+def test_unix_r_cpu(lib_name) {
return ['R: CPU': {
node(NODE_LINUX_CPU) {
ws('workspace/ut-r-cpu') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('cpu', mx_lib, true)
+ utils.unpack_and_init(lib_name, mx_lib, true)
utils.docker_run('ubuntu_cpu', 'unittest_ubuntu_cpu_R', false)
utils.publish_test_coverage()
}
@@ -1073,12 +1089,12 @@ def test_unix_r_cpu() {
}]
}
-def test_unix_r_mkldnn_cpu() {
+def test_unix_r_mkldnn_cpu(lib_name) {
return ['R: MKLDNN-CPU': {
node(NODE_LINUX_CPU) {
ws('workspace/ut-r-mkldnn-cpu') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('mkldnn_cpu', mx_mkldnn_lib, true)
+ utils.unpack_and_init(lib_name, mx_mkldnn_lib, true)
utils.docker_run('ubuntu_cpu', 'unittest_ubuntu_minimal_R', false)
utils.publish_test_coverage()
}
@@ -1087,12 +1103,12 @@ def test_unix_r_mkldnn_cpu() {
}]
}
-def test_unix_perl_cpu() {
+def test_unix_perl_cpu(lib_name) {
return ['Perl: CPU Makefile': {
node(NODE_LINUX_CPU) {
ws('workspace/ut-perl-cpu') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('cpu_make', mx_lib_make)
+ utils.unpack_and_init(lib_name, mx_lib_make)
utils.docker_run('ubuntu_cpu', 'unittest_ubuntu_cpugpu_perl',
false)
utils.publish_test_coverage()
}
@@ -1101,12 +1117,12 @@ def test_unix_perl_cpu() {
}]
}
-def test_unix_cpp_gpu() {
+def test_unix_cpp_gpu(lib_name) {
return ['Cpp: GPU': {
node(NODE_LINUX_GPU) {
ws('workspace/ut-cpp-gpu') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('cmake_gpu', mx_cmake_lib)
+ utils.unpack_and_init(lib_name, mx_cmake_lib)
utils.docker_run('ubuntu_gpu_cu101', 'unittest_cpp', true)
utils.publish_test_coverage()
}
@@ -1115,12 +1131,12 @@ def test_unix_cpp_gpu() {
}]
}
-def test_unix_cpp_cpu() {
+def test_unix_cpp_cpu(lib_name) {
return ['Cpp: CPU': {
node(NODE_LINUX_CPU) {
ws('workspace/ut-cpp-cpu') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('cpu_debug', mx_cmake_lib_debug, true)
+ utils.unpack_and_init(lib_name, mx_cmake_lib_debug, true)
utils.docker_run('ubuntu_cpu', 'unittest_cpp', false)
utils.publish_test_coverage()
}
@@ -1129,12 +1145,12 @@ def test_unix_cpp_cpu() {
}]
}
-def test_unix_perl_gpu() {
+def test_unix_perl_gpu(lib_name) {
return ['Perl: GPU Makefile': {
node(NODE_LINUX_GPU) {
ws('workspace/ut-perl-gpu') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('gpu_make', mx_lib_make)
+ utils.unpack_and_init(lib_name, mx_lib_make)
utils.docker_run('ubuntu_gpu_cu101',
'unittest_ubuntu_cpugpu_perl', true)
utils.publish_test_coverage()
}
@@ -1143,12 +1159,12 @@ def test_unix_perl_gpu() {
}]
}
-def test_unix_r_gpu() {
+def test_unix_r_gpu(lib_name) {
return ['R: GPU': {
node(NODE_LINUX_GPU) {
ws('workspace/ut-r-gpu') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('gpu', mx_lib)
+ utils.unpack_and_init(lib_name, mx_lib)
utils.docker_run('ubuntu_gpu_cu101', 'unittest_ubuntu_gpu_R', true)
utils.publish_test_coverage()
}
@@ -1157,12 +1173,12 @@ def test_unix_r_gpu() {
}]
}
-def test_unix_julia07_cpu() {
+def test_unix_julia07_cpu(lib_name) {
return ['Julia 0.7: CPU': {
node(NODE_LINUX_CPU) {
ws('workspace/ut-it-julia07-cpu') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('cpu', mx_lib, true)
+ utils.unpack_and_init(lib_name, mx_lib, true)
utils.docker_run('ubuntu_cpu', 'unittest_ubuntu_cpu_julia07',
false)
}
}
@@ -1170,12 +1186,12 @@ def test_unix_julia07_cpu() {
}]
}
-def test_unix_julia10_cpu() {
+def test_unix_julia10_cpu(lib_name) {
return ['Julia 1.0: CPU': {
node(NODE_LINUX_CPU) {
ws('workspace/ut-it-julia10-cpu') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('cpu', mx_lib, true)
+ utils.unpack_and_init(lib_name, mx_lib, true)
utils.docker_run('ubuntu_cpu', 'unittest_ubuntu_cpu_julia10',
false)
}
}
@@ -1183,12 +1199,12 @@ def test_unix_julia10_cpu() {
}]
}
-def test_unix_onnx_cpu() {
+def test_unix_onnx_cpu(lib_name) {
return ['Onnx: CPU Makefile': {
node(NODE_LINUX_CPU) {
ws('workspace/it-onnx-cpu') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('cpu_make', mx_lib_make)
+ utils.unpack_and_init(lib_name, mx_lib_make)
utils.docker_run('ubuntu_cpu', 'integrationtest_ubuntu_cpu_onnx',
false)
utils.publish_test_coverage()
}
@@ -1197,12 +1213,12 @@ def test_unix_onnx_cpu() {
}]
}
-def test_unix_distributed_kvstore_cpu() {
+def test_unix_distributed_kvstore_cpu(lib_name) {
return ['dist-kvstore tests CPU': {
node(NODE_LINUX_CPU) {
ws('workspace/it-dist-kvstore') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('cpu', mx_lib, true)
+ utils.unpack_and_init(lib_name, mx_lib, true)
utils.docker_run('ubuntu_cpu',
'integrationtest_ubuntu_cpu_dist_kvstore', false)
utils.publish_test_coverage()
}
@@ -1211,12 +1227,12 @@ def test_unix_distributed_kvstore_cpu() {
}]
}
-def test_unix_distributed_kvstore_gpu() {
+def test_unix_distributed_kvstore_gpu(lib_name) {
return ['dist-kvstore tests GPU': {
node(NODE_LINUX_GPU) {
ws('workspace/it-dist-kvstore') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('gpu', mx_lib)
+ utils.unpack_and_init(lib_name, mx_lib)
utils.docker_run('ubuntu_gpu_cu101',
'integrationtest_ubuntu_gpu_dist_kvstore', true)
utils.publish_test_coverage()
}
@@ -1225,13 +1241,13 @@ def test_unix_distributed_kvstore_gpu() {
}]
}
-def test_centos7_python3_cpu() {
+def test_centos7_python3_cpu(lib_name) {
return ['Python3: CentOS 7 CPU': {
node(NODE_LINUX_CPU) {
ws('workspace/build-centos7-cpu') {
timeout(time: max_time, unit: 'MINUTES') {
try {
- utils.unpack_and_init('centos7_cpu', mx_lib, true)
+ utils.unpack_and_init(lib_name, mx_lib, true)
utils.docker_run('centos7_cpu', 'unittest_centos7_cpu', false)
utils.publish_test_coverage()
} finally {
@@ -1244,13 +1260,13 @@ def test_centos7_python3_cpu() {
}]
}
-def test_centos7_python3_gpu() {
+def test_centos7_python3_gpu(lib_name) {
return ['Python3: CentOS 7 GPU': {
node(NODE_LINUX_GPU) {
ws('workspace/build-centos7-gpu') {
timeout(time: max_time, unit: 'MINUTES') {
try {
- utils.unpack_and_init('centos7_gpu', mx_lib)
+ utils.unpack_and_init(lib_name, mx_lib)
utils.docker_run('centos7_gpu_cu92', 'unittest_centos7_gpu',
true)
utils.publish_test_coverage()
} finally {
@@ -1262,12 +1278,12 @@ def test_centos7_python3_gpu() {
}]
}
-def test_centos7_scala_cpu() {
+def test_centos7_scala_cpu(lib_name) {
return ['Scala: CentOS CPU Makefile': {
node(NODE_LINUX_CPU) {
ws('workspace/ut-scala-centos7-cpu') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('centos7_cpu_make', mx_lib_make)
+ utils.unpack_and_init(lib_name, mx_lib_make)
utils.docker_run('centos7_cpu', 'unittest_centos7_cpu_scala',
false)
utils.publish_test_coverage()
}
@@ -1276,14 +1292,14 @@ def test_centos7_scala_cpu() {
}]
}
-def test_windows_python3_gpu() {
+def test_windows_python3_gpu(lib_name) {
return ['Python 3: GPU Win':{
node(NODE_WINDOWS_GPU) {
timeout(time: max_time, unit: 'MINUTES') {
ws('workspace/ut-python-gpu') {
try {
utils.init_git_win()
- unstash 'windows_package_gpu'
+ unstash lib_name
powershell 'ci/windows/test_py3_gpu.ps1'
} finally {
utils.collect_test_results_windows('tests_forward.xml',
'tests_gpu_forward_windows_python3_gpu.xml')
@@ -1295,14 +1311,14 @@ def test_windows_python3_gpu() {
}]
}
-def test_windows_python3_gpu_mkldnn() {
+def test_windows_python3_gpu_mkldnn(lib_name) {
return ['Python 3: MKLDNN-GPU Win':{
node(NODE_WINDOWS_GPU) {
timeout(time: max_time, unit: 'MINUTES') {
ws('workspace/ut-python-gpu') {
try {
utils.init_git_win()
- unstash 'windows_package_gpu_mkldnn'
+ unstash lib_name
powershell 'ci/windows/test_py3_gpu.ps1'
} finally {
utils.collect_test_results_windows('tests_forward.xml',
'tests_gpu_forward_windows_python3_gpu_mkldnn.xml')
@@ -1314,14 +1330,14 @@ def test_windows_python3_gpu_mkldnn() {
}]
}
-def test_windows_python3_cpu() {
+def test_windows_python3_cpu(lib_name) {
return ['Python 3: CPU Win': {
node(NODE_WINDOWS_CPU) {
timeout(time: max_time, unit: 'MINUTES') {
ws('workspace/ut-python-cpu') {
try {
utils.init_git_win()
- unstash 'windows_package_cpu'
+ unstash lib_name
powershell 'ci/windows/test_py3_cpu.ps1'
} finally {
utils.collect_test_results_windows('tests_unittest.xml',
'tests_unittest_windows_python3_cpu.xml')
@@ -1332,13 +1348,13 @@ def test_windows_python3_cpu() {
}]
}
-def test_windows_julia07_cpu() {
+def test_windows_julia07_cpu(lib_name) {
return ['Julia 0.7: CPU Win': {
node(NODE_WINDOWS_CPU) {
ws('workspace/ut-julia07-cpu') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git_win()
- unstash 'windows_package_cpu'
+ unstash lib_name
powershell 'ci/windows/test_jl07_cpu.ps1'
}
}
@@ -1346,13 +1362,13 @@ def test_windows_julia07_cpu() {
}]
}
-def test_windows_julia10_cpu() {
+def test_windows_julia10_cpu(lib_name) {
return ['Julia 1.0: CPU Win': {
node(NODE_WINDOWS_CPU) {
ws('workspace/ut-julia10-cpu') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git_win()
- unstash 'windows_package_cpu'
+ unstash lib_name
powershell 'ci/windows/test_jl10_cpu.ps1'
}
}
@@ -1360,12 +1376,12 @@ def test_windows_julia10_cpu() {
}]
}
-def test_qemu_armv7_cpu() {
+def test_qemu_armv7_cpu(lib_name) {
return ['ARMv7 QEMU': {
node(NODE_LINUX_CPU) {
ws('workspace/ut-armv7-qemu') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('armv7', mx_lib)
+ utils.unpack_and_init(lib_name, mx_lib)
utils.docker_run('test.armv7', 'unittest_ubuntu_python3_arm',
false)
}
}
@@ -1373,12 +1389,12 @@ def test_qemu_armv7_cpu() {
}]
}
-def test_qemu_armv8_cpu() {
+def test_qemu_armv8_cpu(lib_name) {
return ['ARMv8 QEMU': {
node(NODE_LINUX_CPU) {
ws('workspace/ut-armv8-qemu') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('armv8', mx_lib)
+ utils.unpack_and_init(lib_name, mx_lib)
utils.docker_run('test.armv8', 'unittest_ubuntu_python3_arm',
false)
}
}
@@ -1387,14 +1403,14 @@ def test_qemu_armv8_cpu() {
}
// This creates the MXNet binary needed for generating different docs sets
-def compile_unix_lite() {
+def compile_unix_lite(lib_name) {
return ['MXNet lib': {
node(NODE_LINUX_CPU) {
ws('workspace/docs') {
timeout(time: max_time, unit: 'MINUTES') {
utils.init_git()
utils.docker_run('ubuntu_cpu_lite', 'build_ubuntu_cpu_docs', false)
- utils.pack_lib('libmxnet', 'lib/libmxnet.so', false)
+ utils.pack_lib(lib_name, 'lib/libmxnet.so', false)
}
}
}
@@ -1417,12 +1433,12 @@ def should_pack_website() {
// Stashing is only needed for master for website publishing or for testing
"new_"
// Call this function from Jenkins to generate just the Python API microsite
artifacts.
-def docs_python() {
+def docs_python(lib_name) {
return ['Python Docs': {
node(NODE_LINUX_CPU) {
ws('workspace/docs') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('libmxnet', 'lib/libmxnet.so', false)
+ utils.unpack_and_init(lib_name, 'lib/libmxnet.so', false)
utils.docker_run('ubuntu_cpu_python', 'build_python_docs', false)
if (should_pack_website()) {
utils.pack_lib('python-artifacts',
'docs/_build/python-artifacts.tgz', false)
@@ -1435,12 +1451,12 @@ def docs_python() {
// Call this function from Jenkins to generate just the C and C++ API
microsite artifacts.
-def docs_c() {
+def docs_c(lib_name) {
return ['C Docs': {
node(NODE_LINUX_CPU) {
ws('workspace/docs') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('libmxnet', 'lib/libmxnet.so', false)
+ utils.unpack_and_init(lib_name, 'lib/libmxnet.so', false)
utils.docker_run('ubuntu_cpu_c', 'build_c_docs', false)
if (should_pack_website()) {
utils.pack_lib('c-artifacts', 'docs/_build/c-artifacts.tgz',
false)
@@ -1453,12 +1469,12 @@ def docs_c() {
// Call this function from Jenkins to generate just the Julia API microsite
artifacts.
-def docs_julia() {
+def docs_julia(lib_name) {
return ['Julia Docs': {
node(NODE_LINUX_CPU) {
ws('workspace/docs') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('libmxnet', 'lib/libmxnet.so', false)
+ utils.unpack_and_init(lib_name, 'lib/libmxnet.so', false)
utils.docker_run('ubuntu_cpu_julia', 'build_julia_docs', false)
if (should_pack_website()) {
utils.pack_lib('julia-artifacts',
'docs/_build/julia-artifacts.tgz', false)
@@ -1471,12 +1487,12 @@ def docs_julia() {
// Call this function from Jenkins to generate just the R API PDF artifact.
-def docs_r() {
+def docs_r(lib_name) {
return ['R Docs': {
node(NODE_LINUX_CPU) {
ws('workspace/docs') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('libmxnet', 'lib/libmxnet.so', false)
+ utils.unpack_and_init(lib_name, 'lib/libmxnet.so', false)
utils.docker_run('ubuntu_cpu_r', 'build_r_docs', false)
if (should_pack_website()) {
utils.pack_lib('r-artifacts', 'docs/_build/r-artifacts.tgz',
false)
@@ -1490,12 +1506,12 @@ def docs_r() {
// Call this function from Jenkins to generate just the Scala API microsite
artifacts.
// It will also generate the Scala package.
-def docs_scala() {
+def docs_scala(lib_name) {
return ['Scala Docs': {
node(NODE_LINUX_CPU) {
ws('workspace/docs') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('libmxnet', 'lib/libmxnet.so', false)
+ utils.unpack_and_init(lib_name, 'lib/libmxnet.so', false)
utils.docker_run('ubuntu_cpu_scala', 'build_scala_docs', false)
if (should_pack_website()) {
utils.pack_lib('scala-artifacts',
'docs/_build/scala-artifacts.tgz', false)
@@ -1509,12 +1525,12 @@ def docs_scala() {
// Call this function from Jenkins to generate just the Java API microsite
artifacts.
// It will also generate the Scala package.
-def docs_java() {
+def docs_java(lib_name) {
return ['Java Docs': {
node(NODE_LINUX_CPU) {
ws('workspace/docs') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('libmxnet', 'lib/libmxnet.so', false)
+ utils.unpack_and_init(lib_name, 'lib/libmxnet.so', false)
utils.docker_run('ubuntu_cpu_scala', 'build_java_docs', false)
if (should_pack_website()) {
utils.pack_lib('java-artifacts',
'docs/_build/java-artifacts.tgz', false)
@@ -1528,12 +1544,12 @@ def docs_java() {
// Call this function from Jenkins to generate just the Clojure API microsite
artifacts.
// It will also generate the Scala package.
-def docs_clojure() {
+def docs_clojure(lib_name) {
return ['Clojure Docs': {
node(NODE_LINUX_CPU) {
ws('workspace/docs') {
timeout(time: max_time, unit: 'MINUTES') {
- utils.unpack_and_init('libmxnet', 'lib/libmxnet.so', false)
+ utils.unpack_and_init(lib_name, 'lib/libmxnet.so', false)
utils.docker_run('ubuntu_cpu_scala', 'build_clojure_docs', false)
if (should_pack_website()) {
utils.pack_lib('clojure-artifacts',
'docs/_build/clojure-artifacts.tgz', false)
@@ -1671,11 +1687,11 @@ def docs_publish_beta() {
}
-def misc_asan_cpu() {
+def misc_asan_cpu(lib_name) {
return ['CPU ASAN': {
node(NODE_LINUX_CPU) {
ws('workspace/ut-python3-cpu-asan') {
- utils.unpack_and_init('cpu_asan', mx_lib_cpp_examples_cpu)
+ utils.unpack_and_init(lib_name, mx_lib_cpp_examples_cpu)
utils.docker_run('ubuntu_cpu', 'integrationtest_ubuntu_cpu_asan',
false)
}
}
diff --git a/ci/jenkins/Jenkinsfile_centos_cpu
b/ci/jenkins/Jenkinsfile_centos_cpu
index 374be1c..c5dd1d5 100644
--- a/ci/jenkins/Jenkinsfile_centos_cpu
+++ b/ci/jenkins/Jenkinsfile_centos_cpu
@@ -34,17 +34,17 @@ utils.assign_node_labels(utility: 'utility', linux_cpu:
'mxnetlinux-cpu')
utils.main_wrapper(
core_logic: {
utils.parallel_stage('Build', [
- custom_steps.compile_centos7_cpu(),
- custom_steps.compile_centos7_cpu_make(),
- custom_steps.compile_centos7_cpu_mkldnn()
+ custom_steps.compile_centos7_cpu('centos7_cpu'),
+ custom_steps.compile_centos7_cpu_make('centos7_cpu_make'),
+ custom_steps.compile_centos7_cpu_mkldnn(),
+ custom_steps.compile_static_scala_cpu(),
+ custom_steps.compile_static_python_cpu(),
+ custom_steps.compile_static_python_cpu_cmake()
])
utils.parallel_stage('Tests', [
- custom_steps.test_centos7_python3_cpu(),
- custom_steps.test_centos7_scala_cpu(),
- custom_steps.test_static_scala_cpu(),
- custom_steps.test_static_python_cpu(),
- custom_steps.test_static_python_cpu_cmake(),
+ custom_steps.test_centos7_python3_cpu('centos7_cpu'),
+ custom_steps.test_centos7_scala_cpu('centos7_cpu_make')
])
}
,
diff --git a/ci/jenkins/Jenkinsfile_centos_gpu
b/ci/jenkins/Jenkinsfile_centos_gpu
index 3c6c28d..4b07677 100644
--- a/ci/jenkins/Jenkinsfile_centos_gpu
+++ b/ci/jenkins/Jenkinsfile_centos_gpu
@@ -34,13 +34,13 @@ utils.assign_node_labels(utility: 'utility', linux_cpu:
'mxnetlinux-cpu', linux_
utils.main_wrapper(
core_logic: {
utils.parallel_stage('Build', [
- custom_steps.compile_centos7_gpu()
+ custom_steps.compile_centos7_gpu('centos7_gpu'),
+ custom_steps.compile_static_python_gpu(),
+ custom_steps.compile_static_python_gpu_cmake()
])
utils.parallel_stage('Tests', [
- custom_steps.test_centos7_python3_gpu(),
- custom_steps.test_static_python_gpu(),
- custom_steps.test_static_python_gpu_cmake(),
+ custom_steps.test_centos7_python3_gpu('centos7_gpu')
])
}
,
diff --git a/ci/jenkins/Jenkinsfile_edge b/ci/jenkins/Jenkinsfile_edge
index 857d081..6f1a2bf 100644
--- a/ci/jenkins/Jenkinsfile_edge
+++ b/ci/jenkins/Jenkinsfile_edge
@@ -35,16 +35,16 @@ utils.main_wrapper(
core_logic: {
utils.parallel_stage('Build', [
custom_steps.compile_armv8_jetson_gpu(),
- custom_steps.compile_armv7_cpu(),
- custom_steps.compile_armv6_cpu(),
- custom_steps.compile_armv8_cpu(),
+ custom_steps.compile_armv7_cpu('armv7'),
+ custom_steps.compile_armv6_cpu('armv6'),
+ custom_steps.compile_armv8_cpu('armv8'),
custom_steps.compile_armv8_android_cpu(),
custom_steps.compile_armv7_android_cpu()
])
utils.parallel_stage('Tests', [
- custom_steps.test_qemu_armv7_cpu(),
- custom_steps.test_qemu_armv8_cpu()
+ custom_steps.test_qemu_armv7_cpu('armv7'),
+ custom_steps.test_qemu_armv8_cpu('armv8')
])
}
,
diff --git a/ci/jenkins/Jenkinsfile_miscellaneous
b/ci/jenkins/Jenkinsfile_miscellaneous
index 2900e37..d6376a7 100644
--- a/ci/jenkins/Jenkinsfile_miscellaneous
+++ b/ci/jenkins/Jenkinsfile_miscellaneous
@@ -35,16 +35,16 @@ utils.assign_node_labels(utility: 'utility', linux_cpu:
'mxnetlinux-cpu', linux_
utils.main_wrapper(
core_logic: {
utils.parallel_stage('Build', [
- custom_steps.compile_unix_asan_cpu(),
- custom_steps.compile_unix_gcc8_werror(),
- custom_steps.compile_unix_clang10_werror(),
- custom_steps.compile_unix_clang10_cuda_werror(),
+ custom_steps.compile_unix_asan_cpu('cpu_asan'),
+ custom_steps.compile_unix_gcc8_werror('cpu_gcc8'),
+ custom_steps.compile_unix_clang10_werror('cpu_clang10'),
+ custom_steps.compile_unix_clang10_cuda_werror('gpu_clang10'),
custom_steps.compile_unix_amalgamation_min(),
custom_steps.compile_unix_amalgamation()
])
utils.parallel_stage('Tests', [
- custom_steps.misc_asan_cpu(),
+ custom_steps.misc_asan_cpu('cpu_asan'),
custom_steps.misc_test_docker_cache_build()
])
}
diff --git a/ci/jenkins/Jenkinsfile_tools b/ci/jenkins/Jenkinsfile_tools
index f9e17ed..ac92eb0 100644
--- a/ci/jenkins/Jenkinsfile_tools
+++ b/ci/jenkins/Jenkinsfile_tools
@@ -37,7 +37,7 @@ utils.main_wrapper(
core_logic: {
utils.parallel_stage('Tooling Tests', [
custom_steps.test_artifact_repository(),
- ])
+ ])
}
,
failure_handler: {
diff --git a/ci/jenkins/Jenkinsfile_unix_cpu b/ci/jenkins/Jenkinsfile_unix_cpu
index cccbdd5..9335b5b 100644
--- a/ci/jenkins/Jenkinsfile_unix_cpu
+++ b/ci/jenkins/Jenkinsfile_unix_cpu
@@ -34,40 +34,39 @@ utils.assign_node_labels(utility: 'utility', linux_cpu:
'mxnetlinux-cpu')
utils.main_wrapper(
core_logic: {
utils.parallel_stage('Build', [
- custom_steps.compile_unix_cpu_openblas(),
- custom_steps.compile_unix_cpu_openblas_make(),
- custom_steps.compile_unix_openblas_debug_cpu(),
- custom_steps.compile_unix_mkl_cpu(),
- custom_steps.compile_unix_mkldnn_cpu(),
- custom_steps.compile_unix_mkldnn_cpu_make(),
- custom_steps.compile_unix_mkldnn_mkl_cpu(),
- custom_steps.compile_unix_int64_cpu(),
- custom_steps.compile_unix_openblas_cpu_no_tvm_op(),
+ custom_steps.compile_unix_cpu_openblas('cpu'),
+ custom_steps.compile_unix_cpu_openblas_make('cpu_make'),
+ custom_steps.compile_unix_openblas_debug_cpu('cpu_debug'),
+ custom_steps.compile_unix_mkl_cpu('cpu_mkl'),
+ custom_steps.compile_unix_mkldnn_cpu('mkldnn_cpu'),
+ custom_steps.compile_unix_mkldnn_cpu_make('mkldnn_cpu_make'),
+ custom_steps.compile_unix_mkldnn_mkl_cpu('mkldnn_mkl_cpu'),
+ custom_steps.compile_unix_int64_cpu('ubuntu_cpu'),
+ custom_steps.compile_unix_openblas_cpu_no_tvm_op('cpu_openblas_no_tvm_op'),
])
utils.parallel_stage('Tests', [
- custom_steps.test_unix_python3_cpu(),
- custom_steps.test_unix_python3_debug_cpu(),
- custom_steps.test_unix_python3_mkl_cpu(),
- custom_steps.test_unix_python3_mkldnn_cpu(),
- custom_steps.test_unix_python3_mkldnn_mkl_cpu(),
- custom_steps.test_unix_scala_cpu(),
- custom_steps.test_unix_scala_mkldnn_cpu(),
- custom_steps.test_unix_clojure_cpu(),
- custom_steps.test_unix_clojure_integration_cpu(),
- custom_steps.test_unix_perl_cpu(),
- custom_steps.test_unix_r_cpu(),
- custom_steps.test_unix_r_mkldnn_cpu(),
- custom_steps.test_unix_julia07_cpu(),
- custom_steps.test_unix_julia10_cpu(),
- custom_steps.test_unix_onnx_cpu(),
- custom_steps.test_unix_cpp_cpu(),
+ custom_steps.test_unix_python3_cpu('cpu'),
+ custom_steps.test_unix_python3_mkl_cpu('cpu_mkl'),
+ custom_steps.test_unix_python3_mkldnn_cpu('mkldnn_cpu'),
+ custom_steps.test_unix_python3_mkldnn_mkl_cpu('mkldnn_mkl_cpu'),
+ custom_steps.test_unix_scala_cpu('cpu_make'),
+ custom_steps.test_unix_scala_mkldnn_cpu('mkldnn_cpu_make'),
+ custom_steps.test_unix_clojure_cpu('cpu_make'),
+ custom_steps.test_unix_clojure_integration_cpu('cpu_make'),
+ custom_steps.test_unix_perl_cpu('cpu_make'),
+ custom_steps.test_unix_r_cpu('cpu'),
+ custom_steps.test_unix_r_mkldnn_cpu('mkldnn_cpu'),
+ custom_steps.test_unix_julia07_cpu('cpu'),
+ custom_steps.test_unix_julia10_cpu('cpu'),
+ custom_steps.test_unix_onnx_cpu('cpu_make'),
+ custom_steps.test_unix_cpp_cpu('cpu_debug'),
/* Disabled due to master build failure:
*
http://jenkins.mxnet-ci.amazon-ml.com/blue/organizations/jenkins/incubator-mxnet/detail/master/1221/pipeline/
* https://github.com/apache/incubator-mxnet/issues/11801
- custom_steps.test_unix_distributed_kvstore_cpu()
+ custom_steps.test_unix_distributed_kvstore_cpu('cpu')
*/
- custom_steps.test_unix_python3_cpu_no_tvm_op(),
+ custom_steps.test_unix_python3_cpu_no_tvm_op('cpu_openblas_no_tvm_op'),
])
}
,
diff --git a/ci/jenkins/Jenkinsfile_unix_gpu b/ci/jenkins/Jenkinsfile_unix_gpu
index 0e2310f..ece2bbb 100644
--- a/ci/jenkins/Jenkinsfile_unix_gpu
+++ b/ci/jenkins/Jenkinsfile_unix_gpu
@@ -34,32 +34,33 @@ utils.assign_node_labels(utility: 'utility', linux_cpu:
'mxnetlinux-cpu', linux_
utils.main_wrapper(
core_logic: {
utils.parallel_stage('Build', [
- custom_steps.compile_unix_mkldnn_gpu(),
- custom_steps.compile_unix_mkldnn_nocudnn_gpu(),
- custom_steps.compile_unix_full_gpu(),
- custom_steps.compile_unix_full_gpu_make(),
- custom_steps.compile_unix_cmake_gpu(),
- custom_steps.compile_unix_tensorrt_gpu(),
- custom_steps.compile_unix_int64_gpu(),
- custom_steps.compile_unix_cmake_gpu_no_rtc(),
- custom_steps.compile_unix_full_gpu_mkldnn_cpp_test()
+ custom_steps.compile_unix_mkldnn_gpu('mkldnn_gpu'),
+ custom_steps.compile_unix_mkldnn_nocudnn_gpu('mkldnn_gpu_nocudnn'),
+ custom_steps.compile_unix_full_gpu('gpu'),
+ custom_steps.compile_unix_full_gpu_make('gpu_make'),
+ custom_steps.compile_unix_full_gpu_debug('gpu_debug'),
+ custom_steps.compile_unix_cmake_gpu('cmake_gpu'),
+ custom_steps.compile_unix_tensorrt_gpu('tensorrt'),
+ custom_steps.compile_unix_int64_gpu('gpu_int64'),
+ custom_steps.compile_unix_cmake_gpu_no_rtc('gpu_no_rtc'),
+
custom_steps.compile_unix_full_gpu_mkldnn_cpp_test('gpu_mkldnn_cpp_test_make')
])
utils.parallel_stage('Tests', [
- custom_steps.test_unix_python3_gpu(),
- custom_steps.test_unix_python3_quantize_gpu(),
- custom_steps.test_unix_python3_mkldnn_gpu(),
- custom_steps.test_unix_python3_mkldnn_nocudnn_gpu(),
- custom_steps.test_unix_python3_tensorrt_gpu(),
- custom_steps.test_unix_perl_gpu(),
- custom_steps.test_unix_r_gpu(),
- custom_steps.test_unix_cpp_gpu(),
- custom_steps.test_unix_python3_integration_gpu(),
- custom_steps.test_unix_cpp_package_gpu(),
- custom_steps.test_unix_scala_gpu(),
+ custom_steps.test_unix_python3_gpu('gpu'),
+ custom_steps.test_unix_python3_quantize_gpu('gpu'),
+ custom_steps.test_unix_python3_mkldnn_gpu('mkldnn_gpu'),
+ custom_steps.test_unix_python3_mkldnn_nocudnn_gpu('mkldnn_gpu_nocudnn'),
+ custom_steps.test_unix_python3_tensorrt_gpu('tensorrt'),
+ custom_steps.test_unix_perl_gpu('gpu_make'),
+ custom_steps.test_unix_r_gpu('gpu'),
+ custom_steps.test_unix_cpp_gpu('cmake_gpu'),
+ custom_steps.test_unix_python3_integration_gpu('gpu'),
+ custom_steps.test_unix_cpp_package_gpu('gpu_make'),
+ custom_steps.test_unix_scala_gpu('gpu_make'),
// TODO(szha): fix and reenable the hanging issue. tracked in #18098
- // custom_steps.test_unix_distributed_kvstore_gpu(),
- custom_steps.test_unix_capi_cpp_package(),
+ // custom_steps.test_unix_distributed_kvstore_gpu('gpu'),
+ custom_steps.test_unix_capi_cpp_package('gpu_mkldnn_cpp_test_make'),
])
}
,
diff --git a/ci/jenkins/Jenkinsfile_website_beta
b/ci/jenkins/Jenkinsfile_website_beta
index 55c8ab8..a28e4b9 100644
--- a/ci/jenkins/Jenkinsfile_website_beta
+++ b/ci/jenkins/Jenkinsfile_website_beta
@@ -36,13 +36,13 @@ utils.assign_node_labels(utility: 'restricted-utility',
linux_cpu: 'restricted-m
utils.main_wrapper(
core_logic: {
utils.parallel_stage('Build', [
- custom_steps.compile_unix_lite()
+ custom_steps.compile_unix_lite('libmxnet')
])
utils.parallel_stage('Build Docs', [
// Only building a subset of the docs for previewing on staging
custom_steps.docs_jekyll(),
- custom_steps.docs_python()
+ custom_steps.docs_python('libmxnet')
])
utils.parallel_stage('Prepare', [
diff --git a/ci/jenkins/Jenkinsfile_website_c_docs
b/ci/jenkins/Jenkinsfile_website_c_docs
index e678920..5c6988d 100644
--- a/ci/jenkins/Jenkinsfile_website_c_docs
+++ b/ci/jenkins/Jenkinsfile_website_c_docs
@@ -34,11 +34,11 @@ utils.assign_node_labels(utility: 'utility', linux_cpu:
'mxnetlinux-cpu')
utils.main_wrapper(
core_logic: {
utils.parallel_stage('Build', [
- custom_steps.compile_unix_lite()
+ custom_steps.compile_unix_lite('libmxnet')
])
-
+
utils.parallel_stage('C Docs', [
- custom_steps.docs_c()
+ custom_steps.docs_c('libmxnet')
])
}
diff --git a/ci/jenkins/Jenkinsfile_website_clojure_docs
b/ci/jenkins/Jenkinsfile_website_clojure_docs
index 697dca4..d196505 100644
--- a/ci/jenkins/Jenkinsfile_website_clojure_docs
+++ b/ci/jenkins/Jenkinsfile_website_clojure_docs
@@ -34,11 +34,11 @@ utils.assign_node_labels(utility: 'utility', linux_cpu:
'mxnetlinux-cpu')
utils.main_wrapper(
core_logic: {
utils.parallel_stage('Build', [
- custom_steps.compile_unix_lite()
+ custom_steps.compile_unix_lite('libmxnet')
])
-
+
utils.parallel_stage('Clojure Docs', [
- custom_steps.docs_clojure()
+ custom_steps.docs_clojure('libmxnet')
])
diff --git a/ci/jenkins/Jenkinsfile_website_full
b/ci/jenkins/Jenkinsfile_website_full
index ecf1f29..9eadf7b 100644
--- a/ci/jenkins/Jenkinsfile_website_full
+++ b/ci/jenkins/Jenkinsfile_website_full
@@ -35,18 +35,18 @@ utils.assign_node_labels(utility: 'restricted-utility',
linux_cpu: 'restricted-m
utils.main_wrapper(
core_logic: {
utils.parallel_stage('Build', [
- custom_steps.compile_unix_lite()
+ custom_steps.compile_unix_lite('libmxnet')
])
utils.parallel_stage('Build Docs', [
custom_steps.docs_jekyll(),
- custom_steps.docs_c(),
- custom_steps.docs_python(),
- custom_steps.docs_julia(),
- custom_steps.docs_r(),
- custom_steps.docs_scala(),
- custom_steps.docs_java(),
- custom_steps.docs_clojure()
+ custom_steps.docs_c('libmxnet'),
+ custom_steps.docs_python('libmxnet'),
+ custom_steps.docs_julia('libmxnet'),
+ custom_steps.docs_r('libmxnet'),
+ custom_steps.docs_scala('libmxnet'),
+ custom_steps.docs_java('libmxnet'),
+ custom_steps.docs_clojure('libmxnet')
])
utils.parallel_stage('Prepare', [
diff --git a/ci/jenkins/Jenkinsfile_website_full_pr
b/ci/jenkins/Jenkinsfile_website_full_pr
index 9823fb3..a5ec412 100644
--- a/ci/jenkins/Jenkinsfile_website_full_pr
+++ b/ci/jenkins/Jenkinsfile_website_full_pr
@@ -34,19 +34,19 @@ utils.assign_node_labels(utility: 'utility', linux_cpu:
'mxnetlinux-cpu')
utils.main_wrapper(
core_logic: {
utils.parallel_stage('Build', [
- custom_steps.compile_unix_lite()
+ custom_steps.compile_unix_lite('libmxnet')
])
utils.parallel_stage('Build Docs', [
// Optimization would be to flag these not to stash if not previewing them
custom_steps.docs_jekyll(),
- custom_steps.docs_c(),
- custom_steps.docs_python(),
- custom_steps.docs_julia(),
- custom_steps.docs_r(),
- custom_steps.docs_scala(),
- custom_steps.docs_java(),
- custom_steps.docs_clojure()
+ custom_steps.docs_c('libmxnet'),
+ custom_steps.docs_python('libmxnet'),
+ custom_steps.docs_julia('libmxnet'),
+ custom_steps.docs_r('libmxnet'),
+ custom_steps.docs_scala('libmxnet'),
+ custom_steps.docs_java('libmxnet'),
+ custom_steps.docs_clojure('libmxnet')
])
// TODO: add a website preview function
diff --git a/ci/jenkins/Jenkinsfile_website_java_docs
b/ci/jenkins/Jenkinsfile_website_java_docs
index 4453b44..89c5d8c 100644
--- a/ci/jenkins/Jenkinsfile_website_java_docs
+++ b/ci/jenkins/Jenkinsfile_website_java_docs
@@ -34,11 +34,11 @@ utils.assign_node_labels(utility: 'utility', linux_cpu:
'mxnetlinux-cpu')
utils.main_wrapper(
core_logic: {
utils.parallel_stage('Build', [
- custom_steps.compile_unix_lite()
+ custom_steps.compile_unix_lite('libmxnet')
])
-
+
utils.parallel_stage('Java Docs', [
- custom_steps.docs_java()
+ custom_steps.docs_java('libmxnet')
])
diff --git a/ci/jenkins/Jenkinsfile_website_jekyll_docs
b/ci/jenkins/Jenkinsfile_website_jekyll_docs
index c4c5ff8..27d27ce 100644
--- a/ci/jenkins/Jenkinsfile_website_jekyll_docs
+++ b/ci/jenkins/Jenkinsfile_website_jekyll_docs
@@ -35,7 +35,6 @@ utils.main_wrapper(
core_logic: {
utils.parallel_stage('Jekyll Website Docs', [
custom_steps.docs_jekyll()
-
])
}
diff --git a/ci/jenkins/Jenkinsfile_website_julia_docs
b/ci/jenkins/Jenkinsfile_website_julia_docs
index e1e9aaa..0301490 100644
--- a/ci/jenkins/Jenkinsfile_website_julia_docs
+++ b/ci/jenkins/Jenkinsfile_website_julia_docs
@@ -34,11 +34,11 @@ utils.assign_node_labels(utility: 'utility', linux_cpu:
'mxnetlinux-cpu')
utils.main_wrapper(
core_logic: {
utils.parallel_stage('Build', [
- custom_steps.compile_unix_lite()
+ custom_steps.compile_unix_lite('libmxnet')
])
-
+
utils.parallel_stage('Julia Docs', [
- custom_steps.docs_julia()
+ custom_steps.docs_julia('libmxnet')
])
diff --git a/ci/jenkins/Jenkinsfile_website_mxnet_build
b/ci/jenkins/Jenkinsfile_website_mxnet_build
index 2acb159..7be106c 100644
--- a/ci/jenkins/Jenkinsfile_website_mxnet_build
+++ b/ci/jenkins/Jenkinsfile_website_mxnet_build
@@ -34,7 +34,7 @@ utils.assign_node_labels(utility: 'utility', linux_cpu:
'mxnetlinux-cpu')
utils.main_wrapper(
core_logic: {
utils.parallel_stage('Build', [
- custom_steps.compile_unix_lite()
+ custom_steps.compile_unix_lite('libmxnet')
])
}
diff --git a/ci/jenkins/Jenkinsfile_website_nightly
b/ci/jenkins/Jenkinsfile_website_nightly
index 1bbe5bc..e92a447 100644
--- a/ci/jenkins/Jenkinsfile_website_nightly
+++ b/ci/jenkins/Jenkinsfile_website_nightly
@@ -35,18 +35,18 @@ utils.assign_node_labels(utility: 'restricted-utility',
linux_cpu: 'restricted-m
utils.main_wrapper(
core_logic: {
utils.parallel_stage('Build', [
- custom_steps.compile_unix_lite()
+ custom_steps.compile_unix_lite('libmxnet')
])
utils.parallel_stage('Build Docs', [
custom_steps.docs_jekyll(),
- custom_steps.docs_c(),
- custom_steps.docs_python(),
- custom_steps.docs_julia(),
- custom_steps.docs_r(),
- custom_steps.docs_scala(),
- custom_steps.docs_java(),
- custom_steps.docs_clojure()
+ custom_steps.docs_c('libmxnet'),
+ custom_steps.docs_python('libmxnet'),
+ custom_steps.docs_julia('libmxnet'),
+ custom_steps.docs_r('libmxnet'),
+ custom_steps.docs_scala('libmxnet'),
+ custom_steps.docs_java('libmxnet'),
+ custom_steps.docs_clojure('libmxnet')
])
utils.parallel_stage('Prepare', [
diff --git a/ci/jenkins/Jenkinsfile_website_python_docs
b/ci/jenkins/Jenkinsfile_website_python_docs
index baaf451..40367f9 100644
--- a/ci/jenkins/Jenkinsfile_website_python_docs
+++ b/ci/jenkins/Jenkinsfile_website_python_docs
@@ -34,12 +34,11 @@ utils.assign_node_labels(utility: 'utility', linux_cpu:
'mxnetlinux-cpu')
utils.main_wrapper(
core_logic: {
utils.parallel_stage('Build', [
- custom_steps.compile_unix_lite()
+ custom_steps.compile_unix_lite('libmxnet')
])
-
- utils.parallel_stage('Python Docs', [
- custom_steps.docs_python()
+ utils.parallel_stage('Python Docs', [
+ custom_steps.docs_python('libmxnet')
])
}
diff --git a/ci/jenkins/Jenkinsfile_website_r_docs
b/ci/jenkins/Jenkinsfile_website_r_docs
index 5b9f663..8967a89 100644
--- a/ci/jenkins/Jenkinsfile_website_r_docs
+++ b/ci/jenkins/Jenkinsfile_website_r_docs
@@ -34,11 +34,11 @@ utils.assign_node_labels(utility: 'utility', linux_cpu:
'mxnetlinux-cpu')
utils.main_wrapper(
core_logic: {
utils.parallel_stage('Build', [
- custom_steps.compile_unix_lite()
+ custom_steps.compile_unix_lite('libmxnet')
])
utils.parallel_stage('R Docs', [
- custom_steps.docs_r()
+ custom_steps.docs_r('libmxnet')
])
diff --git a/ci/jenkins/Jenkinsfile_website_scala_docs
b/ci/jenkins/Jenkinsfile_website_scala_docs
index 6a083da..cf3303d 100644
--- a/ci/jenkins/Jenkinsfile_website_scala_docs
+++ b/ci/jenkins/Jenkinsfile_website_scala_docs
@@ -34,11 +34,11 @@ utils.assign_node_labels(utility: 'utility', linux_cpu:
'mxnetlinux-cpu')
utils.main_wrapper(
core_logic: {
utils.parallel_stage('Build', [
- custom_steps.compile_unix_lite()
+ custom_steps.compile_unix_lite('libmxnet')
])
-
+
utils.parallel_stage('Scala Docs', [
- custom_steps.docs_scala()
+ custom_steps.docs_scala('libmxnet')
])
diff --git a/ci/jenkins/Jenkinsfile_windows_cpu
b/ci/jenkins/Jenkinsfile_windows_cpu
index b699664..26e2ba2 100644
--- a/ci/jenkins/Jenkinsfile_windows_cpu
+++ b/ci/jenkins/Jenkinsfile_windows_cpu
@@ -34,16 +34,16 @@ utils.assign_node_labels(utility: 'utility', windows_cpu:
'mxnetwindows-cpu')
utils.main_wrapper(
core_logic: {
utils.parallel_stage('Build', [
- custom_steps.compile_windows_cpu(),
- custom_steps.compile_windows_cpu_mkldnn(),
- custom_steps.compile_windows_cpu_mkldnn_mkl(),
- custom_steps.compile_windows_cpu_mkl()
+ custom_steps.compile_windows_cpu('windows_package_cpu'),
+ custom_steps.compile_windows_cpu_mkldnn('windows_package_cpu_mkldnn'),
+
custom_steps.compile_windows_cpu_mkldnn_mkl('windows_package_cpu_mkldnn_mkl'),
+ custom_steps.compile_windows_cpu_mkl('windows_package_cpu_mkl')
])
utils.parallel_stage('Tests', [
- custom_steps.test_windows_python3_cpu(),
- custom_steps.test_windows_julia07_cpu(),
- custom_steps.test_windows_julia10_cpu()
+ custom_steps.test_windows_python3_cpu('windows_package_cpu'),
+ custom_steps.test_windows_julia07_cpu('windows_package_cpu'),
+ custom_steps.test_windows_julia10_cpu('windows_package_cpu')
])
}
,
diff --git a/ci/jenkins/Jenkinsfile_windows_gpu
b/ci/jenkins/Jenkinsfile_windows_gpu
index b5db665..1c4a9c9 100644
--- a/ci/jenkins/Jenkinsfile_windows_gpu
+++ b/ci/jenkins/Jenkinsfile_windows_gpu
@@ -34,13 +34,13 @@ utils.assign_node_labels(utility: 'utility', windows_cpu:
'mxnetwindows-cpu', wi
utils.main_wrapper(
core_logic: {
utils.parallel_stage('Build', [
- custom_steps.compile_windows_gpu(),
- custom_steps.compile_windows_gpu_mkldnn()
+ custom_steps.compile_windows_gpu('windows_package_gpu'),
+ custom_steps.compile_windows_gpu_mkldnn('windows_package_gpu_mkldnn')
])
utils.parallel_stage('Tests', [
- custom_steps.test_windows_python3_gpu(),
- custom_steps.test_windows_python3_gpu_mkldnn()
+ custom_steps.test_windows_python3_gpu('windows_package_gpu'),
+ custom_steps.test_windows_python3_gpu_mkldnn('windows_package_gpu_mkldnn')
])
}
,
diff --git a/pytest.ini b/pytest.ini
index 52ad95f..6c299d1 100644
--- a/pytest.ini
+++ b/pytest.ini
@@ -28,3 +28,4 @@ env =
MXNET_HOME=tests/data
timeout = 1200
+faulthandler_timeout = 1200
diff --git a/src/operator/nn/batch_norm.cu b/src/operator/nn/batch_norm.cu
index be9309c..84d1cec 100644
--- a/src/operator/nn/batch_norm.cu
+++ b/src/operator/nn/batch_norm.cu
@@ -64,15 +64,14 @@ struct ScalarConvert {
};
// Number of threads in a block given an input size up to MAX_BLOCK_SIZE
-static unsigned getNumThreads(int nElem, const bool smaller) {
- unsigned threadSizes[5] = {32, 64, 128, 256, MAX_BLOCK_SIZE};
- const int maxi = smaller ? 4 : 5;
- for (int i = 0; i != maxi; ++i) {
+static unsigned getNumThreads(int nElem) {
+ unsigned threadSizes[4] = {32, 64, 128, 256};
+ for (int i = 0; i != 4; ++i) {
if (static_cast<unsigned>(nElem) <= threadSizes[i]) {
return threadSizes[i];
}
}
- return smaller ? (MAX_BLOCK_SIZE >> 1) : MAX_BLOCK_SIZE;
+ return MAX_BLOCK_SIZE;
}
// Returns the index of the most significant 1 bit in `val`.
@@ -509,7 +508,7 @@ static void
BatchNormalizationUpdateOutput(mshadow::Stream<gpu> *s,
if ((flags & IS_TRAINING_FLAG) == 0 || (flags & USE_GLOBAL_STATS_FLAG) != 0)
{
dim3 blocks(input.ChannelCount());
- dim3 threads(batchnorm::cuda::getNumThreads(input.InnerSize(), false));
+ dim3 threads(batchnorm::cuda::getNumThreads(input.InnerSize()));
BatchNormalizationUpdateOutputInferenceKernel<DType, AccReal,
DeviceTensor1,
batchnorm::BNTensor3<DType>>
<<< blocks, threads, 0, mshadow::Stream<gpu>::GetStream(s) >>> (
@@ -517,7 +516,7 @@ static void
BatchNormalizationUpdateOutput(mshadow::Stream<gpu> *s,
saveInvStd, weight, bias, eps, flags);
} else {
dim3 blocks(input.ChannelCount());
- dim3 threads(batchnorm::cuda::getNumThreads(input.InnerSize(), false));
+ dim3 threads(batchnorm::cuda::getNumThreads(input.InnerSize()));
BatchNormalizationUpdateOutputKernel<DType, AccReal, DeviceTensor1,
batchnorm::BNTensor3<DType>>
<< < blocks, threads, 0, mshadow::Stream<gpu>::GetStream(s) >> > (
@@ -559,13 +558,8 @@ static void
BatchNormalizationBackward(mshadow::Stream<gpu> *s,
tensors.saveInvStd = devicetensor<AccReal, 1>(out_data[batchnorm::kVar]);
DCHECK_GT(tensors.weight.numElements(), 0);
-#ifdef NDEBUG
- constexpr bool SMALLER_THREADS = false;
-#else
- constexpr bool SMALLER_THREADS = true;
-#endif
dim3 blocks(gradOutput.ChannelCount());
- dim3 threads(batchnorm::cuda::getNumThreads(gradOutput.InnerSize(),
SMALLER_THREADS));
+ dim3 threads(batchnorm::cuda::getNumThreads(gradOutput.InnerSize()));
BatchNormalizationBackwardKernel<DType, AccReal, DeviceTensor1,
batchnorm::BNTensor3<DType>>
<<< blocks, threads, 0, mshadow::Stream<gpu>::GetStream(s) >>> (
input, gradOutput, gradInput, tensors, flags, momentum, eps);
diff --git a/tests/python/unittest/test_gluon_rnn.py
b/tests/python/unittest/test_gluon_rnn.py
index bed97ed..4c3c905 100644
--- a/tests/python/unittest/test_gluon_rnn.py
+++ b/tests/python/unittest/test_gluon_rnn.py
@@ -487,8 +487,6 @@ def check_rnn_forward_backward(layer, merged_inputs,
hybridize, merge_outputs, d
@pytest.mark.parametrize('merged_inputs', [True, False])
@pytest.mark.parametrize('hybridize', [True, False])
@pytest.mark.parametrize('merge_outputs', [True, False, None])
[email protected](mx.context.current_context().device_type == 'gpu',
- reason='Test worker crashes on GPU. Tracked in #18225')
def test_rnn_forward_backward(layer, merged_inputs, hybridize, merge_outputs,
determinism):
check_rnn_forward_backward(layer, merged_inputs, hybridize, merge_outputs,
determinism)
@@ -502,8 +500,6 @@ def test_rnn_forward_backward(layer, merged_inputs,
hybridize, merge_outputs, de
@pytest.mark.parametrize('merged_inputs', [True, False])
@pytest.mark.parametrize('hybridize', [True, False])
@pytest.mark.parametrize('merge_outputs', [True, False, None])
[email protected](mx.context.current_context().device_type == 'gpu',
- reason='Test worker crashes on GPU. Tracked in #18225')
def test_sequential_rnn_cells(seq_rnn_type, determinism, merged_inputs,
hybridize, merge_outputs):
net = gluon.rnn.SequentialRNNCell()
net.add(gluon.rnn.LSTMCell(10, input_size=5))