From: Sami Farin Date: Tue, 9 May 2023 12:29:20 +0000 (+0300) Subject: use pause asm insn in busyloop to run the CPU (13600K) 10 °C cooler (#1314) X-Git-Tag: gguf-v0.4.0~781 X-Git-Url: https://git.djapps.eu/?a=commitdiff_plain;h=9f8dbc4787f32cd9c13b5c647d497d13c1a06db2;p=pkg%2Fggml%2Fsources%2Fllama.cpp use pause asm insn in busyloop to run the CPU (13600K) 10 °C cooler (#1314) * use pause asm insn in busyloop to run the CPU (13600K) 10 °C cooler Tested with a 13B model. * use _mm_pause() in busyloop * use _mm_pause() in busyloop on x86_64 to reduce power consumption --- diff --git a/ggml.c b/ggml.c index 1b89bdd8..4e309df8 100644 --- a/ggml.c +++ b/ggml.c @@ -11663,7 +11663,11 @@ typedef int ggml_lock_t; #define ggml_lock_init(x) UNUSED(x) #define ggml_lock_destroy(x) UNUSED(x) +#if defined(__x86_64__) || (defined(_MSC_VER) && defined(_M_AMD64)) +#define ggml_lock_lock(x) _mm_pause() +#else #define ggml_lock_lock(x) UNUSED(x) +#endif #define ggml_lock_unlock(x) UNUSED(x) #define GGML_LOCK_INITIALIZER 0