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
This commit is contained in:
Sami Farin 2023-05-09 15:29:20 +03:00 committed by GitHub
parent 41654efea8
commit 9f8dbc4787
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

4
ggml.c
View File

@ -11663,7 +11663,11 @@ typedef int ggml_lock_t;
#define ggml_lock_init(x) UNUSED(x) #define ggml_lock_init(x) UNUSED(x)
#define ggml_lock_destroy(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) #define ggml_lock_lock(x) UNUSED(x)
#endif
#define ggml_lock_unlock(x) UNUSED(x) #define ggml_lock_unlock(x) UNUSED(x)
#define GGML_LOCK_INITIALIZER 0 #define GGML_LOCK_INITIALIZER 0