From 87d34b381d5868e75586210ec17b5ef5deddc276 Mon Sep 17 00:00:00 2001 From: Georgi Gerganov Date: Mon, 9 Jun 2025 12:57:58 +0300 Subject: [PATCH] server : fix LRU check (#14079) ggml-ci --- tools/server/server.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tools/server/server.cpp b/tools/server/server.cpp index 2e78dcd7b..77dcbc11b 100644 --- a/tools/server/server.cpp +++ b/tools/server/server.cpp @@ -2142,7 +2142,8 @@ struct server_context { // find the slot that has been least recently used if (ret == nullptr) { - int64_t t_last = ggml_time_us(); + int64_t t_last = -1; + for (server_slot & slot : slots) { // skip the slot if it is not available if (slot.is_processing()) { @@ -2150,7 +2151,7 @@ struct server_context { } // select the current slot if the criteria match - if (slot.t_last_used < t_last) { + if (!ret || slot.t_last_used <= t_last) { t_last = slot.t_last_used; ret = &slot; }