diff --git a/docs/execution-providers/Azure-ExecutionProvider.md b/docs/execution-providers/Azure-ExecutionProvider.md index ae6f4d9a8c..cb153451a6 100644 --- a/docs/execution-providers/Azure-ExecutionProvider.md +++ b/docs/execution-providers/Azure-ExecutionProvider.md @@ -28,14 +28,6 @@ Pre-built Python binaries of ONNX Runtime with Azure EP are published on Pypi: [ ## Requirements -For Windows, please install [zlib](https://zlib.net/) and [re2](https://github.com/google/re2), and add their binaries into the system path. -If built from source, zlib and re2 binaries could be easily located with: - -```dos -cd -dir /s zlib1.dll re2.dll -``` - For Linux, please make sure openssl is installed. ## Build diff --git a/docs/performance/tune-performance/troubleshooting.md b/docs/performance/tune-performance/troubleshooting.md index f7afa69134..51c7c6fd4a 100644 --- a/docs/performance/tune-performance/troubleshooting.md +++ b/docs/performance/tune-performance/troubleshooting.md @@ -60,3 +60,12 @@ whenever it is ready to run. So over a period of time, threads in the pool are l Due to the same reason, the dynamic cost model may also improve the performance for cases when threads are more likely be preempted. Per our tests, by far the best configuration for dynamic_block_base is 4, which lowers the variance while keeping good performance. + +## I am seeing high CPU usage on windows + +It is observed that for machines have more than 64 logical cores, CPU usage could be notably lowered by letting the thread pool use a lock-free task queue, +which utilizes spinlock instead of mutex for synchronization. The lock-free task queue could be enabled by building onnxruntime from source with following flag: + +``` +--use_lock_free_queue +``` \ No newline at end of file