@@ -82,6 +82,7 @@ class ExperimentConfig:
8282 num_layers : int
8383 num_hops : int
8484 gpu : bool
85+ server_device : Optional [str ]
8586 num_cpus_per_trainer : int
8687 num_gpus_per_trainer : float
8788 use_ogb_load_patch : bool
@@ -339,6 +340,7 @@ def to_fedgraph_args(
339340 "num_layers" : config .num_layers ,
340341 "num_hops" : config .num_hops ,
341342 "gpu" : config .gpu ,
343+ "server_device" : config .server_device ,
342344 "num_cpus_per_trainer" : config .num_cpus_per_trainer ,
343345 "num_gpus_per_trainer" : config .num_gpus_per_trainer ,
344346 "logdir" : str (logdir ),
@@ -981,6 +983,7 @@ def build_configs(args) -> List[ExperimentConfig]:
981983 num_layers = args .num_layers ,
982984 num_hops = args .num_hops ,
983985 gpu = args .gpu ,
986+ server_device = args .server_device ,
984987 num_cpus_per_trainer = args .num_cpus_per_trainer ,
985988 num_gpus_per_trainer = args .num_gpus_per_trainer ,
986989 use_ogb_load_patch = use_ogb_load_patch ,
@@ -1021,6 +1024,15 @@ def parse_args():
10211024 parser .add_argument ("--num-hops" , type = int , default = 0 )
10221025 parser .add_argument ("--method" , default = None )
10231026 parser .add_argument ("--gpu" , action = "store_true" )
1027+ parser .add_argument (
1028+ "--server-device" ,
1029+ choices = ("cpu" , "cuda" ),
1030+ default = None ,
1031+ help = (
1032+ "Temporary NC server-device override. By default, the server uses "
1033+ "the same device selected by --gpu."
1034+ ),
1035+ )
10241036 parser .add_argument ("--num-cpus-per-trainer" , type = int , default = 1 )
10251037 parser .add_argument ("--num-gpus-per-trainer" , type = float , default = 0.0 )
10261038 parser .add_argument (
0 commit comments