Skip to content

Commit 740e7cb

Browse files
committed
llama : add llama_supports_rpc API
1 parent bc40adb commit 740e7cb

File tree

4 files changed

+19
-16
lines changed

4 files changed

+19
-16
lines changed

common/arg.cpp

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1353,15 +1353,15 @@ gpt_params_context gpt_params_parser_init(gpt_params & params, llama_example ex,
13531353
params.image.emplace_back(value);
13541354
}
13551355
).set_examples({LLAMA_EXAMPLE_LLAVA}));
1356-
#ifdef GGML_USE_RPC
1357-
add_opt(llama_arg(
1358-
{"--rpc"}, "SERVERS",
1359-
"comma separated list of RPC servers",
1360-
[](gpt_params & params, const std::string & value) {
1361-
params.rpc_servers = value;
1362-
}
1363-
).set_env("LLAMA_ARG_RPC"));
1364-
#endif
1356+
if (llama_supports_rpc()) {
1357+
add_opt(llama_arg(
1358+
{"--rpc"}, "SERVERS",
1359+
"comma separated list of RPC servers",
1360+
[](gpt_params & params, const std::string & value) {
1361+
params.rpc_servers = value;
1362+
}
1363+
).set_env("LLAMA_ARG_RPC"));
1364+
}
13651365
add_opt(llama_arg(
13661366
{"--mlock"},
13671367
"force system to keep model in RAM rather than swapping or compressing",

examples/llama-bench/llama-bench.cpp

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -304,9 +304,9 @@ static void print_usage(int /* argc */, char ** argv) {
304304
printf(" --cpu-strict <0|1> (default: %s)\n", join(cmd_params_defaults.cpu_strict, ",").c_str());
305305
printf(" --poll <0...100> (default: %s)\n", join(cmd_params_defaults.poll, ",").c_str());
306306
printf(" -ngl, --n-gpu-layers <n> (default: %s)\n", join(cmd_params_defaults.n_gpu_layers, ",").c_str());
307-
#ifdef GGML_USE_RPC
308-
printf(" -rpc, --rpc <rpc_servers> (default: %s)\n", join(cmd_params_defaults.rpc_servers, ",").c_str());
309-
#endif
307+
if (llama_supports_rpc()) {
308+
printf(" -rpc, --rpc <rpc_servers> (default: %s)\n", join(cmd_params_defaults.rpc_servers, ",").c_str());
309+
}
310310
printf(" -sm, --split-mode <none|layer|row> (default: %s)\n", join(transform_to_str(cmd_params_defaults.split_mode, split_mode_str), ",").c_str());
311311
printf(" -mg, --main-gpu <i> (default: %s)\n", join(cmd_params_defaults.main_gpu, ",").c_str());
312312
printf(" -nkvo, --no-kv-offload <0|1> (default: %s)\n", join(cmd_params_defaults.no_kv_offload, ",").c_str());
@@ -497,14 +497,12 @@ static cmd_params parse_cmd_params(int argc, char ** argv) {
497497
}
498498
auto p = string_split<int>(argv[i], split_delim);
499499
params.n_gpu_layers.insert(params.n_gpu_layers.end(), p.begin(), p.end());
500-
#ifdef GGML_USE_RPC
501-
} else if (arg == "-rpc" || arg == "--rpc") {
500+
} else if (llama_supports_rpc() && (arg == "-rpc" || arg == "--rpc")) {
502501
if (++i >= argc) {
503502
invalid_param = true;
504503
break;
505504
}
506505
params.rpc_servers.push_back(argv[i]);
507-
#endif
508506
} else if (arg == "-sm" || arg == "--split-mode") {
509507
if (++i >= argc) {
510508
invalid_param = true;

include/llama.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -433,6 +433,7 @@ extern "C" {
433433
LLAMA_API bool llama_supports_mmap (void);
434434
LLAMA_API bool llama_supports_mlock (void);
435435
LLAMA_API bool llama_supports_gpu_offload(void);
436+
LLAMA_API bool llama_supports_rpc (void);
436437

437438
LLAMA_API uint32_t llama_n_ctx (const struct llama_context * ctx);
438439
LLAMA_API uint32_t llama_n_batch (const struct llama_context * ctx);

src/llama.cpp

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18996,10 +18996,14 @@ bool llama_supports_gpu_offload(void) {
1899618996
#else
1899718997
return ggml_backend_dev_by_type(GGML_BACKEND_DEVICE_TYPE_GPU) != nullptr ||
1899818998
ggml_backend_dev_by_type(GGML_BACKEND_DEVICE_TYPE_GPU_FULL) != nullptr ||
18999-
ggml_backend_reg_by_name("RPC") != nullptr;
18999+
llama_supports_rpc();
1900019000
#endif
1900119001
}
1900219002

19003+
bool llama_supports_rpc(void) {
19004+
return ggml_backend_reg_by_name("RPC") != nullptr;
19005+
}
19006+
1900319007
void llama_backend_init(void) {
1900419008
ggml_time_init();
1900519009

0 commit comments

Comments
 (0)