def from_parameters(params: Parameters) -> ResourceRequest:
     return SlurmResourceRequest(
         partition=params.string("partition"),
         num_cpus=params.optional_positive_integer("num_cpus"),
         num_gpus=params.optional_integer("num_gpus"),
         memory=MemoryAmount.parse(params.string("memory"))
         if "memory" in params else None,
         job_time_in_minutes=params.optional_integer("job_time_in_minutes"),
         exclude_list=params.optional_string("exclude_list"),
         run_on_single_node=params.optional_string("run_on_single_node"),
     )
Beispiel #2
0
def key_function_from_params(params: Parameters) -> Callable[[Path], str]:
    key_function_string = (params.optional_string(
        "key_function", [IDENTITY, STRIP_ONE_EXTENSION]) or IDENTITY)
    if key_function_string == IDENTITY:
        return identity_key_function
    elif key_function_string == STRIP_ONE_EXTENSION:
        return strip_one_extension_key_function
    else:
        raise NotImplementedError(f"Unknown key function %s",
                                  key_function_string)