Skip to content

Commit 44a5a26

Browse files
committed
optimization: add fast path
1 parent aea8f8c commit 44a5a26

2 files changed

Lines changed: 5 additions & 0 deletions

File tree

common/arg.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2891,6 +2891,9 @@ common_params_context common_params_parser_init(common_params & params, llama_ex
28912891
{"--sleep-idle-seconds"}, "SECONDS",
28922892
string_format("number of seconds of idleness after which the server will sleep (default: %d; -1 = disabled)", params.sleep_idle_seconds),
28932893
[](common_params & params, int value) {
2894+
if (value == 0 || value < -1) {
2895+
throw std::invalid_argument("invalid value: cannot be 0 or less than -1");
2896+
}
28942897
params.sleep_idle_seconds = value;
28952898
}
28962899
).set_examples({LLAMA_EXAMPLE_SERVER}));

tools/server/server-context.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2786,6 +2786,8 @@ struct server_res_generator : server_http_res {
27862786
server_response_reader rd;
27872787
server_res_generator(server_context_impl & ctx_server, bool bypass_sleep = false)
27882788
: rd(ctx_server.queue_tasks, ctx_server.queue_results, HTTP_POLLING_SECONDS) {
2789+
// fast path in case sleeping is disabled
2790+
bypass_sleep |= ctx_server.params_base.sleep_idle_seconds < 0;
27892791
if (!bypass_sleep) {
27902792
ctx_server.queue_tasks.wait_until_no_sleep();
27912793
}

0 commit comments

Comments
 (0)