diff --git a/ggml/src/ggml-vulkan/ggml-vulkan.cpp b/ggml/src/ggml-vulkan/ggml-vulkan.cpp index 7a00cecf2..185df249c 100644 --- a/ggml/src/ggml-vulkan/ggml-vulkan.cpp +++ b/ggml/src/ggml-vulkan/ggml-vulkan.cpp @@ -17961,6 +17961,12 @@ static bool ggml_backend_vk_register_host_buffer(void * buffer, size_t size) { if (chunk == 0) { continue; } + if (getenv("GGML_VK_PIN_CHUNK")) { + size_t env_chunk = strtoull(getenv("GGML_VK_PIN_CHUNK"), nullptr, 10); + if (env_chunk > 0) { + chunk = env_chunk & ~(align - 1); + } + } uint8_t * p = static_cast(buffer); size_t remaining = size;