]> git.djapps.eu Git - pkg/ggml/sources/llama.cpp/commitdiff
ggml-cpu : set openmp wait time if not set (#13758)
authorDiego Devesa <redacted>
Sat, 24 May 2025 20:26:47 +0000 (13:26 -0700)
committerGitHub <redacted>
Sat, 24 May 2025 20:26:47 +0000 (22:26 +0200)
ggml/src/ggml-cpu/ggml-cpu.c

index 46f75ad97cd6161fe71aa59b79e91ef6ce0d8784..aa51dc21a5de4a5d6b4053616dbdbf25e8571046 100644 (file)
@@ -3484,6 +3484,19 @@ void ggml_cpu_init(void) {
             const uint64_t t_end = ggml_time_us(); UNUSED(t_end);
 
             GGML_PRINT_DEBUG("%s: GELU, Quick GELU, SILU and EXP tables initialized in %f ms\n", __func__, (t_end - t_start)/1000.0);
+
+#ifdef GGML_USE_OPENMP
+            //if (!getenv("OMP_WAIT_POLICY")) {
+            //    // set the wait policy to active, so that OpenMP threads don't sleep
+            //    putenv("OMP_WAIT_POLICY=active");
+            //}
+
+            if (!getenv("KMP_BLOCKTIME")) {
+                // set the time to wait before sleeping a thread
+                // this is less aggressive than setting the wait policy to active, but should achieve similar results in most cases
+                putenv("KMP_BLOCKTIME=200"); // 200ms
+            }
+#endif
         }
 
 #if defined(__ARM_ARCH)