onnxruntime/tools/ci_build/github/azure-pipelines
Changming Sun c716b56f26
Update C++ Standard from 14 to 17 (#8041)
Switched the code to C++17. To build ONNX Runtime on old distros like CentOS 7, you need to install a newer GCC from additionary repos. If you build onnxruntime with the newer GCC, typically the result binary can't be distributed to other places because it depends on the new GCC's runtime libraries, something that the stock OS doesn't have. But on RHEL/CentOS, it can be better. We use Red Hat devtoolset 8/9/10 with CentOS7 building our code. The new library features(like std::filesystem) that not exists in the old C++ runtime will be statically linked into the applications with some restrictions:

1. GCC has dual ABI, but we can only use the old one. It means std::string is still copy-on-write and std::list::size() is still O(n). Also, if you build onnxruntime on CentOS 7 and link it with some binaries that were built on CentOS 8 or Ubuntu with the new ABI and export C++ symbols directly(instead of using a C API), the it won't work.

2. We still can't use std::optional. It is a limitation coming from macOS. We will solve it when we got macOS 11 build machines. It won't be too long.

3. Please avoid to use C++17 in CUDA files(*.cu). Also, the *.h files that they include(like core/framework/float16.h). This is Because CUDA 10.2 doesn't support C++17. You are welcome to use the new features in any *.cc files.
2021-06-25 14:08:01 -07:00
..
nodejs [JS] refactor Javascript/Typescript libraries in ONNX Runtime (#7308) 2021-04-16 01:33:10 -07:00
nuget Delete some unused code in run_dockerbuild.sh and Enable Nuget CUDA tests (#8089) 2021-06-22 18:43:33 -07:00
templates Update C++ Standard from 14 to 17 (#8041) 2021-06-25 14:08:01 -07:00
android-x86_64-crosscompile-ci-pipeline.yml Update Mac CI builds to use macOS-10.15 image, Xcode 12.4. (#7437) 2021-05-27 09:39:34 -07:00
c-api-noopenmp-packaging-pipelines.yml Remove CUDA architectures 35 and 86 from GPU packages (#8004) 2021-06-09 17:47:34 -07:00
clean-build-docker-image-cache-pipeline.yml Update build docker image cache cleanup build definition (#7452) 2021-04-26 14:39:46 -07:00
featurizers-py-packaging-pipeline.yml
linux-ci-pipeline.yml Split Linux CPU CI pipeline (#8097) 2021-06-21 10:52:30 -07:00
linux-cpu-minimal-build-ci-pipeline.yml Check kernel def hashes (#7120) 2021-04-01 17:42:58 -07:00
linux-dnnl-ci-pipeline.yml Update manylinux build scripts and GPU CUDA version from 11.0 to 11.1 (#7632) 2021-06-02 23:36:49 -07:00
linux-gpu-ci-pipeline.yml Split Linux CPU CI pipeline (#8097) 2021-06-21 10:52:30 -07:00
linux-gpu-cuda-11-pipeline.yml Update manylinux build scripts and GPU CUDA version from 11.0 to 11.1 (#7632) 2021-06-02 23:36:49 -07:00
linux-gpu-tensorrt-7-1-ci-pipeline.yml Add TRT 7.1 Pipeline (#8073) 2021-06-21 20:57:04 -07:00
linux-gpu-tensorrt-ci-perf-pipeline.yml Make Perf Test Configurable (#7836) 2021-06-18 11:11:19 -07:00
linux-gpu-tensorrt-ci-pipeline.yml Fix training e2e pipeline (#7942) 2021-06-04 09:37:09 -07:00
linux-gpu-tensorrt-packaging-pipeline.yml Remove CUDA architectures 35 and 86 from GPU packages (#8004) 2021-06-09 17:47:34 -07:00
linux-multi-gpu-ci-pipeline.yml Update manylinux build scripts and GPU CUDA version from 11.0 to 11.1 (#7632) 2021-06-02 23:36:49 -07:00
linux-multi-gpu-tensorrt-ci-pipeline.yml Delete some unused code in run_dockerbuild.sh and Enable Nuget CUDA tests (#8089) 2021-06-22 18:43:33 -07:00
linux-nocontribops-ci-pipeline.yml Update manylinux build scripts and GPU CUDA version from 11.0 to 11.1 (#7632) 2021-06-02 23:36:49 -07:00
linux-nuphar-ci-pipeline.yml Delete some unused code in run_dockerbuild.sh and Enable Nuget CUDA tests (#8089) 2021-06-22 18:43:33 -07:00
linux-openvino-ci-pipeline.yml Delete some unused code in run_dockerbuild.sh and Enable Nuget CUDA tests (#8089) 2021-06-22 18:43:33 -07:00
linux-openvino-nightly-pipeline.yml Delete some unused code in run_dockerbuild.sh and Enable Nuget CUDA tests (#8089) 2021-06-22 18:43:33 -07:00
linux-ort-srv-ci-pipeline.yml Update manylinux build scripts and GPU CUDA version from 11.0 to 11.1 (#7632) 2021-06-02 23:36:49 -07:00
linux-pytorch-custom-ops-ci-pipeline.yml
mac-ci-pipeline.yml Initial Objective-C API (#7366) 2021-04-27 10:06:30 -07:00
mac-coreml-ci-pipeline.yml Update C++ Standard from 14 to 17 (#8041) 2021-06-25 14:08:01 -07:00
mac-ios-ci-pipeline.yml Update C++ Standard from 14 to 17 (#8041) 2021-06-25 14:08:01 -07:00
mac-nocontribops-ci-pipeline.yml
orttraining-linux-ci-pipeline.yml Fix Python Packaging Pipeline && Build Clean Up (#7993) 2021-06-09 17:35:17 +08:00
orttraining-linux-gpu-amd-e2e-test-ci-pipeline.yml Add BERT-L perf regression test on MI100 and re-enable batch size test (#7240) 2021-04-05 15:51:52 -07:00
orttraining-linux-gpu-ci-pipeline.yml Delete some unused code in run_dockerbuild.sh and Enable Nuget CUDA tests (#8089) 2021-06-22 18:43:33 -07:00
orttraining-linux-gpu-distributed-e2e-test-pipeline.yml Delete some unused code in run_dockerbuild.sh and Enable Nuget CUDA tests (#8089) 2021-06-22 18:43:33 -07:00
orttraining-linux-gpu-distributed-test-ci-pipeline.yml Delete some unused code in run_dockerbuild.sh and Enable Nuget CUDA tests (#8089) 2021-06-22 18:43:33 -07:00
orttraining-linux-gpu-docker-release-pipeline.yml icnrease timeout (#7145) 2021-03-26 11:26:18 -07:00
orttraining-linux-gpu-ortmodule-distributed-test-ci-pipeline.yml Delete some unused code in run_dockerbuild.sh and Enable Nuget CUDA tests (#8089) 2021-06-22 18:43:33 -07:00
orttraining-linux-gpu-ortmodule-test-clear-cache-pipeline.yml Add pipeline to clear the cache for huggingface transormers models (#6813) 2021-02-26 10:39:22 -08:00
orttraining-linux-gpu-perf-test-ci-pipeline.yml Delete some unused code in run_dockerbuild.sh and Enable Nuget CUDA tests (#8089) 2021-06-22 18:43:33 -07:00
orttraining-mac-ci-pipeline.yml
orttraining-pai-ci-pipeline.yml Add BERT-L perf regression test on MI100 and re-enable batch size test (#7240) 2021-04-05 15:51:52 -07:00
orttraining-py-packaging-pipeline-cuda102.yml to used cudnn7 to build onnxruntime-training wheel with Cuda 10.2 support (#7760) 2021-05-20 09:18:41 -07:00
orttraining-py-packaging-pipeline-cuda111.yml to used cudnn7 to build onnxruntime-training wheel with Cuda 10.2 support (#7760) 2021-05-20 09:18:41 -07:00
orttraining-py-packaging-pipeline-rocm.yml to used cudnn7 to build onnxruntime-training wheel with Cuda 10.2 support (#7760) 2021-05-20 09:18:41 -07:00
orttraining-win-ci-pipeline.yml
orttraining-win-gpu-ci-pipeline.yml
post-merge-jobs.yml Improve code coverage report (#7770) 2021-05-25 08:26:01 -07:00
py-packaging-pipeline.yml Update manylinux build scripts and GPU CUDA version from 11.0 to 11.1 (#7632) 2021-06-02 23:36:49 -07:00
win-ci-fuzz-testing.yml Add python 3.8/3.9 support for Windows GPU and Linux ARM64 (#6615) 2021-02-11 16:43:35 -08:00
win-ci-pipeline.yml Update the operator documentation generation (#7787) 2021-06-02 17:47:40 +10:00
win-gpu-ci-pipeline.yml Enable C# GPU tests in Windows GPU CI pipeline (#8142) 2021-06-25 08:11:45 -07:00
win-gpu-cuda-10-2-pipeline.yml Remove DML from Windows GPU CUDA 10.2 pipeline 2021-06-15 16:53:24 -07:00
win-gpu-reduce-op-ci-pipeline.yml Change how ONNX get installed 2021-02-10 14:41:26 -08:00
win-gpu-tensorrt-ci-pipeline.yml Add CMAKE_CUDA_ARCHITECTURES=52 to TensorRT CI pipelines (#7455) 2021-04-27 09:55:23 -07:00
win-wasm-ci-pipeline.yml [js/web] Add wasm SIMD backend to onnxruntime-web (#7896) 2021-06-07 23:24:27 -07:00