Beispiel #1
0
def get():
    comm_val = os.environ.get("CHPL_COMM")
    if not comm_val:
        platform_val = chpl_platform.get("target")
        compiler_val = chpl_compiler.get("target")

        # use ugni on cray-x* machines using the module and supported compiler
        #
        # Check that target arch is not knc. Don't use chpl_arch.get(), though,
        # since it already calls into this get() function. This check only
        # happens for X* systems using the Cray programming environment, so it
        # is safe to assume the relevant craype module will be used that sets
        # CRAY_CPU_TARGET.
        if (
            platform_val.startswith("cray-x")
            and utils.using_chapel_module()
            and compiler_val in ("cray-prgenv-gnu", "cray-prgenv-intel")
            and os.getenv("CRAY_CPU_TARGET", "") != "knc"
        ):
            comm_val = "ugni"
        # automatically uses gasnet when on a cray-x* or cray-cs machine
        elif platform_val.startswith("cray-"):
            comm_val = "gasnet"
        else:
            comm_val = "none"
    return comm_val
Beispiel #2
0
def get():
    comm_val = os.environ.get('CHPL_COMM')
    if not comm_val:
        platform_val = chpl_platform.get('target')
        compiler_val = chpl_compiler.get('target')

        # use ugni on cray-x* machines using the module and supported compiler
        #
        # Check that target arch is not knc. Don't use chpl_arch.get(), though,
        # since it already calls into this get() function. This check only
        # happens for X* systems using the Cray programming environment, so it
        # is safe to assume the relevant craype module will be used that sets
        # CRAY_CPU_TARGET.
        ugni_comp = ('cray-prgenv-gnu', 'cray-prgenv-intel',
                     'cray-prgenv-cray')
        if (platform_val.startswith('cray-x') and utils.using_chapel_module()
                and compiler_val in ugni_comp
                and os.getenv('CRAY_CPU_TARGET', '') != 'knc'):
            comm_val = 'ugni'
        # automatically uses gasnet when on a cray-x* or cray-cs machine
        elif platform_val.startswith('cray-'):
            comm_val = 'gasnet'
        else:
            comm_val = 'none'
    return comm_val
Beispiel #3
0
def get():
    comm_val = os.environ.get('CHPL_COMM')
    if not comm_val:
        platform_val = chpl_platform.get('target')
        compiler_val = chpl_compiler.get('target')

        # use ugni on cray-x* machines using the module and supported compiler
        #
        # Check that target arch is not knc. Don't use chpl_arch.get(), though,
        # since it already calls into this get() function. This check only
        # happens for X* systems using the Cray programming environment, so it
        # is safe to assume the relevant craype module will be used that sets
        # CRAY_CPU_TARGET.
        ugni_comp = ('cray-prgenv-gnu', 'cray-prgenv-intel', 'cray-prgenv-cray')
        if (platform_val.startswith('cray-x') and
                utils.using_chapel_module() and
                compiler_val in ugni_comp and
                os.getenv('CRAY_CPU_TARGET', '') != 'knc'):
            comm_val = 'ugni'
        # automatically uses gasnet when on a cray-x* or cray-cs machine
        elif platform_val.startswith('cray-'):
            comm_val = 'gasnet'
        else:
            comm_val = 'none'
    return comm_val
Beispiel #4
0
def get():
    tasks_val = os.environ.get('CHPL_TASKS')
    if not tasks_val:
        arch_val = chpl_arch.get('target', get_lcd=True)
        platform_val = chpl_platform.get()
        compiler_val = chpl_compiler.get('target')
        comm_val = chpl_comm.get()

        # use muxed on cray-x* machines using the module and supported compiler
        if (comm_val == 'ugni' and
                platform_val.startswith('cray-x') and
                utils.using_chapel_module() and
                compiler_val in ('cray-prgenv-gnu', 'cray-prgenv-intel') and
                arch_val != 'knc'):
            tasks_val = 'muxed'
        elif (arch_val == 'knc' or
                platform_val.startswith('cygwin') or
                platform_val.startswith('netbsd') or
                compiler_val == 'pgi'             or
                compiler_val == 'cray-prgenv-pgi' or
                compiler_val == 'cray-prgenv-cray'):
            tasks_val = 'fifo'
        else:
            tasks_val = 'qthreads'
    return tasks_val
Beispiel #5
0
def get():
    comm_val = os.environ.get('CHPL_COMM')
    if not comm_val:
        platform_val = chpl_platform.get('target')
        compiler_val = chpl_compiler.get('target')

        # use ugni on cray-x* machines using the module and supported compiler
        ugni_comp = ('cray-prgenv-gnu', 'cray-prgenv-intel', 'cray-prgenv-cray')
        if (platform_val.startswith('cray-x') and
                utils.using_chapel_module() and
                compiler_val in ugni_comp):
            comm_val = 'ugni'
        # automatically uses gasnet when on a cray-x* or cray-cs machine
        elif platform_val.startswith('cray-'):
            comm_val = 'gasnet'
        else:
            comm_val = 'none'
    return comm_val
Beispiel #6
0
def get():
    comm_val = os.environ.get('CHPL_COMM')
    if not comm_val:
        platform_val = chpl_platform.get('target')
        compiler_val = chpl_compiler.get('target')

        # use ugni on cray-x* machines using the module and supported compiler
        ugni_comp = ('cray-prgenv-gnu', 'cray-prgenv-intel',
                     'cray-prgenv-cray')
        if (platform_val.startswith('cray-x') and utils.using_chapel_module()
                and compiler_val in ugni_comp):
            comm_val = 'ugni'
        # automatically uses gasnet when on a cray-x* or cray-cs machine
        elif platform_val.startswith('cray-'):
            comm_val = 'gasnet'
        else:
            comm_val = 'none'
    return comm_val
Beispiel #7
0
def get():
    tasks_val = os.environ.get('CHPL_TASKS')
    if not tasks_val:
        arch_val = chpl_arch.get('target', get_lcd=True)
        platform_val = chpl_platform.get()
        compiler_val = chpl_compiler.get('target')
        comm_val = chpl_comm.get()

        # use muxed on cray-x* machines using the module and supported compiler
        if (comm_val == 'ugni' and platform_val.startswith('cray-x')
                and utils.using_chapel_module()
                and compiler_val in ('cray-prgenv-gnu', 'cray-prgenv-intel')
                and arch_val != 'knc'):
            tasks_val = 'muxed'
        elif (arch_val == 'knc' or platform_val.startswith('cygwin')
              or platform_val.startswith('netbsd')
              or compiler_val == 'cray-prgenv-cray'):
            tasks_val = 'fifo'
        else:
            tasks_val = 'qthreads'
    return tasks_val
Beispiel #8
0
def default_uniq_cfg_path():
    return '{0}-{1}-{2}'.format(chpl_platform.get('target'),
                                chpl_compiler.get('target'),
                                chpl_arch.get('target', map_to_compiler=True,
                                              get_lcd=utils.using_chapel_module()))
Beispiel #9
0
def default_uniq_cfg_path():
    return '{0}-{1}-{2}'.format(
        chpl_platform.get('target'), chpl_compiler.get('target'),
        chpl_arch.get('target',
                      map_to_compiler=True,
                      get_lcd=utils.using_chapel_module()))