Beispiel #1
0
def get(flag='host'):

    if flag == 'host':
        arch_val = overrides.get('CHPL_HOST_ARCH', '')
    elif flag == 'target':
        arch_val = overrides.get('CHPL_TARGET_ARCH', '')
    else:
        error("Invalid flag: '{0}'".format(flag), ValueError)

    arch_flag = "CHPL_TARGET_ARCH"
    cpu_flag = "CHPL_TARGET_CPU"
    if flag == 'host':
        arch_flag = "CHPL_HOST_ARCH"
        cpu_flag = "CHPL_HOST_CPU"

    if arch_val:
        return arch_val

    # compute the default
    cpu_val = chpl_cpu.get(flag).cpu
    cpuarch = chpl_cpu.arch_for_cpu(cpu_val, flag)
    machine = chpl_cpu.get_default_machine(flag)
    if cpuarch:
        if cpuarch != machine:
            sys.stderr.write('Warning: Cross compilation not yet supported. '
                             'Inferred {0}={1} based upon {2}={3} '
                             'but running on {4}.\n'.format(
                                 arch_flag, cpuarch, cpu_flag, cpu_val,
                                 machine))

    return chpl_cpu.get_default_machine(flag)
Beispiel #2
0
    def knl(self):
        """Returns True when testing KNL (Xeon Phi).

        :rtype: bool
        :returns: True when testing KNL
        """
        return chpl_cpu.get('target').cpu == 'mic-knl'
    def knl(self):
        """Returns True when testing KNL (Xeon Phi).

        :rtype: bool
        :returns: True when testing KNL
        """
        return chpl_cpu.get('target').cpu == 'mic-knl'
def default_uniq_cfg_path():
    cpu_val = chpl_cpu.get('target', map_to_compiler=True,
                           get_lcd=using_chapel_module()).cpu
    return '{0}-{1}-{2}-{3}-{4}'.format(chpl_platform.get('target'),
                                        chpl_arch.get('target'),
                                        cpu_val,
                                        chpl_compiler.get('target'),
                                        chpl_lib_pic.get())
Beispiel #5
0
def validate(flag='host'):
    arch_flag = "CHPL_TARGET_ARCH"
    cpu_flag = "CHPL_TARGET_CPU"
    if flag == 'host':
        arch_flag = "CHPL_HOST_ARCH"
        cpu_flag = "CHPL_HOST_CPU"

    cpu_val = chpl_cpu.get(flag).cpu
    cpuarch = chpl_cpu.arch_for_cpu(cpu_val, flag)
    machine = chpl_cpu.get_default_machine(flag)
    if cpuarch:
        if cpuarch != machine:
            warning('Cross compilation not yet supported. Inferred {0}={1} '
                    'based upon {2}={3} but running on {4}.'.format(
                        arch_flag, cpuarch, cpu_flag, cpu_val, machine))
Beispiel #6
0
def get(flag='host'):

    if flag == 'host':
        arch_val = overrides.get('CHPL_HOST_ARCH', '')
    elif flag == 'target':
        arch_val = overrides.get('CHPL_TARGET_ARCH', '')
    else:
        error("Invalid flag: '{0}'".format(flag), ValueError)

    arch_flag = "CHPL_TARGET_ARCH"
    cpu_flag = "CHPL_TARGET_CPU"
    if flag == 'host':
      arch_flag = "CHPL_HOST_ARCH"
      cpu_flag = "CHPL_HOST_CPU"

    cpuarch = chpl_cpu.arch_for_cpu(arch_val, flag)
    if cpuarch:

        sys.stderr.write('Warning: {0}={1} is deprecated. '
                         'Please use {2}={3}\n'.format(arch_flag,
                                                       arch_val,
                                                       cpu_flag,
                                                       arch_val))
        arch_val = cpuarch

    if arch_val:
        return arch_val

    # compute the default
    cpu_val = chpl_cpu.get(flag).cpu
    cpuarch = chpl_cpu.arch_for_cpu(cpu_val, flag)
    machine = chpl_cpu.get_default_machine(flag)
    if cpuarch:
        if cpuarch != machine:
            sys.stderr.write('Warning: Cross compilation not yet supported. '
                             'Inferred {0}={1} based upon {2}={3} '
                             'but running on {4}.\n'.format(arch_flag,
                                                            cpuarch,
                                                            cpu_flag,
                                                            cpu_val,
                                                            machine))

    return chpl_cpu.get_default_machine(flag)
Beispiel #7
0
def get(flag='host'):
    platform = chpl_platform.get(flag)
    arch = chpl_arch.get(flag)
    (_, cpu) = chpl_cpu.get(flag, map_to_compiler=True,
                            get_lcd=chpl_home_utils.using_chapel_module())

    # platform
    result = platform

    # compiler is never included since it shouldn't be needed
    # for a bin/ path.

    # arch
    result += '-' + arch

    # cpu
    if cpu != 'none' and cpu != 'unknown':
        result += '-' + cpu
    return result
def get(flag='host'):
    platform = chpl_platform.get(flag)
    arch = chpl_arch.get(flag)
    (_, cpu) = chpl_cpu.get(flag,
                            map_to_compiler=True,
                            get_lcd=chpl_home_utils.using_chapel_module())

    # platform
    result = platform

    # compiler is never included since it shouldn't be needed
    # for a bin/ path.

    # arch
    result += '-' + arch

    # cpu
    if cpu != 'none' and cpu != 'unknown':
        result += '-' + cpu
    return result