From ace6c12ec631dda283a17400463fb5b52d14b001 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Przemys=C5=82aw=20Pawe=C5=82czyk?= Date: Wed, 6 Sep 2023 17:19:36 +0200 Subject: [PATCH] ggml : posixify pagesize (#1251) * ggml : use sysconf(_SC_PAGESIZE) instead of getpagesize() derived from BSD sed -i 's,getpagesize(),sysconf(_SC_PAGESIZE),g' ggml.c * metal : use sysconf(_SC_PAGESIZE) instead of getpagesize() derived from BSD sed -i 's,getpagesize(),sysconf(_SC_PAGESIZE),g' ggml-metal.m --- ggml-metal.m | 4 ++-- ggml.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ggml-metal.m b/ggml-metal.m index d0d2344..521ca18 100644 --- a/ggml-metal.m +++ b/ggml-metal.m @@ -327,7 +327,7 @@ void ggml_metal_free(struct ggml_metal_context * ctx) { void * ggml_metal_host_malloc(size_t n) { void * data = NULL; - const int result = posix_memalign((void **) &data, getpagesize(), n); + const int result = posix_memalign((void **) &data, sysconf(_SC_PAGESIZE), n); if (result != 0) { metal_printf("%s: error: posix_memalign failed\n", __func__); return NULL; @@ -401,7 +401,7 @@ bool ggml_metal_add_buffer( } } - const size_t size_page = getpagesize(); + const size_t size_page = sysconf(_SC_PAGESIZE); size_t size_aligned = size; if ((size_aligned % size_page) != 0) { diff --git a/ggml.c b/ggml.c index 63a2222..eac00bb 100644 --- a/ggml.c +++ b/ggml.c @@ -198,7 +198,7 @@ typedef void * thread_ret_t; inline static void * ggml_aligned_malloc(size_t size) { void * aligned_memory = NULL; #ifdef GGML_USE_METAL - int result = posix_memalign(&aligned_memory, getpagesize(), size); + int result = posix_memalign(&aligned_memory, sysconf(_SC_PAGESIZE), size); #else int result = posix_memalign(&aligned_memory, GGML_MEM_ALIGN, size); #endif