mindspore/third_party/patch/onednn/0003-fix-zero-threads-ident...

14 lines
545 B
Diff

diff --git a/src/cpu/platform.cpp b/src/cpu/platform.cpp
index 1397073ba..041a3436f 100644
--- a/src/cpu/platform.cpp
+++ b/src/cpu/platform.cpp
@@ -154,6 +154,8 @@ unsigned get_num_cores() {
// function supports process affinity.
unsigned get_max_threads_to_use() {
int num_cores_per_socket = (int)dnnl::impl::cpu::platform::get_num_cores();
+ if (num_cores_per_socket <= 1)
+ num_cores_per_socket = std::thread::hardware_concurrency();
#if defined(_WIN32)
DWORD_PTR proc_affinity_mask;
DWORD_PTR sys_affinity_mask;