feat: Add configurable network port options

This commit is contained in:
DandinPower
2025-06-10 23:16:57 +08:00
parent fbf853341b
commit 1e7ae71ce5
5 changed files with 70 additions and 9 deletions
+35
View File
@@ -723,6 +723,41 @@ gpt_params_context gpt_params_parser_init(gpt_params & params, llama_example ex,
params.next_node_ip = value;
}
).set_env("LLAMA_ARG_NEXT_NODE_IP"));
add_opt(llama_arg(
{"--data-port"}, "PORT",
format("data port base for this node (default: %d)", params.data_port),
[](gpt_params & params, int value) {
params.data_port = value;
}
));
add_opt(llama_arg(
{"--signal-port"}, "PORT",
format("signal port base for this node (default: %d)", params.signal_port),
[](gpt_params & params, int value) {
params.signal_port = value;
}
));
add_opt(llama_arg(
{"--master-data-port"}, "PORT",
format("master node data port base (default: %d)", params.master_data_port),
[](gpt_params & params, int value) {
params.master_data_port = value;
}
));
add_opt(llama_arg(
{"--next-node-data-port"}, "PORT",
format("next node data port base (default: %d)", params.next_node_data_port),
[](gpt_params & params, int value) {
params.next_node_data_port = value;
}
));
add_opt(llama_arg(
{"--next-node-signal-port"}, "PORT",
format("next node signal port base (default: %d)", params.next_node_signal_port),
[](gpt_params & params, int value) {
params.next_node_signal_port = value;
}
));
add_opt(llama_arg(
{"--prefetch"},
format("whether to prefetch layer weights (default: %s)", params.prefetch ? "true" : "false"),
+5
View File
@@ -1999,6 +1999,11 @@ struct llama_context_params llama_context_params_from_gpt_params(const gpt_param
}
cparams.master_ip = new char[params.master_ip.length() + 1];
std::strcpy(cparams.master_ip, params.master_ip.c_str());
cparams.data_port = params.data_port;
cparams.signal_port = params.signal_port;
cparams.master_data_port = params.master_data_port;
cparams.next_node_data_port = params.next_node_data_port;
cparams.next_node_signal_port = params.next_node_signal_port;
if (cparams.next_node_ip != nullptr) {
delete[] cparams.next_node_ip;
+5
View File
@@ -147,6 +147,11 @@ struct gpt_params {
uint32_t n_layer_window[32] = {0}; // layer window size on each node
std::string master_ip = "localhost"; // ip address of the master node
std::string next_node_ip = "localhost"; // ip address of my next node
uint32_t data_port = 9000; // base data port for this node
uint32_t signal_port = 10000; // base signal port for this node
uint32_t master_data_port = 9000; // data port base for master node
uint32_t next_node_data_port = 9000; // data port base for next node
uint32_t next_node_signal_port = 10000; // signal port base for next node
bool prefetch = false; // prefetch layer weights
bool keep_out_in_metal = true; // whether to keep output weights in metal memory, true by default
bool force = false; // force to start prefetching after computation