This is an automated email from the ASF dual-hosted git repository. ptrendx pushed a change to branch v1.6.x in repository https://gitbox.apache.org/repos/asf/incubator-mxnet.git.
from df4125a update NEWS.md and README.md (#16385) add 0bace55 fix choice signature add ec766d5 add raise test for shape add d5666ed Round and sign straight-through-estimators C operators. (#16373) add 15ea40d Add boolean ndarray (#15940) add 1d0d1e6 Faster Transpose 2D (#16104) add 9ff644b Fix windows flakiness (#16415) add a8181dd [MXNET-1430] julia: implement context.gpu_memory_info (#16324) add 9dc0ab8 global numpy shape flag (#16335) add cfe9e50 Skipping installing nightly test (#16418) add a2018ba cuDNN non-persistant bidirectional RNN dgrad sync fix (#16391) add 56e1bef Adds PyPI CD Pipeline (#16190) add 88521ff upgrade the pytest version (#16429) add 6ce323f [DOC] fix installation selector wrong history (#16381) add 1ab4c95 New ops for RCNN + old ops improvements for RCNN (#16215) add e484f72 Beta build (#16411) add 243ade9 [WIP] Improving Python Docs API (#16392) add cf61364 Revert "add mkl installation temp fix (#16304)" (#16369) add d8193c6 Update add_op_in_backend.md (#16403) add 7f5e687 numpy-compatible histogram (#16266) add ca30ba8 Pseudo 2D transpose kernel (#16229) add d2d76dc increase docker cache timeout (#16430) add 4dee4ee Fix mkldnn reshape (#16455) add 1e8cc90 [BUGFIX] Minor type issues in Squeeze (#16448) add 858a52e Fix large array tests (#16328) add 6d6e46b Comparison ops implemented using mshadow (#16414) add 1d4ede3 Add mask target generator operator for Mask-RCNN (#16268) add 8820220 Adds pip requirements file to nightly gpu ci image (#16472) add 1256976 Fix Nightly Tests for Binaries (#16451) add 812e504 fix autodoc for spurrious toggles (#16452) add 7c0000e Fix dtype bug (#16467) add 9ab428e [Doc] Update the download page with 1.5.1 release (#16442) add 6e0b1a5 [Numpy] Numpy compatible dstack (#15871) add ceebcaf numpy eye op (#16132) add 8222979 Numpy compatible vsplit; minor changes to split (#15983) add 8562adc add numpy op logspace (#15825) add 9681197 add numpy op bitwise_xor, hsplit, moveaxis, rot90 (#16257) add f9359c3 Fix flakey pylint CI failures (#16462) add 67e1e68 Aggregated zero grad (#16446) add b1932c0 Move MRCNNMaskTarget op to contrib (#16486) add 06438ab Mxnet allclose (#14443) add 0c00a79 Fix optimizer bug for np attribute (#16494) add c2bbde7 Tests of NumPy interoperability (#16469) add bf57ff8 added more tests to verify support for large vector (#16477) add de524bb Fixing broken links (#16500) add a4ea4a8 Load NDArray only to GPU if GPU is present (#16432) add d1200c9 add binary and docs build command options (#16514) add e4f8c50 [MKLDNN] Fix uint quantized fc when not fusing with requantize (#16523) add f6cfbdf improve unary and binary operator handling and refactor tests (#16423) add 77e9898 Bug fix for the input of same axes of the swapaxes operator (#16513) add f2ed1d4 added support for large tensors for Dropout operator and tests to verify support for more operators (#16409) add 63fbfb1 [DOC] Fix numpy op doc (#16504) add f01bcaa [Numpy] More numpy dispatch tests (#16426) add 27f7082 Fix learning rate scheduler being unexpectedly overwritten by optimizer's default value (#16487) add 73bff7d adding large tensor support for add_n and tests for more ops (#16476) add 4b8a95f add option to remove indexes (#16525) add 32bb374 disable tests (#16536) add efa5369 adding large tensor support for pad operator (#15126) add 2d4c3a4 fix pylint in CI (#16540) add 27b3e52 image crop gpu (#16464) add a75ec06 [Numpy] einsum (#15911) add 9fecfbb Add test pipeline for USE_TVM_OP=OFF on Unix (#16450) add b583059 Numpy dispatch test of ...... (#16422) add 149e034 typo fix in r doc lstm tutorial (#16546) add fc81c64 Correct Google Analytics Tracker (#16490) add ffec31f Aggregated adamw update (#16398) add 5b67a69 try to fix block (#16465) add c1d02ce setup and concatenate, copy, expand_dims, expm1 (#16493) add cdfaf39 add sum for boolean type in mainline (#16436) add 1648f4c [Numpy] SVD outputs tuple (#16530) add 5accae0 numpy op doc: max, min, prod (#16506) add b949716 add interface for rand add 217ae02 Fix numpy bugs (#16537) add 746cbc5 Add unit tests for TensorRT integration and fix some bugs (#15399) add 93ec1f2 [Doc] Use mirror link in the download page (#16501) add 06ce371 checking broken link fixes work (#16538) add 91bb398 [CD] Adds python docker pipeline (#16547) add 1fb6f00 Build dmlc-core with old thread_local implementation (#16526) add 261d09d pickler override for np ndarrays (#16561) add 62b0638 Added large tensor support and test for gather_nd (#16371) add dcf5fc8 fix doc for topk (#16571) add 0ba1ce2 [numpy]op test in new pattern (#16556) add ca4af0e Enforce adding documentation for builtin numpy operators (#16575) add 34e4f71 Move imagenet inference to nightly (#16577) add 06b86da detect number of procs during sphinx build (#16512) add 1ffdd47 Make mrcnn_mask_target arg mask_size a 2d tuple (#16567) add 20aa10c split issue templates (#16558) add 10941ab Dgl ops 2 (#16416) add b05d72a RNNOp to call cudaEventCreate lazily (#16584) add 5296ddc add encoding to the stub files for potential utf8 char in doc strings (#16580) add 91ad266 fixed broken links across multiple files (#16581) add e22e93f fix missing docs due to git add issues (#16496) add 05a4c4f Create SECURITY.md (#16573) No new revisions were added by this update. Summary of changes: .github/ISSUE_TEMPLATE.md | 52 - .github/ISSUE_TEMPLATE/bug_report.md | 36 + .github/ISSUE_TEMPLATE/feature_request.md | 17 + .github/ISSUE_TEMPLATE/flaky_test.md | 18 + .travis.yml | 4 +- 3rdparty/dmlc-core | 2 +- 3rdparty/mshadow/mshadow/base.h | 72 +- 3rdparty/onnx-tensorrt | 2 +- CMakeLists.txt | 15 +- Makefile | 10 +- docs/python_docs/README.md => SECURITY.md | 9 +- benchmark/python/einsum/benchmark_einsum.py | 78 + cd/Jenkinsfile_cd_pipeline | 12 + cd/Jenkinsfile_release_job | 3 +- cd/Jenkinsfile_utils.groovy | 85 ++ cd/README.md | 8 + .../numpy/utils.py => cd/python/docker/Dockerfile | 29 +- .../utils.py => cd/python/docker/Dockerfile.test | 28 +- cd/python/docker/Jenkins_pipeline.groovy | 74 + cd/python/docker/python_images.sh | 128 ++ .../python/docker/test_python_image.sh | 34 +- cd/python/pypi/Jenkins_pipeline.groovy | 78 + cd/python/pypi/README.md | 43 + cd/python/pypi/pypi_package.sh | 60 + cd/python/pypi/pypi_publish.py | 87 ++ cd/utils/docker_tag.sh | 59 + .../ubuntu_mkl.sh => cd/utils/mxnet_base_image.sh | 40 +- ci/build.py | 179 +-- ci/docker/Dockerfile.build.ubuntu_nightly_gpu | 1 + ci/docker/install/tensorrt.sh | 7 +- ci/docker/install/ubuntu_mkl.sh | 2 +- ci/docker/install/ubuntu_onnx.sh | 4 +- ci/docker/runtime_functions.sh | 135 +- ci/docker_cache.py | 89 +- ci/docker_login.py | 137 ++ ci/jenkins/Jenkins_steps.groovy | 118 +- ci/jenkins/Jenkinsfile_unix_cpu | 4 +- ci/jenkins/Jenkinsfile_unix_gpu | 9 +- ...enkinsfile_website => Jenkinsfile_website_beta} | 23 +- tests/python/tensorrt/common.py => ci/logging.conf | 29 +- ci/other/pylintrc | 7 +- ci/safe_docker_run.py | 247 +++ ci/test_docker_cache.py | 40 +- ci/test_docker_login.py | 234 +++ ci/test_safe_docker_run.py | 427 ++++++ ci/util.py | 17 + contrib/tvmop/__init__.py | 1 + contrib/tvmop/compile.py | 41 +- contrib/tvmop/{ => core}/__init__.py | 7 +- contrib/tvmop/core/fromnumeric.py | 63 + contrib/tvmop/core/umath.py | 122 ++ contrib/tvmop/opdef.py | 6 +- contrib/tvmop/utils.py | 16 +- cpp-package/tests/ci_test.sh | 2 - dev_menu.py | 20 +- docs/python_docs/README.md | 116 +- docs/python_docs/_static/autodoc.js | 51 + docs/python_docs/_static/google_analytics.js | 2 +- docs/python_docs/_static/mxnet.css | 7 + docs/python_docs/environment.yml | 1 + docs/python_docs/python/Makefile | 3 +- docs/python_docs/python/Makefile_sphinx | 20 +- docs/python_docs/python/README.md | 130 -- docs/python_docs/python/api/advanced/index.rst | 74 - .../python/api/advanced/mxnet.executor_manager.rst | 38 - .../python/api/advanced/mxnet.test_utils.rst | 91 -- .../index.rst} | 10 +- .../autograd/index.rst} | 10 +- docs/python_docs/python/api/contrib/index.rst | 88 ++ .../io/index.rst} | 10 +- .../ndarray/index.rst} | 10 +- .../mxnet.random.rst => contrib/onnx/index.rst} | 12 +- .../quantization/index.rst} | 10 +- .../symbol/index.rst} | 10 +- .../tensorboard/index.rst} | 10 +- .../tensorrt/index.rst} | 10 +- .../mxnet.random.rst => contrib/text/index.rst} | 11 +- .../python_docs/python/api/gluon-related/index.rst | 111 -- .../python/api/gluon-related/mxnet.autograd.rst | 38 - .../python/api/gluon-related/mxnet.image.rst | 99 -- .../python/api/gluon-related/mxnet.initializer.rst | 58 - .../python/api/gluon-related/mxnet.io.rst | 52 - .../api/gluon-related/mxnet.kvstore.KVStore.rst | 61 - .../api/gluon-related/mxnet.lr_scheduler.rst | 31 - .../python/api/gluon-related/mxnet.optimizer.rst | 55 - .../python/api/gluon-related/mxnet.profiler.rst | 54 - .../python/api/gluon-related/mxnet.recordio.rst | 43 - .../mxnet.kvstore.create.rst => gluon/block.rst} | 10 +- .../constant.rst} | 10 +- .../{mxnet.gluon.contrib.rst => contrib/index.rst} | 17 +- .../gluon/{mxnet.gluon.data.rst => data/index.rst} | 33 +- .../data/vision/datasets/index.rst} | 24 +- .../data/vision/index.rst} | 60 +- .../vision/transforms/index.rst} | 32 +- .../hybrid_block.rst} | 10 +- docs/python_docs/python/api/gluon/index.rst | 45 +- .../loss/index.rst} | 25 +- .../index.rst} | 30 +- .../python/api/gluon/mxnet.gluon.HybridBlock.rst | 40 - .../python/api/gluon/mxnet.gluon.ParameterDict.rst | 79 - .../python/api/gluon/mxnet.gluon.Trainer.rst | 51 - .../python/api/gluon/mxnet.gluon.loss.rst | 40 - .../python/api/gluon/mxnet.gluon.nn.Block.rst | 86 -- .../api/gluon/mxnet.gluon.nn.HybridBlock.rst | 66 - .../api/gluon/mxnet.gluon.nn.SymbolBlock.rst | 67 - .../python/api/gluon/mxnet.gluon.parameter.rst | 68 - .../python/api/gluon/mxnet.gluon.utils.rst | 31 - .../python/api/gluon/{nn.rst => nn/index.rst} | 40 +- .../parameter.rst} | 10 +- .../parameter_dict.rst} | 10 +- .../python/api/gluon/{rnn.rst => rnn/index.rst} | 24 +- .../symbol_block.rst} | 10 +- .../mxnet.kvstore.create.rst => gluon/trainer.rst} | 10 +- .../utils/index.rst} | 9 +- docs/python_docs/python/api/index.rst | 188 ++- .../index.rst} | 10 +- .../mxnet.kvstore.rst => kvstore/index.rst} | 8 +- .../index.rst} | 10 +- .../mxnet.gluon.Constant.rst => metric/index.rst} | 10 +- .../mxnet.random.rst => module/index.rst} | 12 +- .../attribute/index.rst} | 10 +- .../base/index.rst} | 10 +- .../callback/index.rst} | 10 +- .../mxnet.context.rst => mxnet/context/index.rst} | 14 +- .../mxnet.engine.rst => mxnet/engine/index.rst} | 15 +- .../executor/index.rst} | 17 +- .../executor_manager/index.rst} | 10 +- .../image/index.rst} | 14 +- docs/python_docs/python/{ => api/mxnet}/index.rst | 73 +- .../io/index.rst} | 9 +- .../kvstore_server/index.rst} | 10 +- .../libinfo/index.rst} | 11 +- .../log/index.rst} | 10 +- .../model/index.rst} | 10 +- .../mxnet.monitor.rst => mxnet/monitor/index.rst} | 16 +- .../name/index.rst} | 10 +- .../notebook/index.rst} | 10 +- .../operator/index.rst} | 10 +- .../profiler/index.rst} | 10 +- .../mxnet.random.rst => mxnet/random/index.rst} | 7 +- .../recordio/index.rst} | 10 +- .../registry/index.rst} | 10 +- .../rtc/index.rst} | 10 +- .../test_utils/index.rst} | 10 +- .../torch/index.rst} | 10 +- .../mxnet.util.rst => mxnet/util/index.rst} | 12 +- .../visualization/index.rst} | 16 +- .../contrib/index.rst} | 10 +- .../image/index.rst} | 10 +- docs/python_docs/python/api/ndarray/index.rst | 31 +- .../linalg/index.rst} | 10 +- .../python/api/ndarray/mxnet.ndarray.NDArray.rst | 310 ---- .../ndarray/mxnet.ndarray.sparse.CSRNDArray.rst | 203 --- .../mxnet.ndarray.sparse.RowSparseNDArray.rst | 183 --- .../ndarray.rst} | 11 +- .../op/index.rst} | 10 +- .../random/index.rst} | 10 +- .../register/index.rst} | 10 +- docs/python_docs/python/api/ndarray/routines.rst | 461 ------ .../sparse/index.rst} | 10 +- .../python/api/ndarray/sparse_routines.rst | 200 --- .../utils/index.rst} | 10 +- .../index.rst} | 10 +- .../python/api/symbol-related/index.rst | 53 - .../python/api/symbol-related/mxnet.callback.rst | 45 - .../python/api/symbol-related/mxnet.model.rst | 45 - .../python/api/symbol-related/mxnet.module.rst | 35 - .../contrib/index.rst} | 10 +- .../image/index.rst} | 10 +- docs/python_docs/python/api/symbol/index.rst | 12 +- .../linalg/index.rst} | 10 +- .../python/api/symbol/mxnet.symbol.Symbol.rst | 335 ---- .../python/api/symbol/mxnet.symbol.linalg.rst | 49 - .../op/index.rst} | 10 +- .../random/index.rst} | 10 +- .../register/index.rst} | 10 +- .../sparse/index.rst} | 10 +- .../mxnet.kvstore.create.rst => symbol/symbol.rst} | 9 +- docs/python_docs/python/index.rst | 4 +- docs/python_docs/python/scripts/conf.py | 7 +- .../python/tutorials/deploy/export/onnx.md | 6 +- .../python/tutorials/deploy/run-on-aws/cloud.md | 29 + .../python/tutorials/deploy/run-on-aws/cloud.rst | 105 -- .../python/tutorials/deploy/run-on-aws/index.rst | 2 +- .../getting-started/crash-course/5-predict.md | 2 +- .../getting-started/crash-course/6-use_gpus.md | 2 +- .../gluon_from_experiment_to_deployment.md | 12 +- .../tutorials/getting-started/to-mxnet/index.rst | 2 +- .../tutorials/getting-started/to-mxnet/pytorch.md | 12 +- .../python/tutorials/packages/autograd/index.md | 10 +- .../gluon/blocks/custom_layer_beginners.md | 30 +- .../tutorials/packages/gluon/blocks/hybridize.md | 12 +- .../python/tutorials/packages/gluon/blocks/init.md | 12 +- .../python/tutorials/packages/gluon/blocks/nn.md | 24 +- .../tutorials/packages/gluon/blocks/parameters.md | 20 +- .../packages/gluon/image/image-augmentation.md | 20 +- .../python/tutorials/packages/gluon/image/mnist.md | 2 +- .../packages/gluon/image/pretrained_models.md | 14 +- .../python/tutorials/packages/gluon/index.rst | 12 +- .../tutorials/packages/gluon/loss/custom-loss.md | 28 +- .../python/tutorials/packages/gluon/loss/loss.md | 52 +- .../packages/gluon/training/fit_api_tutorial.md | 68 +- .../learning_rates/learning_rate_finder.md | 18 +- .../learning_rate_schedules_advanced.md | 22 +- .../packages/gluon/training/normalization/index.md | 6 +- .../tutorials/packages/gluon/training/trainer.md | 24 +- .../python/tutorials/packages/kvstore/index.rst | 7 +- .../python/tutorials/packages/kvstore/kvstore.md | 4 +- .../tutorials/packages/ndarray/01-ndarray-intro.md | 14 +- .../packages/ndarray/02-ndarray-operations.md | 39 +- .../packages/ndarray/03-ndarray-contexts.md | 4 +- .../packages/ndarray/gotchas_numpy_in_mxnet.md | 38 +- .../packages/ndarray/sparse/row_sparse.md | 28 +- .../tutorials/packages/onnx/fine_tuning_gluon.md | 12 +- .../packages/onnx/inference_on_onnx_model.md | 2 +- .../tutorials/packages/onnx/super_resolution.md | 4 +- .../performance/backend/mkldnn/mkldnn_readme.md | 2 +- .../themes/mx-theme/mxtheme/footer.html | 4 +- .../mxtheme/static/sphinx_materialdesign_theme.css | 2 +- .../static/sphinx_materialdesign_theme.css.map | 2 +- .../themes/mx-theme/src/scss/toc/_globaltoc.scss | 4 +- docs/static_site/src/.htaccess | 51 +- .../src/_includes/get_started/get_started.html | 6 +- .../src/_includes/get_started/linux/cpp/cpp.md | 2 +- .../src/_includes/get_started/macos/cpp/cpp.md | 2 +- .../src/_includes/get_started/macos/scala/cpu.md | 2 +- .../src/_includes/get_started/pip_snippet.md | 2 +- .../src/_includes/get_started/windows/cpp/cpp.md | 4 +- docs/static_site/src/assets/js/options.js | 47 +- .../pages/api/architecture/note_data_loading.md | 2 +- .../docs/tutorials/mxnet_cpp_inference_tutorial.md | 10 +- .../src/pages/api/faq/add_op_in_backend.md | 2 +- .../src/pages/api/faq/distributed_training.md | 8 +- docs/static_site/src/pages/api/faq/env_var.md | 2 +- docs/static_site/src/pages/api/faq/float16.md | 8 +- .../src/pages/api/faq/gradient_compression.md | 2 +- .../src/pages/api/faq/model_parallel_lstm.md | 2 +- docs/static_site/src/pages/api/faq/recordio.md | 1 - .../docs/tutorials/five_minutes_neural_network.md | 2 +- .../pages/api/r/docs/tutorials/multi_dim_lstm.md | 2 +- docs/static_site/src/pages/features.html | 2 +- .../src/pages/get_started/build_from_source.md | 2 +- docs/static_site/src/pages/get_started/download.md | 17 +- .../src/pages/get_started/windows_setup.md | 4 +- example/gluon/word_language_model/README.md | 2 +- include/mxnet/c_api.h | 3 +- include/mxnet/imperative.h | 44 +- include/mxnet/tensor_blob.h | 1 + julia/NEWS.md | 4 + julia/docs/src/tutorial/char-lstm.md | 6 +- julia/docs/src/tutorial/mnist.md | 2 +- julia/docs/src/user-guide/overview.md | 2 - julia/examples/char-lstm/README.md | 2 +- julia/src/MXNet.jl | 3 +- julia/src/context.jl | 18 + python/mxnet/_numpy_op_doc.py | 564 ++++--- python/mxnet/base.py | 1 + python/mxnet/context.py | 2 - python/mxnet/contrib/tensorrt.py | 2 + python/mxnet/gluon/block.py | 130 +- python/mxnet/gluon/contrib/data/text.py | 4 +- python/mxnet/gluon/contrib/estimator/estimator.py | 2 +- python/mxnet/gluon/contrib/rnn/conv_rnn_cell.py | 18 +- python/mxnet/gluon/data/dataloader.py | 32 + python/mxnet/gluon/model_zoo/vision/__init__.py | 2 +- python/mxnet/gluon/model_zoo/vision/resnet.py | 4 +- python/mxnet/gluon/parameter.py | 21 +- python/mxnet/gluon/trainer.py | 2 +- python/mxnet/io/__init__.py | 6 +- python/mxnet/monitor.py | 2 +- python/mxnet/ndarray/contrib.py | 56 +- python/mxnet/ndarray/ndarray.py | 24 +- python/mxnet/ndarray/numpy/_op.py | 1298 ++++++++++++++-- python/mxnet/ndarray/numpy/linalg.py | 77 +- python/mxnet/ndarray/numpy/random.py | 33 +- python/mxnet/numpy/linalg.py | 76 +- python/mxnet/numpy/multiarray.py | 1602 +++++++++++++++++--- python/mxnet/numpy/random.py | 34 +- python/mxnet/numpy/stride_tricks.py | 2 +- python/mxnet/numpy/utils.py | 9 +- python/mxnet/numpy_dispatch_protocol.py | 32 +- python/mxnet/numpy_extension/__init__.py | 2 +- python/mxnet/numpy_op_signature.py | 5 +- python/mxnet/optimizer/optimizer.py | 22 +- python/mxnet/symbol/numpy/_symbol.py | 1073 +++++++++++-- python/mxnet/symbol/numpy/linalg.py | 64 +- python/mxnet/symbol/numpy/random.py | 35 +- python/mxnet/test_utils.py | 233 ++- python/mxnet/util.py | 170 +++ src/c_api/c_api_ndarray.cc | 2 +- src/c_api/c_api_symbolic.cc | 38 +- src/common/utils.h | 19 + src/imperative/imperative.cc | 4 +- src/ndarray/ndarray.cc | 10 +- src/ndarray/ndarray_function.cc | 4 +- src/ndarray/ndarray_function.cu | 6 +- src/operator/contrib/adamw-inl.h | 368 ++++- src/operator/contrib/adamw.cc | 166 +- src/operator/contrib/adamw.cu | 34 +- src/operator/contrib/allclose_op-inl.h | 160 ++ src/operator/contrib/allclose_op.cc | 86 ++ src/operator/contrib/allclose_op.cu | 58 + src/operator/contrib/bilinear_resize-inl.cuh | 8 +- src/operator/contrib/boolean_mask.cc | 7 +- src/operator/contrib/boolean_mask.cu | 4 +- src/operator/contrib/bounding_box-inl.h | 278 ++++ src/operator/contrib/bounding_box.cc | 43 + src/operator/contrib/bounding_box.cu | 7 + src/operator/contrib/index_copy-inl.h | 2 +- src/operator/contrib/index_copy.cc | 4 +- src/operator/contrib/mrcnn_mask_target-inl.h | 134 ++ src/operator/contrib/mrcnn_mask_target.cu | 280 ++++ src/operator/contrib/reset_arrays-inl.h | 92 ++ src/operator/contrib/reset_arrays.cc | 74 + .../linalg/np_gesvd.cu => contrib/reset_arrays.cu} | 25 +- src/operator/contrib/roi_align.cc | 11 +- src/operator/contrib/roi_align.cu | 6 + src/operator/contrib/stes_op.cc | 84 + src/operator/contrib/stes_op.cu | 43 + src/operator/contrib/stes_op.h | 33 + src/operator/image/crop-inl.h | 22 +- src/operator/image/crop.cc | 4 +- src/operator/image/crop.cu | 34 + src/operator/instance_norm.cc | 2 +- src/operator/leaky_relu-inl.h | 2 +- src/operator/mshadow_op.h | 60 + src/operator/mxnet_op.h | 99 +- src/operator/nn/concat-inl.h | 62 + src/operator/nn/dropout-inl.h | 16 +- src/operator/nn/mkldnn/mkldnn_base-inl.h | 1 - src/operator/nn/mkldnn/mkldnn_base.cc | 6 +- src/operator/nn/mkldnn/mkldnn_flatten.cc | 79 - src/operator/nn/mkldnn/mkldnn_ops-inl.h | 5 - src/operator/nn/mkldnn/mkldnn_reshape-inl.h | 27 +- src/operator/nn/mkldnn/mkldnn_reshape.cc | 118 +- src/operator/numpy/linalg/np_gesvd.cc | 6 +- src/operator/numpy/linalg/np_gesvd.cu | 4 +- src/operator/numpy/np_broadcast_reduce_op.h | 25 +- src/operator/numpy/np_broadcast_reduce_op_value.cc | 71 + src/operator/numpy/np_dot-inl.h | 16 +- src/operator/numpy/np_dot.cc | 4 +- src/operator/numpy/np_einsum_op-inl.h | 1092 +++++++++++++ src/operator/numpy/np_einsum_op.cc | 370 +++++ .../mkldnn_flatten-inl.h => numpy/np_einsum_op.cu} | 26 +- src/operator/numpy/np_einsum_path_op-inl.h | 964 ++++++++++++ .../numpy/np_elemwise_broadcast_logic_op.cc | 301 ++++ .../numpy/np_elemwise_broadcast_logic_op.cu | 60 + src/operator/numpy/np_elemwise_broadcast_op.cc | 34 +- src/operator/numpy/np_elemwise_broadcast_op.cu | 1 + src/operator/numpy/np_elemwise_unary_op_basic.cc | 65 +- src/operator/numpy/np_elemwise_unary_op_basic.cu | 9 +- src/operator/numpy/np_init_op.cc | 53 +- src/operator/numpy/np_init_op.cu | 6 + src/operator/numpy/np_init_op.h | 132 ++ src/operator/numpy/np_matrix_op-inl.h | 371 ++++- src/operator/numpy/np_matrix_op.cc | 325 +++- src/operator/numpy/np_matrix_op.cu | 19 + src/operator/numpy/np_tensordot_op-inl.h | 120 +- src/operator/numpy/np_tensordot_op.cc | 8 +- src/operator/numpy/np_true_divide-inl.h | 146 ++ src/operator/numpy/np_true_divide.cc | 40 +- src/operator/numpy/np_true_divide.cu | 10 +- src/operator/operator_tune.cc | 36 +- src/operator/pad.cc | 326 ++-- .../mkldnn/mkldnn_quantized_flatten.cc | 4 +- .../mkldnn/mkldnn_quantized_fully_connected.cc | 9 +- src/operator/rnn-inl.h | 88 +- src/operator/subgraph/mkldnn/mkldnn_fc.cc | 12 +- src/operator/subgraph/tensorrt/nnvm_to_onnx-inl.h | 15 +- src/operator/subgraph/tensorrt/nnvm_to_onnx.cc | 43 +- src/operator/subgraph/tensorrt/onnx_to_tensorrt.cc | 2 +- src/operator/subgraph/tensorrt/tensorrt-inl.h | 119 +- src/operator/subgraph/tensorrt/tensorrt.cc | 2 +- src/operator/swapaxis-inl.h | 12 +- src/operator/tensor/amp_cast.h | 9 +- src/operator/tensor/broadcast_reduce_op.h | 2 +- .../tensor/elemwise_binary_broadcast_op-inl.cuh | 18 +- src/operator/tensor/elemwise_binary_broadcast_op.h | 47 +- .../tensor/elemwise_binary_broadcast_op_logic.cc | 6 - src/operator/tensor/elemwise_binary_op.h | 26 + src/operator/tensor/elemwise_binary_scalar_op.h | 20 + .../tensor/elemwise_binary_scalar_op_logic.cc | 6 - src/operator/tensor/elemwise_sum.h | 8 +- src/operator/tensor/elemwise_unary_op.h | 23 +- src/operator/tensor/elemwise_unary_op_basic.cc | 1 + src/operator/tensor/histogram.cc | 1 + src/operator/tensor/indexing_op.h | 10 +- src/operator/tensor/init_op.h | 50 +- src/operator/tensor/la_op.cc | 2 - src/operator/tensor/la_op.cu | 2 - src/operator/tensor/la_op.h | 7 +- src/operator/tensor/matrix_op-inl.h | 182 ++- src/operator/tensor/matrix_op.cc | 44 +- src/operator/tensor/ordering_op.cc | 5 +- src/operator/tensor/pseudo2DTranspose_op-inl.cuh | 348 +++++ src/operator/tvmop/op_module.cc | 27 +- src/operator/tvmop/op_module.h | 18 +- tests/cpp/engine/thread_local_test.cc | 80 + tests/nightly/Jenkinsfile | 2 +- tests/nightly/JenkinsfileForBinaries | 11 +- tests/nightly/test_large_array.py | 630 ++++++-- tests/nightly/test_large_vector.py | 255 +++- tests/python-pytest/onnx/mxnet_export_test.py | 2 +- tests/python/gpu/test_gluon_gpu.py | 151 +- tests/python/gpu/test_gluon_model_zoo_gpu.py | 14 +- tests/python/gpu/test_gluon_transforms.py | 74 +- tests/python/gpu/test_operator_gpu.py | 60 +- tests/python/mkl/test_mkldnn.py | 12 +- tests/python/tensorrt/lenet5_common.py | 31 - tests/python/tensorrt/lenet5_train.py | 12 +- tests/python/tensorrt/test_cvnets.py | 7 +- tests/python/tensorrt/test_ops.py | 527 ++++++- tests/python/tensorrt/test_resnet18.py | 2 +- tests/python/tensorrt/test_tensorrt_batchnorm.py | 65 - tests/python/tensorrt/test_tensorrt_deconv.py | 63 - tests/python/tensorrt/test_tensorrt_lenet5.py | 28 +- tests/python/unittest/common.py | 21 + tests/python/unittest/test_contrib_operator.py | 76 + tests/python/unittest/test_contrib_optimizer.py | 236 +-- tests/python/unittest/test_contrib_stes_op.py | 137 ++ tests/python/unittest/test_exc_handling.py | 2 +- tests/python/unittest/test_gluon.py | 110 +- tests/python/unittest/test_gluon_contrib.py | 21 +- tests/python/unittest/test_gluon_data_vision.py | 21 +- tests/python/unittest/test_loss.py | 31 +- tests/python/unittest/test_ndarray.py | 67 +- tests/python/unittest/test_numpy_gluon.py | 21 +- .../python/unittest/test_numpy_interoperability.py | 1073 ++++++++++++- tests/python/unittest/test_numpy_ndarray.py | 211 ++- tests/python/unittest/test_numpy_op.py | 1496 +++++++++++------- tests/python/unittest/test_operator.py | 733 +++++---- tests/python/unittest/test_optimizer.py | 4 + tests/python/unittest/test_random.py | 16 +- tests/python/unittest/test_sparse_operator.py | 4 +- tests/python/unittest/test_subgraph.py | 7 - tests/python/unittest/test_symbol.py | 47 +- tests/python/unittest/test_thread_local.py | 26 +- tests/utils/notebook_test/__init__.py | 2 +- tools/pip/doc/CPU_ADDITIONAL.md | 6 +- tools/pip/doc/CU100MKL_ADDITIONAL.md | 4 +- tools/pip/doc/CU100_ADDITIONAL.md | 4 +- ...U91MKL_ADDITIONAL.md => CU101MKL_ADDITIONAL.md} | 10 +- .../{CU91_ADDITIONAL.md => CU101_ADDITIONAL.md} | 10 +- tools/pip/doc/CU75MKL_ADDITIONAL.md | 6 +- tools/pip/doc/CU75_ADDITIONAL.md | 6 +- tools/pip/doc/CU80MKL_ADDITIONAL.md | 6 +- tools/pip/doc/CU80_ADDITIONAL.md | 6 +- tools/pip/doc/CU90MKL_ADDITIONAL.md | 6 +- tools/pip/doc/CU90_ADDITIONAL.md | 6 +- tools/pip/doc/CU92MKL_ADDITIONAL.md | 6 +- tools/pip/doc/CU92_ADDITIONAL.md | 6 +- tools/pip/doc/MKL_ADDITIONAL.md | 6 +- tools/pip/setup.py | 14 +- 453 files changed, 21377 insertions(+), 8256 deletions(-) delete mode 100644 .github/ISSUE_TEMPLATE.md create mode 100644 .github/ISSUE_TEMPLATE/bug_report.md create mode 100644 .github/ISSUE_TEMPLATE/feature_request.md create mode 100644 .github/ISSUE_TEMPLATE/flaky_test.md copy docs/python_docs/README.md => SECURITY.md (65%) create mode 100644 benchmark/python/einsum/benchmark_einsum.py copy python/mxnet/numpy/utils.py => cd/python/docker/Dockerfile (58%) copy python/mxnet/numpy/utils.py => cd/python/docker/Dockerfile.test (63%) create mode 100644 cd/python/docker/Jenkins_pipeline.groovy create mode 100755 cd/python/docker/python_images.sh copy ci/docker/install/ubuntu_mkl.sh => cd/python/docker/test_python_image.sh (50%) create mode 100644 cd/python/pypi/Jenkins_pipeline.groovy create mode 100644 cd/python/pypi/README.md create mode 100755 cd/python/pypi/pypi_package.sh create mode 100755 cd/python/pypi/pypi_publish.py create mode 100755 cd/utils/docker_tag.sh copy ci/docker/install/ubuntu_mkl.sh => cd/utils/mxnet_base_image.sh (54%) create mode 100755 ci/docker_login.py rename ci/jenkins/{Jenkinsfile_website => Jenkinsfile_website_beta} (67%) rename tests/python/tensorrt/common.py => ci/logging.conf (68%) create mode 100755 ci/safe_docker_run.py create mode 100644 ci/test_docker_login.py create mode 100644 ci/test_safe_docker_run.py copy contrib/tvmop/{ => core}/__init__.py (84%) create mode 100644 contrib/tvmop/core/fromnumeric.py create mode 100644 contrib/tvmop/core/umath.py create mode 100644 docs/python_docs/_static/autodoc.js delete mode 100644 docs/python_docs/python/README.md delete mode 100644 docs/python_docs/python/api/advanced/index.rst delete mode 100644 docs/python_docs/python/api/advanced/mxnet.executor_manager.rst delete mode 100644 docs/python_docs/python/api/advanced/mxnet.test_utils.rst copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => autograd/index.rst} (89%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => contrib/autograd/index.rst} (88%) create mode 100644 docs/python_docs/python/api/contrib/index.rst copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => contrib/io/index.rst} (90%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => contrib/ndarray/index.rst} (88%) copy docs/python_docs/python/api/{gluon-related/mxnet.random.rst => contrib/onnx/index.rst} (88%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => contrib/quantization/index.rst} (87%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => contrib/symbol/index.rst} (88%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => contrib/tensorboard/index.rst} (87%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => contrib/tensorrt/index.rst} (88%) copy docs/python_docs/python/api/{gluon-related/mxnet.random.rst => contrib/text/index.rst} (89%) delete mode 100644 docs/python_docs/python/api/gluon-related/index.rst delete mode 100644 docs/python_docs/python/api/gluon-related/mxnet.autograd.rst delete mode 100644 docs/python_docs/python/api/gluon-related/mxnet.image.rst delete mode 100644 docs/python_docs/python/api/gluon-related/mxnet.initializer.rst delete mode 100644 docs/python_docs/python/api/gluon-related/mxnet.io.rst delete mode 100644 docs/python_docs/python/api/gluon-related/mxnet.kvstore.KVStore.rst delete mode 100644 docs/python_docs/python/api/gluon-related/mxnet.lr_scheduler.rst delete mode 100644 docs/python_docs/python/api/gluon-related/mxnet.optimizer.rst delete mode 100644 docs/python_docs/python/api/gluon-related/mxnet.profiler.rst delete mode 100644 docs/python_docs/python/api/gluon-related/mxnet.recordio.rst copy docs/python_docs/python/api/{gluon-related/mxnet.kvstore.create.rst => gluon/block.rst} (87%) copy docs/python_docs/python/api/{gluon-related/mxnet.kvstore.create.rst => gluon/constant.rst} (86%) rename docs/python_docs/python/api/gluon/{mxnet.gluon.contrib.rst => contrib/index.rst} (92%) rename docs/python_docs/python/api/gluon/{mxnet.gluon.data.rst => data/index.rst} (78%) rename docs/python_docs/python/api/{advanced/mxnet.rtc.rst => gluon/data/vision/datasets/index.rst} (78%) rename docs/python_docs/python/api/{gluon-related/mxnet.metric.rst => gluon/data/vision/index.rst} (68%) rename docs/python_docs/python/api/gluon/{mxnet.gluon.data.vision.rst => data/vision/transforms/index.rst} (78%) copy docs/python_docs/python/api/{gluon-related/mxnet.kvstore.create.rst => gluon/hybrid_block.rst} (86%) rename docs/python_docs/python/api/{advanced/mxnet.kvstore_server.rst => gluon/loss/index.rst} (80%) rename docs/python_docs/python/api/gluon/{mxnet.gluon.model_zoo.rst => model_zoo/index.rst} (84%) delete mode 100644 docs/python_docs/python/api/gluon/mxnet.gluon.HybridBlock.rst delete mode 100644 docs/python_docs/python/api/gluon/mxnet.gluon.ParameterDict.rst delete mode 100644 docs/python_docs/python/api/gluon/mxnet.gluon.Trainer.rst delete mode 100644 docs/python_docs/python/api/gluon/mxnet.gluon.loss.rst delete mode 100644 docs/python_docs/python/api/gluon/mxnet.gluon.nn.Block.rst delete mode 100644 docs/python_docs/python/api/gluon/mxnet.gluon.nn.HybridBlock.rst delete mode 100644 docs/python_docs/python/api/gluon/mxnet.gluon.nn.SymbolBlock.rst delete mode 100644 docs/python_docs/python/api/gluon/mxnet.gluon.parameter.rst delete mode 100644 docs/python_docs/python/api/gluon/mxnet.gluon.utils.rst rename docs/python_docs/python/api/gluon/{nn.rst => nn/index.rst} (81%) copy docs/python_docs/python/api/{gluon-related/mxnet.kvstore.create.rst => gluon/parameter.rst} (86%) copy docs/python_docs/python/api/{gluon-related/mxnet.kvstore.create.rst => gluon/parameter_dict.rst} (85%) rename docs/python_docs/python/api/gluon/{rnn.rst => rnn/index.rst} (75%) copy docs/python_docs/python/api/{gluon-related/mxnet.kvstore.create.rst => gluon/symbol_block.rst} (86%) copy docs/python_docs/python/api/{gluon-related/mxnet.kvstore.create.rst => gluon/trainer.rst} (87%) copy docs/python_docs/python/api/{gluon-related/mxnet.kvstore.create.rst => gluon/utils/index.rst} (89%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => initializer/index.rst} (88%) rename docs/python_docs/python/api/{gluon-related/mxnet.kvstore.rst => kvstore/index.rst} (92%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => lr_scheduler/index.rst} (88%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => metric/index.rst} (90%) copy docs/python_docs/python/api/{gluon-related/mxnet.random.rst => module/index.rst} (89%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => mxnet/attribute/index.rst} (89%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => mxnet/base/index.rst} (90%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => mxnet/callback/index.rst} (89%) rename docs/python_docs/python/api/{gluon-related/mxnet.context.rst => mxnet/context/index.rst} (88%) rename docs/python_docs/python/api/{advanced/mxnet.engine.rst => mxnet/engine/index.rst} (88%) rename docs/python_docs/python/api/{advanced/mxnet.executor.rst => mxnet/executor/index.rst} (88%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => mxnet/executor_manager/index.rst} (87%) rename docs/python_docs/python/api/{gluon/mxnet.gluon.SymbolBlock.rst => mxnet/image/index.rst} (74%) copy docs/python_docs/python/{ => api/mxnet}/index.rst (52%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => mxnet/io/index.rst} (90%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => mxnet/kvstore_server/index.rst} (87%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => mxnet/libinfo/index.rst} (87%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => mxnet/log/index.rst} (91%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => mxnet/model/index.rst} (90%) rename docs/python_docs/python/api/{symbol-related/mxnet.monitor.rst => mxnet/monitor/index.rst} (90%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => mxnet/name/index.rst} (90%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => mxnet/notebook/index.rst} (89%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => mxnet/operator/index.rst} (89%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => mxnet/profiler/index.rst} (89%) rename docs/python_docs/python/api/{gluon-related/mxnet.random.rst => mxnet/random/index.rst} (94%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => mxnet/recordio/index.rst} (89%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => mxnet/registry/index.rst} (89%) copy docs/python_docs/python/api/{gluon-related/mxnet.kvstore.create.rst => mxnet/rtc/index.rst} (91%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => mxnet/test_utils/index.rst} (88%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => mxnet/torch/index.rst} (90%) rename docs/python_docs/python/api/{advanced/mxnet.util.rst => mxnet/util/index.rst} (90%) rename docs/python_docs/python/api/{symbol-related/mxnet.visualization.rst => mxnet/visualization/index.rst} (88%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => ndarray/contrib/index.rst} (88%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => ndarray/image/index.rst} (89%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => ndarray/linalg/index.rst} (89%) delete mode 100644 docs/python_docs/python/api/ndarray/mxnet.ndarray.NDArray.rst delete mode 100644 docs/python_docs/python/api/ndarray/mxnet.ndarray.sparse.CSRNDArray.rst delete mode 100644 docs/python_docs/python/api/ndarray/mxnet.ndarray.sparse.RowSparseNDArray.rst copy docs/python_docs/python/api/{gluon-related/mxnet.kvstore.create.rst => ndarray/ndarray.rst} (85%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => ndarray/op/index.rst} (90%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => ndarray/random/index.rst} (89%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => ndarray/register/index.rst} (88%) delete mode 100644 docs/python_docs/python/api/ndarray/routines.rst copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => ndarray/sparse/index.rst} (89%) delete mode 100644 docs/python_docs/python/api/ndarray/sparse_routines.rst copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => ndarray/utils/index.rst} (89%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => optimizer/index.rst} (89%) delete mode 100644 docs/python_docs/python/api/symbol-related/index.rst delete mode 100644 docs/python_docs/python/api/symbol-related/mxnet.callback.rst delete mode 100644 docs/python_docs/python/api/symbol-related/mxnet.model.rst delete mode 100644 docs/python_docs/python/api/symbol-related/mxnet.module.rst copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => symbol/contrib/index.rst} (88%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => symbol/image/index.rst} (89%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => symbol/linalg/index.rst} (89%) delete mode 100644 docs/python_docs/python/api/symbol/mxnet.symbol.Symbol.rst delete mode 100644 docs/python_docs/python/api/symbol/mxnet.symbol.linalg.rst copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => symbol/op/index.rst} (90%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => symbol/random/index.rst} (89%) copy docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => symbol/register/index.rst} (88%) rename docs/python_docs/python/api/{gluon/mxnet.gluon.Constant.rst => symbol/sparse/index.rst} (89%) rename docs/python_docs/python/api/{gluon-related/mxnet.kvstore.create.rst => symbol/symbol.rst} (86%) create mode 100644 docs/python_docs/python/tutorials/deploy/run-on-aws/cloud.md delete mode 100644 docs/python_docs/python/tutorials/deploy/run-on-aws/cloud.rst create mode 100644 src/operator/contrib/allclose_op-inl.h create mode 100644 src/operator/contrib/allclose_op.cc create mode 100644 src/operator/contrib/allclose_op.cu create mode 100644 src/operator/contrib/mrcnn_mask_target-inl.h create mode 100644 src/operator/contrib/mrcnn_mask_target.cu create mode 100644 src/operator/contrib/reset_arrays-inl.h create mode 100644 src/operator/contrib/reset_arrays.cc copy src/operator/{numpy/linalg/np_gesvd.cu => contrib/reset_arrays.cu} (66%) create mode 100644 src/operator/contrib/stes_op.cc create mode 100644 src/operator/contrib/stes_op.cu create mode 100644 src/operator/contrib/stes_op.h create mode 100644 src/operator/image/crop.cu delete mode 100644 src/operator/nn/mkldnn/mkldnn_flatten.cc create mode 100644 src/operator/numpy/np_einsum_op-inl.h create mode 100644 src/operator/numpy/np_einsum_op.cc rename src/operator/{nn/mkldnn/mkldnn_flatten-inl.h => numpy/np_einsum_op.cu} (53%) create mode 100644 src/operator/numpy/np_einsum_path_op-inl.h create mode 100644 src/operator/numpy/np_elemwise_broadcast_logic_op.cc create mode 100644 src/operator/numpy/np_elemwise_broadcast_logic_op.cu create mode 100644 src/operator/numpy/np_true_divide-inl.h create mode 100644 src/operator/tensor/pseudo2DTranspose_op-inl.cuh create mode 100644 tests/cpp/engine/thread_local_test.cc delete mode 100644 tests/python/tensorrt/lenet5_common.py delete mode 100644 tests/python/tensorrt/test_tensorrt_batchnorm.py delete mode 100644 tests/python/tensorrt/test_tensorrt_deconv.py create mode 100644 tests/python/unittest/test_contrib_stes_op.py rename tools/pip/doc/{CU91MKL_ADDITIONAL.md => CU101MKL_ADDITIONAL.md} (81%) rename tools/pip/doc/{CU91_ADDITIONAL.md => CU101_ADDITIONAL.md} (78%)