added the hp proliant dl385 configurations (amd epyc cpu)
This commit is contained in:
parent
7e1aab1f68
commit
61e774fa97
File diff suppressed because one or more lines are too long
|
@ -92,7 +92,7 @@ class Cpu(Item):
|
||||||
return 'naples'
|
return 'naples'
|
||||||
elif re.match('amd-epyc-[0-9][0-9fh][0-9]2', proc_id):
|
elif re.match('amd-epyc-[0-9][0-9fh][0-9]2', proc_id):
|
||||||
return 'rome'
|
return 'rome'
|
||||||
elif re.match('amd-epyc-[0-9][0-9fh][0-9]3', proc_id):
|
elif re.match('amd-epyc-[0-9][0-9fh][0-9f]3', proc_id):
|
||||||
return 'milan'
|
return 'milan'
|
||||||
else:
|
else:
|
||||||
assert False, 'unhandled processor id : %s' % proc_id
|
assert False, 'unhandled processor id : %s' % proc_id
|
||||||
|
@ -150,7 +150,8 @@ class Cpu(Item):
|
||||||
'coffeelake': 6,
|
'coffeelake': 6,
|
||||||
'cascadelake': 6,
|
'cascadelake': 6,
|
||||||
'icelake': 8,
|
'icelake': 8,
|
||||||
'rome': 8
|
'rome': 8,
|
||||||
|
'milan': 8
|
||||||
}[self.architecture]
|
}[self.architecture]
|
||||||
|
|
||||||
|
|
||||||
|
@ -230,6 +231,7 @@ def get_simd_id(proc_arch):
|
||||||
# - Up to 16 double-precision FLOPS per cycle per core
|
# - Up to 16 double-precision FLOPS per cycle per core
|
||||||
# - Double-precision floating point multiplies complete in 3 cycles (down from 4)
|
# - Double-precision floating point multiplies complete in 3 cycles (down from 4)
|
||||||
'rome': 'avx2',
|
'rome': 'avx2',
|
||||||
|
'milan': 'avx2',
|
||||||
}[proc_arch]
|
}[proc_arch]
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
from pathlib import Path
|
||||||
from concho.config import TableBasedConfigurator
|
from concho.config import TableBasedConfigurator
|
||||||
from concho.config import Configurator
|
from concho.config import Configurator
|
||||||
from concho.config import Module
|
from concho.config import Module
|
||||||
|
@ -864,7 +865,7 @@ class MatinfoConfigurator(Configurator):
|
||||||
a configurator using a server configurator web page from matinfo
|
a configurator using a server configurator web page from matinfo
|
||||||
'''
|
'''
|
||||||
|
|
||||||
def __init__(self, configurator_html_file_path, html_parser):
|
def __init__(self, configurator_html_file_path: Path, html_parser):
|
||||||
super().__init__(self)
|
super().__init__(self)
|
||||||
self.base_config = None
|
self.base_config = None
|
||||||
self.chassis = None
|
self.chassis = None
|
||||||
|
@ -888,7 +889,7 @@ class DellMatinfoCsvConfigurator(Configurator):
|
||||||
eg the excel sheet sent to guillaume.raffy@univ-rennes1.fr on 16/07/2020
|
eg the excel sheet sent to guillaume.raffy@univ-rennes1.fr on 16/07/2020
|
||||||
'''
|
'''
|
||||||
|
|
||||||
def __init__(self, dell_csv_file_path):
|
def __init__(self, dell_csv_file_path: Path):
|
||||||
super().__init__(self)
|
super().__init__(self)
|
||||||
self.base_config = None
|
self.base_config = None
|
||||||
self.chassis = None
|
self.chassis = None
|
||||||
|
|
|
@ -22,9 +22,14 @@ def parse_cpu_label(label: str) -> str:
|
||||||
if match:
|
if match:
|
||||||
cpu_class = match['cpu_class'].lower()
|
cpu_class = match['cpu_class'].lower()
|
||||||
cpu_id = "intel-xeon-%s-%s" % (cpu_class, match['cpu_number'].lower())
|
cpu_id = "intel-xeon-%s-%s" % (cpu_class, match['cpu_number'].lower())
|
||||||
else:
|
return cpu_id
|
||||||
assert False, 'unhandled label : %s' % label
|
|
||||||
return cpu_id
|
match = re.match(r'^AMD EPYC (?P<cpu_number>[0-9][0-9][0-9F][0-9]).*', label)
|
||||||
|
if match:
|
||||||
|
cpu_id = "amd-epyc-%s" % (match['cpu_number'].lower())
|
||||||
|
return cpu_id
|
||||||
|
|
||||||
|
assert False, 'unhandled label : %s' % label
|
||||||
|
|
||||||
|
|
||||||
class HpeCatalogParser():
|
class HpeCatalogParser():
|
||||||
|
@ -245,7 +250,7 @@ class HpeConfiguratorParser():
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def _get_db_as_tree(hpe_configurator_html_file_path: Path):
|
def _get_db_as_tree(hpe_configurator_html_file_path: Path):
|
||||||
html_root = parse(hpe_configurator_html_file_path).getroot()
|
html_root = parse(str(hpe_configurator_html_file_path)).getroot()
|
||||||
import json
|
import json
|
||||||
|
|
||||||
script_elements = html_root.xpath(".//script[@type='text/javascript']")
|
script_elements = html_root.xpath(".//script[@type='text/javascript']")
|
||||||
|
@ -270,14 +275,14 @@ class HpeConfiguratorParser():
|
||||||
db = json.loads(db_as_json_str)
|
db = json.loads(db_as_json_str)
|
||||||
hardware_db = HpeConfiguratorParser._find_child_with_id(db["configResponse"]["configuration"]["topLevels"], 'hardware')['subCategories']
|
hardware_db = HpeConfiguratorParser._find_child_with_id(db["configResponse"]["configuration"]["topLevels"], 'hardware')['subCategories']
|
||||||
# print(hardware_db)
|
# print(hardware_db)
|
||||||
with open('toto_hardware.json', 'w', encoding='utf-8') as f:
|
with open(hpe_configurator_html_file_path.with_suffix('.json'), 'w', encoding='utf-8') as f:
|
||||||
json.dump(hardware_db, f, ensure_ascii=False, indent=4)
|
json.dump(hardware_db, f, ensure_ascii=False, indent=4)
|
||||||
return hardware_db
|
return hardware_db
|
||||||
|
|
||||||
def create_catalog_parser(self, hpe_catalog):
|
def create_catalog_parser(self, hpe_catalog):
|
||||||
return HpeCatalogParser(hpe_catalog)
|
return HpeCatalogParser(hpe_catalog)
|
||||||
|
|
||||||
def parse_proc_change_options(self, hpe_configurator_html_file_path):
|
def parse_proc_change_options(self, hpe_configurator_html_file_path: Path):
|
||||||
hardware_db = HpeConfiguratorParser._get_db_as_tree(hpe_configurator_html_file_path)
|
hardware_db = HpeConfiguratorParser._get_db_as_tree(hpe_configurator_html_file_path)
|
||||||
# print(hardware_db)
|
# print(hardware_db)
|
||||||
|
|
||||||
|
@ -285,7 +290,7 @@ class HpeConfiguratorParser():
|
||||||
proc_change_module = catalog_parser.parse_proc_change_options()
|
proc_change_module = catalog_parser.parse_proc_change_options()
|
||||||
return proc_change_module
|
return proc_change_module
|
||||||
|
|
||||||
def parse_proc_options(self, hpe_configurator_html_file_path):
|
def parse_proc_options(self, hpe_configurator_html_file_path: Path):
|
||||||
hardware_db = HpeConfiguratorParser._get_db_as_tree(hpe_configurator_html_file_path)
|
hardware_db = HpeConfiguratorParser._get_db_as_tree(hpe_configurator_html_file_path)
|
||||||
# print(hardware_db)
|
# print(hardware_db)
|
||||||
|
|
||||||
|
@ -293,7 +298,7 @@ class HpeConfiguratorParser():
|
||||||
proc_module = catalog_parser.parse_proc_options()
|
proc_module = catalog_parser.parse_proc_options()
|
||||||
return proc_module
|
return proc_module
|
||||||
|
|
||||||
def parse(self, hpe_configurator_html_file_path, configurator):
|
def parse(self, hpe_configurator_html_file_path: Path, configurator):
|
||||||
|
|
||||||
hardware_db = HpeConfiguratorParser._get_db_as_tree(hpe_configurator_html_file_path)
|
hardware_db = HpeConfiguratorParser._get_db_as_tree(hpe_configurator_html_file_path)
|
||||||
# print(hardware_db)
|
# print(hardware_db)
|
||||||
|
@ -303,12 +308,18 @@ class HpeConfiguratorParser():
|
||||||
|
|
||||||
base_model_node = HpeConfiguratorParser._find_child_with_id(hardware_db, 'baseModelSection.baseModelChoice')
|
base_model_node = HpeConfiguratorParser._find_child_with_id(hardware_db, 'baseModelSection.baseModelChoice')
|
||||||
assert base_model_node is not None
|
assert base_model_node is not None
|
||||||
assert len(base_model_node['products']) == 1
|
product_node = [p for p in base_model_node['products'] if p['selected']][0]
|
||||||
label = base_model_node['products'][0]['desc'] # eg "DL360 Gen10"
|
label = product_node['desc'] # eg "DL360 Gen10"
|
||||||
match = re.match(r'^[HPE]*[ ]*(?P<chassis_type>DL[0-9][0-9][0-9]) Gen(?P<generation>[0-9+]+)', label)
|
match = re.match(r'^[HPE]*[ ]*(?P<chassis_type>DL[0-9][0-9][0-9]) Gen(?P<generation>[0-9]+) *(?P<plus>[+]?)', label)
|
||||||
# match = re.match(r'^(?P<chassis_type>DL[0-9][0-9][0-9]) Gen(?P<generation>[0-9+]+)', label)
|
# match = re.match(r'^(?P<chassis_type>DL[0-9][0-9][0-9]) Gen(?P<generation>[0-9+]+)', label)
|
||||||
|
if not match:
|
||||||
|
# HPE ProLiant DL385 Gen10 Plus v2 8SFF Configure-to-order Server
|
||||||
|
match = re.match(r'^HPE ProLiant (?P<chassis_type>DL[0-9][0-9][0-9]) Gen(?P<generation>[0-9+]+) (?P<plus>Plus)', label)
|
||||||
assert match, 'unhandled label : %s' % label
|
assert match, 'unhandled label : %s' % label
|
||||||
chassis_id = "hpe-proliant-%s-gen%s" % (match['chassis_type'].lower(), match['generation'].lower())
|
plus = ''
|
||||||
|
if match['plus'] and match['plus'] != '':
|
||||||
|
plus = '+'
|
||||||
|
chassis_id = "hpe-proliant-%s-gen%s%s" % (match['chassis_type'].lower(), match['generation'].lower(), plus)
|
||||||
configurator.chassis = Option(Chassis(chassis_id), 0.0)
|
configurator.chassis = Option(Chassis(chassis_id), 0.0)
|
||||||
|
|
||||||
configurator.base_config = catalog_parser.parse_base_config(configurator)
|
configurator.base_config = catalog_parser.parse_base_config(configurator)
|
||||||
|
@ -376,9 +387,9 @@ class HpeCpuChoiceConfiguratorParser(HpeConfiguratorParser):
|
||||||
def create_catalog_parser(self, hpe_catalog):
|
def create_catalog_parser(self, hpe_catalog):
|
||||||
return HpeCatalogWoutCpuParser(hpe_catalog)
|
return HpeCatalogWoutCpuParser(hpe_catalog)
|
||||||
|
|
||||||
def parse_proc_change_options(self, hpe_configurator_html_file_path):
|
def parse_proc_change_options(self, hpe_configurator_html_file_path: Path):
|
||||||
# find the proc options in the cpu options popup window as these options are not present in the hpe_catalog of this page
|
# find the proc options in the cpu options popup window as these options are not present in the hpe_catalog of this page
|
||||||
html_root = parse(hpe_configurator_html_file_path).getroot()
|
html_root = parse(str(hpe_configurator_html_file_path)).getroot()
|
||||||
|
|
||||||
proc_options = Module('processor-change')
|
proc_options = Module('processor-change')
|
||||||
# module_root_element = self._get_module(html_root, 'Processeurs (Passage)')
|
# module_root_element = self._get_module(html_root, 'Processeurs (Passage)')
|
||||||
|
@ -399,7 +410,7 @@ class HpeCpuChoiceConfiguratorParser(HpeConfiguratorParser):
|
||||||
proc_options.add_option(option)
|
proc_options.add_option(option)
|
||||||
return proc_options
|
return proc_options
|
||||||
|
|
||||||
def parse_proc_options(self, hpe_configurator_html_file_path):
|
def parse_proc_options(self, hpe_configurator_html_file_path: Path):
|
||||||
proc_options = self.parse_proc_change_options(hpe_configurator_html_file_path)
|
proc_options = self.parse_proc_change_options(hpe_configurator_html_file_path)
|
||||||
proc_options.name = 'processor'
|
proc_options.name = 'processor'
|
||||||
return proc_options
|
return proc_options
|
||||||
|
|
|
@ -142,6 +142,7 @@ def plot_configs(configs, xaxis_def, yaxis_def, plot_title):
|
||||||
'cascadelake': 0.8,
|
'cascadelake': 0.8,
|
||||||
'icelake': 1.0,
|
'icelake': 1.0,
|
||||||
'rome': 0.8,
|
'rome': 0.8,
|
||||||
|
'milan': 1.0,
|
||||||
}[Cpu(proc_id).architecture]
|
}[Cpu(proc_id).architecture]
|
||||||
# if model == 'r620':
|
# if model == 'r620':
|
||||||
# color = 'r'
|
# color = 'r'
|
||||||
|
@ -167,8 +168,10 @@ def plot_configs(configs, xaxis_def, yaxis_def, plot_title):
|
||||||
'dell-poweredge-c6320': 1.0,
|
'dell-poweredge-c6320': 1.0,
|
||||||
'dell-poweredge-c6420': 1.0,
|
'dell-poweredge-c6420': 1.0,
|
||||||
'dell-precision-3630': 0.2,
|
'dell-precision-3630': 0.2,
|
||||||
'hpe-proliant-dl360-gen10': 0.55,
|
'hpe-proliant-dl360-gen10': 0.3,
|
||||||
'hpe-proliant-dl360-gen10+': 0.55
|
'hpe-proliant-dl360-gen10+': 0.55,
|
||||||
|
'hpe-proliant-dl385-gen10': 0.0,
|
||||||
|
'hpe-proliant-dl385-gen10+': 0.0
|
||||||
}[model]
|
}[model]
|
||||||
value = 0.9
|
value = 0.9
|
||||||
return matplotlib.colors.hsv_to_rgb((hue, saturation, value))
|
return matplotlib.colors.hsv_to_rgb((hue, saturation, value))
|
||||||
|
|
|
@ -99,6 +99,13 @@ intel-xeon-gold-6150 2.7 18 4 165 0 26349
|
||||||
intel-xeon-gold-6152 2.1 22 4 140 0 0
|
intel-xeon-gold-6152 2.1 22 4 140 0 0
|
||||||
intel-xeon-gold-6154 3.0 18 4 200 0 0
|
intel-xeon-gold-6154 3.0 18 4 200 0 0
|
||||||
intel-xeon-gold-6161 2.2 22 4 165 0 0
|
intel-xeon-gold-6161 2.2 22 4 165 0 0
|
||||||
|
intel-xeon-platinum-8153 2.0 16 8 125 0 0
|
||||||
|
intel-xeon-platinum-8160 2.1 24 8 150 0 0
|
||||||
|
intel-xeon-platinum-8164 2.0 26 8 165 0 0
|
||||||
|
intel-xeon-platinum-8168 2.7 24 8 205 0 0
|
||||||
|
intel-xeon-platinum-8170 2.1 26 8 165 0 0
|
||||||
|
intel-xeon-platinum-8176 2.1 28 8 165 0 0
|
||||||
|
|
||||||
|
|
||||||
intel-xeon-silver-4208 2.1 8 2 85 0 0
|
intel-xeon-silver-4208 2.1 8 2 85 0 0
|
||||||
intel-xeon-silver-4210r 2.4 10 2 100 0 0
|
intel-xeon-silver-4210r 2.4 10 2 100 0 0
|
||||||
|
@ -111,6 +118,7 @@ intel-xeon-gold-5215 2.5 10 4 85 0 0
|
||||||
intel-xeon-gold-5215l 2.5 10 4 85 0 0
|
intel-xeon-gold-5215l 2.5 10 4 85 0 0
|
||||||
intel-xeon-gold-5217 3.0 8 4 115 0 0
|
intel-xeon-gold-5217 3.0 8 4 115 0 0
|
||||||
intel-xeon-gold-5218 2.3 16 4 125 0 0
|
intel-xeon-gold-5218 2.3 16 4 125 0 0
|
||||||
|
intel-xeon-gold-5218n 2.3 16 4 125 0 0
|
||||||
intel-xeon-gold-5218r 2.1 20 2 125 0 0
|
intel-xeon-gold-5218r 2.1 20 2 125 0 0
|
||||||
intel-xeon-gold-5220 2.2 18 4 125 0 0
|
intel-xeon-gold-5220 2.2 18 4 125 0 0
|
||||||
intel-xeon-gold-5220r 2.2 24 2 150 0 0
|
intel-xeon-gold-5220r 2.2 24 2 150 0 0
|
||||||
|
@ -121,6 +129,7 @@ intel-xeon-gold-6212u 2.4 24 1 165 0 0
|
||||||
intel-xeon-gold-6226 2.7 12 4 125 0 0
|
intel-xeon-gold-6226 2.7 12 4 125 0 0
|
||||||
intel-xeon-gold-6226r 2.9 16 2 150 0 0
|
intel-xeon-gold-6226r 2.9 16 2 150 0 0
|
||||||
intel-xeon-gold-6230 2.1 20 4 125 0 0
|
intel-xeon-gold-6230 2.1 20 4 125 0 0
|
||||||
|
intel-xeon-gold-6230n 2.3 20 2 125 0 0
|
||||||
intel-xeon-gold-6230r 2.1 26 2 150 0 0
|
intel-xeon-gold-6230r 2.1 26 2 150 0 0
|
||||||
intel-xeon-gold-6234 3.3 8 4 130 0 0
|
intel-xeon-gold-6234 3.3 8 4 130 0 0
|
||||||
intel-xeon-gold-6238 2.1 22 4 140 0 0
|
intel-xeon-gold-6238 2.1 22 4 140 0 0
|
||||||
|
@ -154,12 +163,37 @@ intel-xeon-platinum-8276 2.2 28 8 165 0 0
|
||||||
intel-xeon-platinum-8280 2.7 28 8 205 0 0
|
intel-xeon-platinum-8280 2.7 28 8 205 0 0
|
||||||
intel-xeon-platinum-8280l 2.7 28 8 205 0 0
|
intel-xeon-platinum-8280l 2.7 28 8 205 0 0
|
||||||
|
|
||||||
intel-xeon-platinum-8153 2.0 16 8 125 0 0
|
intel-xeon-silver-4310 2.1 12 2 120 0 0
|
||||||
intel-xeon-platinum-8160 2.1 24 8 150 0 0
|
intel-xeon-silver-4314 2.4 16 2 135 0 0
|
||||||
intel-xeon-platinum-8164 2.0 26 8 165 0 0
|
intel-xeon-silver-4316 2.3 20 2 150 0 0
|
||||||
intel-xeon-platinum-8168 2.7 24 8 205 0 0
|
intel-xeon-gold-5315y 3.2 8 2 140 0 0
|
||||||
intel-xeon-platinum-8170 2.1 26 8 165 0 0
|
intel-xeon-gold-5317 3.0 12 2 150 0 0
|
||||||
intel-xeon-platinum-8176 2.1 28 8 165 0 0
|
intel-xeon-gold-5318s 2.1 24 2 165 0 0
|
||||||
|
intel-xeon-gold-5318y 2.1 24 2 165 0 0
|
||||||
|
intel-xeon-gold-5320 2.2 26 2 185 0 0
|
||||||
|
intel-xeon-gold-6312u 2.4 24 1 185 0 0
|
||||||
|
intel-xeon-gold-6314u 2.3 32 1 205 0 0
|
||||||
|
intel-xeon-gold-6326 2.9 16 2 185 0 0
|
||||||
|
intel-xeon-gold-6330 2.0 28 2 205 0 0
|
||||||
|
intel-xeon-gold-6334 3.6 8 2 165 0 0
|
||||||
|
intel-xeon-gold-6336y 2.4 24 2 185 0 0
|
||||||
|
intel-xeon-gold-6338 2.0 32 2 205 0 0
|
||||||
|
intel-xeon-gold-6338n 2.2 32 2 185 0 0
|
||||||
|
intel-xeon-gold-6342 2.8 24 2 230 0 0
|
||||||
|
intel-xeon-gold-6346 3.1 16 2 205 0 0
|
||||||
|
intel-xeon-gold-6348 2.6 28 2 235 0 0
|
||||||
|
intel-xeon-gold-6354 3.0 18 2 205 0 0
|
||||||
|
intel-xeon-platinum-8351n 2.4 36 2 225 0 0
|
||||||
|
intel-xeon-platinum-8352m 2.3 32 2 185 0 0
|
||||||
|
intel-xeon-platinum-8352s 2.2 32 2 205 0 0
|
||||||
|
intel-xeon-platinum-8352v 2.1 36 2 195 0 0
|
||||||
|
intel-xeon-platinum-8352y 2.2 32 2 205 0 0
|
||||||
|
intel-xeon-platinum-8358 2.6 32 2 250 0 0
|
||||||
|
intel-xeon-platinum-8358p 2.6 32 2 240 0 0
|
||||||
|
intel-xeon-platinum-8362 2.8 32 2 265 0 0
|
||||||
|
intel-xeon-platinum-8368 2.4 38 2 270 0 0
|
||||||
|
intel-xeon-platinum-8380 2.3 40 2 270 0 0
|
||||||
|
|
||||||
amd-epyc-7262 3.2 8 2 155 0 0
|
amd-epyc-7262 3.2 8 2 155 0 0
|
||||||
amd-epyc-7272 2.9 12 2 120 0 0
|
amd-epyc-7272 2.9 12 2 120 0 0
|
||||||
amd-epyc-7282 2.8 16 2 120 0 0
|
amd-epyc-7282 2.8 16 2 120 0 0
|
||||||
|
@ -177,3 +211,19 @@ amd-epyc-7f32 3.7 8 2 180 0 0
|
||||||
amd-epyc-7f52 3.5 16 2 240 0 0
|
amd-epyc-7f52 3.5 16 2 240 0 0
|
||||||
amd-epyc-7f72 3.5 24 2 240 0 0
|
amd-epyc-7f72 3.5 24 2 240 0 0
|
||||||
amd-epyc-7h12 2.6 64 2 280 0 0
|
amd-epyc-7h12 2.6 64 2 280 0 0
|
||||||
|
|
||||||
|
amd-epyc-72f3 3.7 8 2 180 0 0
|
||||||
|
amd-epyc-7313 3.0 16 2 155 0 0
|
||||||
|
amd-epyc-7343 3.2 16 2 190 0 0
|
||||||
|
amd-epyc-73f3 3.5 16 2 240 0 0
|
||||||
|
amd-epyc-7413 2.65 24 2 180 0 0
|
||||||
|
amd-epyc-7443 2.85 24 2 200 0 0
|
||||||
|
amd-epyc-7453 2.75 28 2 225 0 0
|
||||||
|
amd-epyc-74f3 3.2 24 2 240 0 0
|
||||||
|
amd-epyc-7513 2.6 32 2 200 0 0
|
||||||
|
amd-epyc-7543 2.8 32 2 225 0 0
|
||||||
|
amd-epyc-75f3 2.95 32 2 280 0 0
|
||||||
|
amd-epyc-7643 2.3 48 2 225 0 0
|
||||||
|
amd-epyc-7663 2.0 56 2 240 0 0
|
||||||
|
amd-epyc-7713 2.0 64 2 225 0 0
|
||||||
|
amd-epyc-7763 2.45 64 2 280 0 0
|
||||||
|
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
from pathlib import Path
|
||||||
from concho.dell import DellMatinfoCsvConfigurator
|
from concho.dell import DellMatinfoCsvConfigurator
|
||||||
from concho.dell import MatinfoConfigurator
|
from concho.dell import MatinfoConfigurator
|
||||||
from concho.dell import DellConfiguratorParser2020
|
from concho.dell import DellConfiguratorParser2020
|
||||||
|
@ -5,7 +6,7 @@ from concho.dell import DellConfiguratorParser2021
|
||||||
from concho.hpe import HpeConfiguratorParser, HpeCpuChoiceConfiguratorParser
|
from concho.hpe import HpeConfiguratorParser, HpeCpuChoiceConfiguratorParser
|
||||||
from concho.procs_chooser import plot_configurators
|
from concho.procs_chooser import plot_configurators
|
||||||
from concho.procs_chooser import ConfigPrice
|
from concho.procs_chooser import ConfigPrice
|
||||||
from concho.procs_chooser import ConfigFlops
|
# from concho.procs_chooser import ConfigFlops
|
||||||
from concho.procs_chooser import ConfigFlopsPerEuro
|
from concho.procs_chooser import ConfigFlopsPerEuro
|
||||||
|
|
||||||
|
|
||||||
|
@ -13,9 +14,9 @@ def test_all_matinfo_2020_configs():
|
||||||
# configurator = DellMatinfoConfigurator('rcrc1406676-4834664 - Cat2 Conf4 PowerEdge R640 - Dell.html')
|
# configurator = DellMatinfoConfigurator('rcrc1406676-4834664 - Cat2 Conf4 PowerEdge R640 - Dell.html')
|
||||||
# print(configurator)
|
# print(configurator)
|
||||||
configurators = [
|
configurators = [
|
||||||
DellMatinfoCsvConfigurator('c6420-20200716-price.tsv'),
|
DellMatinfoCsvConfigurator(Path('c6420-20200716-price.tsv')),
|
||||||
MatinfoConfigurator('rcrc1406676-4834664 - Cat2 Conf4 PowerEdge R640 - Dell.html', DellConfiguratorParser2020()),
|
MatinfoConfigurator(Path('rcrc1406676-4834664 - Cat2 Conf4 PowerEdge R640 - Dell.html'), DellConfiguratorParser2020()),
|
||||||
MatinfoConfigurator('rcrc1406676-4824727 - Cat 2 Conf 7 PowerEdge R940 - Dell.html', DellConfiguratorParser2020()),
|
MatinfoConfigurator(Path('rcrc1406676-4824727 - Cat 2 Conf 7 PowerEdge R940 - Dell.html'), DellConfiguratorParser2020()),
|
||||||
# dell.DellPowerEdgeR940(),
|
# dell.DellPowerEdgeR940(),
|
||||||
]
|
]
|
||||||
|
|
||||||
|
@ -26,9 +27,9 @@ def test_credits_2020_configs():
|
||||||
# configurator = DellMatinfoConfigurator('rcrc1406676-4834664 - Cat2 Conf4 PowerEdge R640 - Dell.html')
|
# configurator = DellMatinfoConfigurator('rcrc1406676-4834664 - Cat2 Conf4 PowerEdge R640 - Dell.html')
|
||||||
# print(configurator)
|
# print(configurator)
|
||||||
configurators = [
|
configurators = [
|
||||||
DellMatinfoCsvConfigurator('c6420-20200716-price.tsv'),
|
DellMatinfoCsvConfigurator(Path('c6420-20200716-price.tsv')),
|
||||||
MatinfoConfigurator('rcrc1406676-4834664 - Cat2 Conf4 PowerEdge R640 - Dell.html', DellConfiguratorParser2020()),
|
MatinfoConfigurator(Path('rcrc1406676-4834664 - Cat2 Conf4 PowerEdge R640 - Dell.html'), DellConfiguratorParser2020()),
|
||||||
MatinfoConfigurator('rcrc1406676-4824727 - Cat 2 Conf 7 PowerEdge R940 - Dell.html', DellConfiguratorParser2020()),
|
MatinfoConfigurator(Path('rcrc1406676-4824727 - Cat 2 Conf 7 PowerEdge R940 - Dell.html'), DellConfiguratorParser2020()),
|
||||||
# dell.DellPowerEdgeR940(),
|
# dell.DellPowerEdgeR940(),
|
||||||
]
|
]
|
||||||
|
|
||||||
|
@ -51,9 +52,9 @@ def test_credits_2020_configs():
|
||||||
|
|
||||||
def test_credits_2021_configs():
|
def test_credits_2021_configs():
|
||||||
configurators = [
|
configurators = [
|
||||||
MatinfoConfigurator('20210407 - Cat2 Conf4 PowerEdge R640 - Dell.html', DellConfiguratorParser2021()),
|
MatinfoConfigurator(Path('20210407 - Cat2 Conf4 PowerEdge R640 - Dell.html'), DellConfiguratorParser2021()),
|
||||||
MatinfoConfigurator('20210407 - Cat2 Conf7 PowerEdge R940 - Dell.html', DellConfiguratorParser2021()),
|
MatinfoConfigurator(Path('20210407 - Cat2 Conf7 PowerEdge R940 - Dell.html'), DellConfiguratorParser2021()),
|
||||||
MatinfoConfigurator('20210407 - Cat2 Conf8 PowerEdge R7525 - Dell.html', DellConfiguratorParser2021()),
|
MatinfoConfigurator(Path('20210407 - Cat2 Conf8 PowerEdge R7525 - Dell.html'), DellConfiguratorParser2021()),
|
||||||
# MatinfoConfigurator('20210407 - Cat2 Conf10 PowerEdge R6525 - Dell.html', DellConfiguratorParser2021()),
|
# MatinfoConfigurator('20210407 - Cat2 Conf10 PowerEdge R6525 - Dell.html', DellConfiguratorParser2021()),
|
||||||
]
|
]
|
||||||
# config_filter = lambda config : config.cpu.uid in [
|
# config_filter = lambda config : config.cpu.uid in [
|
||||||
|
@ -76,8 +77,9 @@ def test_credits_2021_configs():
|
||||||
def test_ur1_presents_2023_configs():
|
def test_ur1_presents_2023_configs():
|
||||||
configurators = [
|
configurators = [
|
||||||
# MatinfoConfigurator('20210407 - Cat2 Conf4 PowerEdge R640 - Dell.html', DellConfiguratorParser2021()),
|
# MatinfoConfigurator('20210407 - Cat2 Conf4 PowerEdge R640 - Dell.html', DellConfiguratorParser2021()),
|
||||||
MatinfoConfigurator('20230120-cat2-conf3-hpe-dl360-gen10.html', HpeConfiguratorParser()),
|
MatinfoConfigurator(Path('20230120-cat2-conf3-hpe-dl360-gen10.html'), HpeConfiguratorParser()),
|
||||||
MatinfoConfigurator('20230123-cat2-conf10-hpe-dl360-gen10plus-cpuchoice.html', HpeCpuChoiceConfiguratorParser()),
|
MatinfoConfigurator(Path('20230123-cat2-conf10-hpe-dl360-gen10plus-cpuchoice.html'), HpeCpuChoiceConfiguratorParser()),
|
||||||
|
MatinfoConfigurator(Path('20230123-cat2-conf11-hpe-dl385-gen10plus-cpuchoice.html'), HpeCpuChoiceConfiguratorParser()),
|
||||||
]
|
]
|
||||||
|
|
||||||
def config_filter(config):
|
def config_filter(config):
|
||||||
|
|
Loading…
Reference in New Issue