Improved cray architecture class
This commit is contained in:
parent
83917c4c30
commit
53d4f82ce1
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
from spack.architecture import Platform, Target
|
from spack.architecture import Platform, Target
|
||||||
|
|
||||||
class Cray(Platform):
|
class CrayXc(Platform):
|
||||||
priority = 20
|
priority = 20
|
||||||
front_end = 'sandybridge'
|
front_end = 'sandybridge'
|
||||||
back_end = 'ivybridge'
|
back_end = 'ivybridge'
|
||||||
@ -13,7 +13,7 @@ def __init__(self):
|
|||||||
if we use CRAY_CPU_TARGET as the default. This will ensure
|
if we use CRAY_CPU_TARGET as the default. This will ensure
|
||||||
that if we're on a XC-40 or XC-30 then we can detect the target
|
that if we're on a XC-40 or XC-30 then we can detect the target
|
||||||
'''
|
'''
|
||||||
super(Cray, self).__init__('cray')
|
super(CrayXc, self).__init__('cray_xc')
|
||||||
|
|
||||||
# Handle the default here so we can check for a key error
|
# Handle the default here so we can check for a key error
|
||||||
if 'CRAY_CPU_TARGET' in os.environ:
|
if 'CRAY_CPU_TARGET' in os.environ:
|
||||||
@ -24,12 +24,17 @@ def __init__(self):
|
|||||||
self.front_end = self.default
|
self.front_end = self.default
|
||||||
self.back_end = self.default
|
self.back_end = self.default
|
||||||
|
|
||||||
|
|
||||||
# Could switch to use modules and fe targets for front end
|
# Could switch to use modules and fe targets for front end
|
||||||
# Currently using compilers by path for front end.
|
# Currently using compilers by path for front end.
|
||||||
self.add_target(self.front_end, Target(self.front_end, 'PATH'))
|
self.add_target('sandybridge', Target('sandybridge', 'PATH'))
|
||||||
|
self.add_target('ivybridge', Target('ivybridge', 'MODULES', 'craype-ivybridge'))
|
||||||
|
self.add_target('haswell', Target('haswell', 'MODULES', 'craype-haswell'))
|
||||||
|
|
||||||
|
# self.add_target(self.front_end, Target(self.front_end, 'PATH'))
|
||||||
# Back End compiler needs the proper target module loaded.
|
# Back End compiler needs the proper target module loaded.
|
||||||
# self.add_target(self.back_end, Target(self.front_end, 'MODULES', 'craype-'+ self.back_end))
|
# self.add_target(self.back_end, Target(self.front_end, 'MODULES', 'craype-'+ self.back_end))
|
||||||
self.add_target(self.default, Target(self.default, 'MODULES', 'craype-' + self.default))
|
# self.add_target(self.default, Target(self.default, 'MODULES', 'craype-' + self.default))
|
||||||
# This is kludgy and the order matters when the targets are all haswell
|
# This is kludgy and the order matters when the targets are all haswell
|
||||||
# This is because the last one overwrites the others when they have the
|
# This is because the last one overwrites the others when they have the
|
||||||
# same name.
|
# same name.
|
Loading…
Reference in New Issue
Block a user