예제 #1
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_gpu_device_num(val: int) -> None:
    """Set number of GPUs on each machine to run oneflow on.

    Args:
        val (int): number of GPUs. It is identical on every machine. In other words,
        you can't specify different number of GPUs you would like to use on each machine.
    """
    if oneflow._oneflow_internal.flags.with_cuda():
        return enable_if.unique([gpu_device_num, do_nothing])(val)
    else:
        print(
            "INFO: for CPU-only OneFlow, oneflow.config.gpu_device_num is equivalent to oneflow.config.cpu_device_num"
        )
        print(traceback.format_stack()[-2])
        return enable_if.unique([cpu_device_num, do_nothing])(val)
예제 #2
0
def api_env_init() -> bool:
    """Init environment for job

    Returns:
        bool: [description]
    """
    return enable_if.unique([env_init, do_nothing])()
예제 #3
0
def api_enable_eager_execution(val: bool = True) -> None:
    """If True, job will execute in eager mode, else use lazy mode(static graph).

    Args:
        val (bool, optional): Whether  eager execution or not.  Defaults to True.
    """
    return enable_if.unique([enable_eager_environment])(val)
예제 #4
0
def api_logtostderr(val: int) -> None:
    """Set whether log messages go to stderr instead of logfiles

    Args:
        val (int): [description]
    """
    return enable_if.unique([logtostderr, do_nothing])(val)
예제 #5
0
def api_log_dir(val: str) -> None:
    """Specify a dir to store OneFlow's logging files. If not specified, it is `./log` by default.

    Args:
        val (str): string , log file path
    """
    return enable_if.unique([log_dir, do_nothing])(val)
예제 #6
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_cpu_device_num(val: int) -> None:
    """Set number of CPUs on each machine to run oneflow on. Usually you don't need to set this.

    Args:
        val (int): number of CPUs. It is identical on every machine.
    """
    return enable_if.unique([cpu_device_num, do_nothing])(val)
예제 #7
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_enable_fusion(val: bool = True) -> None:
    """Whether or not allow fusion the operators

    Args:
        val (bool, optional): True or False. Defaults to True.
    """
    return enable_if.unique([enable_fusion, do_nothing])(val=val)
예제 #8
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_reserved_device_mem_mbyte(val: int) -> None:
    """Set up the memory size of reserved device

    Args:
        val (int):  memory size, e.g. 1024(mb)
    """
    return enable_if.unique([reserved_device_mem_mbyte, do_nothing])(val)
예제 #9
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_compute_thread_pool_size(val: int) -> None:
    """Set up the size of compute thread pool

    Args:
        val (int): size of  thread pool
    """
    return enable_if.unique([compute_thread_pool_size, do_nothing])(val)
예제 #10
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_enable_mem_chain_merge(val: bool = True) -> None:
    """Whether or not to enable MemChain merge.

    Args:
        val (bool, optional): True or False. Defaults to True.
    """
    return enable_if.unique([enable_mem_chain_merge, do_nothing])(val=val)
예제 #11
0
def api_ctrl_port(val: int) -> None:
    """Set port number used to control the execution across multiple machines. Same on every machine.

    Args:
        val: a port number accessible to peer machines
    """
    return enable_if.unique([ctrl_port, do_nothing])(val)
예제 #12
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_enable_model_io_v2(val):
    """Whether or not use version2  of model input/output function.

    Args:
        val ([type]): True or False
    """
    return enable_if.unique([enable_model_io_v2, do_nothing])(val)
예제 #13
0
def api_data_port(val: int) -> None:
    """Set port number used to data transfer among multiple machines. Same on every machine.

    Args:
        val: a port number accessible to peer machines
    """
    return enable_if.unique([data_port, do_nothing])(val)
예제 #14
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_enable_legacy_model_io(val: bool = True):
    """Whether or not use legacy model io.

    Args:
        val ([type]): True or False
    """
    return enable_if.unique([enable_legacy_model_io, do_nothing])(val)
예제 #15
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_nccl_num_streams(val: int) -> None:
    """Set up the number of nccl parallel streams while use boxing

    Args:
        val (int): number of streams
    """
    return enable_if.unique([nccl_num_streams, do_nothing])(val)
예제 #16
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_nccl_enable_mixed_fusion(val: bool) -> None:
    """Whether or not use nccl mixed fusion

    Args:
        val (bool): True or False
    """
    return enable_if.unique([nccl_enable_mixed_fusion, do_nothing])(val)
예제 #17
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_nccl_fusion_threshold_mb(val: int) -> None:
    """Set up threshold for oprators fusion

    Args:
        val (int): int number, e.g. 10(mb)
    """
    return enable_if.unique([nccl_fusion_threshold_mb, do_nothing])(val)
예제 #18
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_load_library_now(val: str) -> None:
    """Load necessary library for job now

    Args:
        val (str): path to shared object file
    """
    return enable_if.unique([load_library_now, do_nothing])(val)
예제 #19
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_nccl_enable_all_to_all(val: bool) -> None:
    """Whether or not use nccl all2all during s2s boxing

    Args:
        val (bool): True or False
    """
    return enable_if.unique([nccl_enable_all_to_all, do_nothing])(val)
예제 #20
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_nccl_fusion_broadcast(val: bool) -> None:
    """Whether or not use nccl fusion during broadcast progress

    Args:
        val (bool): True or False
    """
    return enable_if.unique([nccl_fusion_broadcast, do_nothing])(val)
예제 #21
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_nccl_fusion_max_ops(val: int) -> None:
    """Maximum number of ops for nccl fusion.

    Args:
        val (int): Maximum number of ops
    """
    return enable_if.unique([nccl_fusion_max_ops, do_nothing])(val)
예제 #22
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_enable_debug_mode(val: bool) -> None:
    """Whether use debug mode or not.

    Args:
        val (bool):  True or False
    """
    return enable_if.unique([enable_debug_mode, do_nothing])(val)
예제 #23
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_nccl_fusion_all_gather(val: bool) -> None:
    """Whether or not use nccl fusion during all  gather progress

    Args:
        val (bool): True or False
    """
    return enable_if.unique([nccl_fusion_all_gather, do_nothing])(val)
예제 #24
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_machine_num(val: int) -> None:
    """Set available number of machine/node for  running job .

    Args:
        val (int): available number of machines
    """
    return enable_if.unique([machine_num, do_nothing])(val)
예제 #25
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_max_mdsave_worker_num(val: int) -> None:
    """Set up max number of workers for mdsave process.

    Args:
        val (int):  max number of workers
    """
    return enable_if.unique([max_mdsave_worker_num, do_nothing])(val)
예제 #26
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_nccl_fusion_all_reduce_use_buffer(val: bool) -> None:
    """Whether or not use buffer during nccl fusion progress

    Args:
        val (bool): True or False
    """
    return enable_if.unique([nccl_fusion_all_reduce_use_buffer,
                             do_nothing])(val)
예제 #27
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_enable_tensor_float_32_compute(val: bool = True) -> None:
    """Whether or not to enable Tensor-float-32 on supported GPUs

    Args:
        val (bool, optional): True or False. Defaults to True.
    """
    return enable_if.unique([enable_tensor_float_32_compute,
                             do_nothing])(val=val)
예제 #28
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_num_callback_threads(val: int) -> None:
    """Set up number of callback threads for boxing process.
            Boxing is used to convert between different parallel properties of logical tensor

    Args:
        val (int): number of  callback threads
    """
    return enable_if.unique([num_callback_threads, do_nothing])(val)
예제 #29
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_comm_net_worker_num(val: int) -> None:
    """Set up the workers number in epoll  mode network,
            If use RDMA mode network, then doesn't need.

    Args:
        val (int): number of workers
    """
    return enable_if.unique([comm_net_worker_num, do_nothing])(val)
예제 #30
0
파일: config_util.py 프로젝트: zzk0/oneflow
def api_enable_cudnn_fused_normalization_add_relu(val: bool) -> None:
    """Whether enable cudnn_fused_normalization_add_relu.

    Args:
        val (bool): whether enable or not
    """
    return enable_if.unique(
        [enable_cudnn_fused_normalization_add_relu, do_nothing])(val)