added support for amd epyc cpus
as a result, concho is now able to handle hpe's amd configurations - also added the l3 cache attribute on cpus (not used yet but I'm planning to show it in the graphs as l3cache per core affects the performance) - added the ability to output the figure in a file instead of the screen (will be useful for continuous integration) work related to [https://bugzilla.ipr.univ-rennes.fr/show_bug.cgi?id=4015]
This commit is contained in:
		
							parent
							
								
									a0ba1f3b95
								
							
						
					
					
						commit
						9aebde1f0f
					
				|  | @ -1,267 +1,286 @@ | |||
| #id	clock	num_cores	max_cpus	tdp	cpumark_1_cpu	cpumark_2_cpu | ||||
| intel-core-i7-8700k	3.7	6	1	95	0	0 | ||||
| intel-xeon-5150	2.66	2	2	65	1746	3498 | ||||
| intel-xeon-e5462	2.8	4	2	80	4038	7350 | ||||
| intel-xeon-x5550	2.67	4	2	95	5416	9131 | ||||
| intel-xeon-x5560	2.8	4	2	95	5426	9215 | ||||
| intel-xeon-x5650	2.67	6	2	95	7601	11728 | ||||
| intel-xeon-x5660	2.8	6	2	95	7954	11893 | ||||
| intel-xeon-e5-2660	2.2	8	2	95	11535	17282 | ||||
| intel-xeon-e5-2670	2.6	8	2	115	0	18509 | ||||
| intel-xeon-e5-2680	2.7	8	2	130	0	18480 | ||||
| intel-xeon-e5-2690	2.9	8	2	135	0	20699 | ||||
| intel-xeon-e5-2620v2	2.1	6	2	95	8664	13474 | ||||
| intel-xeon-e5-2630v2	2.6	6	2	80	10615	16256 | ||||
| intel-xeon-e5-2640v2	2	8	2	95	10132	14792 | ||||
| intel-xeon-e5-2650v2	2.6	8	2	95	13276	19333 | ||||
| intel-xeon-e5-2660v2	2.2	10	2	95	13659	18670 | ||||
| intel-xeon-e5-2670v2	2.5	10	2	115	14892	22062 | ||||
| intel-xeon-e5-2680v2	2.8	10	2	115	16340	23263 | ||||
| intel-xeon-e5-2690v2	3	10	2	130	17304	24189 | ||||
| intel-xeon-e5-2695v2	2.4	12	2	130	17231	21980 | ||||
| intel-xeon-e5-2697v2	2.7	12	2	130	17516	23910 | ||||
| intel-xeon-e5-2603v3	1.6	6	2	85	4996	8358 | ||||
| intel-xeon-e5-2609v3	1.9	6	2	85	5878	9885 | ||||
| intel-xeon-e5-2620v3	2.4	6	2	85	9955	15400 | ||||
| intel-xeon-e5-2623v3	3	6	2	105	9007	13914 | ||||
| intel-xeon-e5-2630v3	2.4	8	2	85	12803	18699 | ||||
| intel-xeon-e5-2630lv3	1.8	8	2	55	11201	0 | ||||
| intel-xeon-e5-2637v3	3.5	4	2	135	10278	16823 | ||||
| intel-xeon-e5-2640v3	2.6	8	2	90	14081	20824 | ||||
| intel-xeon-e5-2643v3	3.4	6	2	135	13671	20574 | ||||
| intel-xeon-e5-2650v3	2.3	10	2	105	15106	20602 | ||||
| intel-xeon-e5-2650lv3	1.8	12	2	65	13132	0 | ||||
| intel-xeon-e5-2660v3	2.6	10	2	105	16161	23388 | ||||
| intel-xeon-e5-2667v3	3.2	8	2	135	16125	22935 | ||||
| intel-xeon-e5-2670v3	2.3	12	2	120	16549	22330 | ||||
| intel-xeon-e5-2680v3	2.5	12	2	120	18840	25352 | ||||
| intel-xeon-e5-2683v3	2	14	2	120	17917	22704 | ||||
| intel-xeon-e5-2687wv3	3.1	10	2	160	17785	24769 | ||||
| intel-xeon-e5-2690v3	2.6	12	2	160	19567	26665 | ||||
| intel-xeon-e5-2695v3	2.3	14	2	120	20742	26021 | ||||
| intel-xeon-e5-2697v3	2.6	14	2	145	21667	29009 | ||||
| intel-xeon-e5-2698v3	2.3	16	2	135	21794	30217 | ||||
| intel-xeon-e5-2699v3	2.3	18	2	145	22520	24820 | ||||
| intel-xeon-e5-2603v4	1.7	6	2	85	5247	8809 | ||||
| intel-xeon-e5-2609v4	1.7	8	2	85	0	10835 | ||||
| intel-xeon-e5-2620v4	2.1	8	2	85	11219	17063 | ||||
| intel-xeon-e5-2623v4	2.6	4	2	85	0	10196 | ||||
| intel-xeon-e5-2630v4	2.2	10	2	85	14221	18281 | ||||
| intel-xeon-e5-2630lv4	1.8	10	2	55	0	0 | ||||
| intel-xeon-e5-2637v4	3.5	4	2	135	9665	17398 | ||||
| intel-xeon-e5-2640v4	2.4	10	2	90	15244	21556 | ||||
| intel-xeon-e5-2643v4	3.4	6	2	135	14329	22063 | ||||
| intel-xeon-e5-2650v4	2.2	12	2	105	16212	22619 | ||||
| intel-xeon-e5-2650lv4	1.7	14	2	65	0	0 | ||||
| intel-xeon-e5-2660v4	2.0	14	2	105	0	0 | ||||
| intel-xeon-e5-2667v4	3.2	8	2	135	0	0 | ||||
| intel-xeon-e5-2680v4	2.4	14	2	120	20489	0 | ||||
| intel-xeon-e5-2683v4	2.1	16	2	120	0	0 | ||||
| intel-xeon-e5-2687wv4	3.0	12	2	160	20340	27161 | ||||
| intel-xeon-e5-2690v4	2.6	14	2	120	22843	28262 | ||||
| intel-xeon-e5-2695v4	2.1	18	2	135	19351	20768 | ||||
| intel-xeon-e5-2697v4	2.3	18	2	135	23070	0 | ||||
| intel-xeon-e5-2697av4	2.6	16	2	145	0	24075 | ||||
| intel-xeon-e5-2698v4	2.2	20	2	135	24615	32248 | ||||
| intel-xeon-e5-2699v4	2.2	22	2	145	21277	38461 | ||||
| intel-xeon-gold-5115	2.4	10 	4	85	0	0 | ||||
| intel-xeon-gold-5117	2.0	14 	4	105	0	0 | ||||
| intel-xeon-gold-5117f	2.0	14 	4	113	0	0 | ||||
| intel-xeon-gold-5117m	2.0	0 	4	0	0	21250 | ||||
| intel-xeon-gold-5118	2.3	12 	4	105	0	0 | ||||
| intel-xeon-gold-5119t	1.9	14 	4	85	0	0 | ||||
| intel-xeon-gold-5120	2.2	14 	4	105	0	0 | ||||
| intel-xeon-gold-5120t	2.2	14 	4	105	0	0 | ||||
| intel-xeon-gold-5122	3.6	4 	4	105	0	0 | ||||
| intel-xeon-gold-6126	2.6	12 	4	125	0	0 | ||||
| intel-xeon-gold-6126f	2.6	12 	4	135	0	0 | ||||
| intel-xeon-gold-6128	3.4	6 	4	115	0	0 | ||||
| intel-xeon-gold-6130	2.1	16 	4	125	0	0 | ||||
| intel-xeon-gold-6130f	2.1	16 	4	125	0	0 | ||||
| intel-xeon-gold-6130t	2.1	16 	4	125	0	0 | ||||
| intel-xeon-gold-6132	2.6	14 	4	140	0	0 | ||||
| intel-xeon-gold-6134	3.2	8 	4	130	0	0 | ||||
| intel-xeon-gold-6134m	3.2	8 	4	130	0	0 | ||||
| intel-xeon-gold-6136	3.0	12 	4	150	0	0 | ||||
| intel-xeon-gold-6138	2.0	20 	4	125	0	0 | ||||
| intel-xeon-gold-6138f	2.0	20 	4	135	0	0 | ||||
| intel-xeon-gold-6138t	2.0	20 	4	125	0	0 | ||||
| intel-xeon-gold-6140	2.3	18 	4	140	0	0 | ||||
| intel-xeon-gold-6140m	2.3	18 	4	140	0	0 | ||||
| intel-xeon-gold-6142	2.6	16 	4	150	0	0 | ||||
| intel-xeon-gold-6142f	2.6	16 	4	160	0	0 | ||||
| intel-xeon-gold-6142m	2.6	16 	4	150	0	0 | ||||
| intel-xeon-gold-6144	3.5	8 	4	150	0	0 | ||||
| intel-xeon-gold-6145	2.0	20 	4	145	0	0 | ||||
| intel-xeon-gold-6146	3.2	12 	4	165	0	0 | ||||
| intel-xeon-gold-6148	2.4	20 	4	150	0	0 | ||||
| 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-6154	3.0	18 	4	200	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 | ||||
| #id	clock	num_cores	max_cpus	tdp	cpumark_1_cpu	cpumark_2_cpu	l3_cache_mb | ||||
| intel-core-i7-8700k	3.7	6	1	95	0	0	0 | ||||
| intel-xeon-5150	2.66	2	2	65	1746	3498	0 | ||||
| intel-xeon-e5462	2.8	4	2	80	4038	7350	0 | ||||
| intel-xeon-x5550	2.67	4	2	95	5416	9131	0 | ||||
| intel-xeon-x5560	2.8	4	2	95	5426	9215	0 | ||||
| intel-xeon-x5650	2.67	6	2	95	7601	11728	0 | ||||
| intel-xeon-x5660	2.8	6	2	95	7954	11893	0 | ||||
| intel-xeon-e5-2660	2.2	8	2	95	11535	17282	0 | ||||
| intel-xeon-e5-2670	2.6	8	2	115	0	18509	0 | ||||
| intel-xeon-e5-2680	2.7	8	2	130	0	18480	0 | ||||
| intel-xeon-e5-2690	2.9	8	2	135	0	20699	0 | ||||
| intel-xeon-e5-2620v2	2.1	6	2	95	8664	13474	0 | ||||
| intel-xeon-e5-2630v2	2.6	6	2	80	10615	16256	0 | ||||
| intel-xeon-e5-2640v2	2	8	2	95	10132	14792	0 | ||||
| intel-xeon-e5-2650v2	2.6	8	2	95	13276	19333	0 | ||||
| intel-xeon-e5-2660v2	2.2	10	2	95	13659	18670	0 | ||||
| intel-xeon-e5-2670v2	2.5	10	2	115	14892	22062	0 | ||||
| intel-xeon-e5-2680v2	2.8	10	2	115	16340	23263	0 | ||||
| intel-xeon-e5-2690v2	3	10	2	130	17304	24189	0 | ||||
| intel-xeon-e5-2695v2	2.4	12	2	130	17231	21980	0 | ||||
| intel-xeon-e5-2697v2	2.7	12	2	130	17516	23910	0 | ||||
| intel-xeon-e5-2603v3	1.6	6	2	85	4996	8358	0 | ||||
| intel-xeon-e5-2609v3	1.9	6	2	85	5878	9885	0 | ||||
| intel-xeon-e5-2620v3	2.4	6	2	85	9955	15400	0 | ||||
| intel-xeon-e5-2623v3	3	6	2	105	9007	13914	0 | ||||
| intel-xeon-e5-2630v3	2.4	8	2	85	12803	18699	0 | ||||
| intel-xeon-e5-2630lv3	1.8	8	2	55	11201	0	0 | ||||
| intel-xeon-e5-2637v3	3.5	4	2	135	10278	16823	0 | ||||
| intel-xeon-e5-2640v3	2.6	8	2	90	14081	20824	0 | ||||
| intel-xeon-e5-2643v3	3.4	6	2	135	13671	20574	0 | ||||
| intel-xeon-e5-2650v3	2.3	10	2	105	15106	20602	0 | ||||
| intel-xeon-e5-2650lv3	1.8	12	2	65	13132	0	0 | ||||
| intel-xeon-e5-2660v3	2.6	10	2	105	16161	23388	0 | ||||
| intel-xeon-e5-2667v3	3.2	8	2	135	16125	22935	0 | ||||
| intel-xeon-e5-2670v3	2.3	12	2	120	16549	22330	0 | ||||
| intel-xeon-e5-2680v3	2.5	12	2	120	18840	25352	0 | ||||
| intel-xeon-e5-2683v3	2	14	2	120	17917	22704	0 | ||||
| intel-xeon-e5-2687wv3	3.1	10	2	160	17785	24769	0 | ||||
| intel-xeon-e5-2690v3	2.6	12	2	160	19567	26665	0 | ||||
| intel-xeon-e5-2695v3	2.3	14	2	120	20742	26021	0 | ||||
| intel-xeon-e5-2697v3	2.6	14	2	145	21667	29009	0 | ||||
| intel-xeon-e5-2698v3	2.3	16	2	135	21794	30217	0 | ||||
| intel-xeon-e5-2699v3	2.3	18	2	145	22520	24820	0 | ||||
| intel-xeon-e5-2603v4	1.7	6	2	85	5247	8809	0 | ||||
| intel-xeon-e5-2609v4	1.7	8	2	85	0	10835	0 | ||||
| intel-xeon-e5-2620v4	2.1	8	2	85	11219	17063	0 | ||||
| intel-xeon-e5-2623v4	2.6	4	2	85	0	10196	0 | ||||
| intel-xeon-e5-2630v4	2.2	10	2	85	14221	18281	0 | ||||
| intel-xeon-e5-2630lv4	1.8	10	2	55	0	0	0 | ||||
| intel-xeon-e5-2637v4	3.5	4	2	135	9665	17398	0 | ||||
| intel-xeon-e5-2640v4	2.4	10	2	90	15244	21556	0 | ||||
| intel-xeon-e5-2643v4	3.4	6	2	135	14329	22063	0 | ||||
| intel-xeon-e5-2650v4	2.2	12	2	105	16212	22619	0 | ||||
| intel-xeon-e5-2650lv4	1.7	14	2	65	0	0	0 | ||||
| intel-xeon-e5-2660v4	2.0	14	2	105	0	0	0 | ||||
| intel-xeon-e5-2667v4	3.2	8	2	135	0	0	0 | ||||
| intel-xeon-e5-2680v4	2.4	14	2	120	20489	0	0 | ||||
| intel-xeon-e5-2683v4	2.1	16	2	120	0	0	0 | ||||
| intel-xeon-e5-2687wv4	3.0	12	2	160	20340	27161	0 | ||||
| intel-xeon-e5-2690v4	2.6	14	2	120	22843	28262	0 | ||||
| intel-xeon-e5-2695v4	2.1	18	2	135	19351	20768	0 | ||||
| intel-xeon-e5-2697v4	2.3	18	2	135	23070	0	0 | ||||
| intel-xeon-e5-2697av4	2.6	16	2	145	0	24075	0 | ||||
| intel-xeon-e5-2698v4	2.2	20	2	135	24615	32248	0 | ||||
| intel-xeon-e5-2699v4	2.2	22	2	145	21277	38461	0 | ||||
| intel-xeon-gold-5115	2.4	10 	4	85	0	0	0 | ||||
| intel-xeon-gold-5117	2.0	14 	4	105	0	0	0 | ||||
| intel-xeon-gold-5117f	2.0	14 	4	113	0	0	0 | ||||
| intel-xeon-gold-5117m	2.0	0 	4	0	0	21250	0 | ||||
| intel-xeon-gold-5118	2.3	12 	4	105	0	0	0 | ||||
| intel-xeon-gold-5119t	1.9	14 	4	85	0	0	0 | ||||
| intel-xeon-gold-5120	2.2	14 	4	105	0	0	0 | ||||
| intel-xeon-gold-5120t	2.2	14 	4	105	0	0	0 | ||||
| intel-xeon-gold-5122	3.6	4 	4	105	0	0	0 | ||||
| intel-xeon-gold-6126	2.6	12 	4	125	0	0	0 | ||||
| intel-xeon-gold-6126f	2.6	12 	4	135	0	0	0 | ||||
| intel-xeon-gold-6128	3.4	6 	4	115	0	0	0 | ||||
| intel-xeon-gold-6130	2.1	16 	4	125	0	0	0 | ||||
| intel-xeon-gold-6130f	2.1	16 	4	125	0	0	0 | ||||
| intel-xeon-gold-6130t	2.1	16 	4	125	0	0	0 | ||||
| intel-xeon-gold-6132	2.6	14 	4	140	0	0	0 | ||||
| intel-xeon-gold-6134	3.2	8 	4	130	0	0	0 | ||||
| intel-xeon-gold-6134m	3.2	8 	4	130	0	0	0 | ||||
| intel-xeon-gold-6136	3.0	12 	4	150	0	0	0 | ||||
| intel-xeon-gold-6138	2.0	20 	4	125	0	0	0 | ||||
| intel-xeon-gold-6138f	2.0	20 	4	135	0	0	0 | ||||
| intel-xeon-gold-6138t	2.0	20 	4	125	0	0	0 | ||||
| intel-xeon-gold-6140	2.3	18 	4	140	0	0	0 | ||||
| intel-xeon-gold-6140m	2.3	18 	4	140	0	0	0 | ||||
| intel-xeon-gold-6142	2.6	16 	4	150	0	0	0 | ||||
| intel-xeon-gold-6142f	2.6	16 	4	160	0	0	0 | ||||
| intel-xeon-gold-6142m	2.6	16 	4	150	0	0	0 | ||||
| intel-xeon-gold-6144	3.5	8 	4	150	0	0	0 | ||||
| intel-xeon-gold-6145	2.0	20 	4	145	0	0	0 | ||||
| intel-xeon-gold-6146	3.2	12 	4	165	0	0	0 | ||||
| intel-xeon-gold-6148	2.4	20 	4	150	0	0	0 | ||||
| intel-xeon-gold-6150	2.7	18 	4	165	0	26349	0 | ||||
| intel-xeon-gold-6152	2.1	22 	4	140	0	0	0 | ||||
| intel-xeon-gold-6154	3.0	18 	4	200	0	0	0 | ||||
| intel-xeon-gold-6161	2.2	22 	4	165	0	0	0 | ||||
| intel-xeon-platinum-8153	2.0	16	8	125	0	0	0 | ||||
| intel-xeon-platinum-8160	2.1	24	8	150	0	0	0 | ||||
| intel-xeon-platinum-8164	2.0	26	8	165	0	0	0 | ||||
| intel-xeon-platinum-8168	2.7	24	8	205	0	0	0 | ||||
| intel-xeon-platinum-8170	2.1	26	8	165	0	0	0 | ||||
| intel-xeon-platinum-8176	2.1	28	8	165	0	0	0 | ||||
| 
 | ||||
| intel-xeon-silver-4208	2.1	8 	2	85	0	0	0 | ||||
| intel-xeon-silver-4210r	2.4	10 	2	100	0	0	0 | ||||
| intel-xeon-silver-4214	2.2	12 	2	85	0	0	0 | ||||
| intel-xeon-silver-4214r	2.4	12 	2	100	0	0	0 | ||||
| intel-xeon-silver-4214y	2.2	12 	2	85	0	0	0 | ||||
| intel-xeon-silver-4215r	3.2	8 	2	130	0	0	0 | ||||
| intel-xeon-silver-4216	2.1	16 	2	100	0	0	0 | ||||
| intel-xeon-gold-5215	2.5	10 	4	85	0	0	0 | ||||
| intel-xeon-gold-5215l	2.5	10 	4	85	0	0	0 | ||||
| intel-xeon-gold-5217	3.0	8 	4	115	0	0	0 | ||||
| intel-xeon-gold-5218	2.3	16 	4	125	0	0	0 | ||||
| intel-xeon-gold-5218n	2.3	16 	4	125	0	0	0 | ||||
| intel-xeon-gold-5218r	2.1	20 	2	125	0	0	0 | ||||
| intel-xeon-gold-5220	2.2	18 	4	125	0	0	0 | ||||
| intel-xeon-gold-5220r	2.2	24 	2	150	0	0	0 | ||||
| intel-xeon-gold-5222	3.8	4 	4	105	0	0	0 | ||||
| intel-xeon-gold-6208u	2.9	16 	1	150	0	0	0 | ||||
| intel-xeon-gold-6210u	2.5	20 	1	150	0	0	0 | ||||
| intel-xeon-gold-6212u	2.4	24 	1	165	0	0	0 | ||||
| intel-xeon-gold-6226	2.7	12 	4	125	0	0	0 | ||||
| intel-xeon-gold-6226r	2.9	16 	2	150	0	0	0 | ||||
| intel-xeon-gold-6230	2.1	20 	4	125	0	0	0 | ||||
| intel-xeon-gold-6230n	2.3	20 	2	125	0	0	0 | ||||
| intel-xeon-gold-6230r	2.1	26 	2	150	0	0	0 | ||||
| intel-xeon-gold-6234	3.3	8 	4	130	0	0	0 | ||||
| intel-xeon-gold-6238	2.1	22 	4	140	0	0	0 | ||||
| intel-xeon-gold-6238l	2.1	22 	4	140	0	0	0 | ||||
| intel-xeon-gold-6238m	2.1	22 	4	140	0	0	0 | ||||
| intel-xeon-gold-6238r	2.2	28 	2	165	0	0	0 | ||||
| intel-xeon-gold-6240	2.6	18 	4	150	0	0	0 | ||||
| intel-xeon-gold-6240l	2.6	18 	4	150	0	0	0 | ||||
| intel-xeon-gold-6240m	2.6	18 	4	150	0	0	0 | ||||
| intel-xeon-gold-6240r	2.4	24 	2	165	0	0	0 | ||||
| intel-xeon-gold-6240y	2.6	18 	4	150	0	0	0 | ||||
| intel-xeon-gold-6242	2.8	16 	4	150	0	0	0 | ||||
| intel-xeon-gold-6242r	3.1	20 	2	205	0	0	0 | ||||
| intel-xeon-gold-6244	3.6	8 	4	150	0	0	0 | ||||
| intel-xeon-gold-6246	3.3	12 	4	165	0	0	0 | ||||
| intel-xeon-gold-6246r	3.4	16 	2	205	0	0	0 | ||||
| intel-xeon-gold-6248	2.5	20 	4	150	0	0	0 | ||||
| intel-xeon-gold-6248r	3.0	24 	2	205	0	0	0 | ||||
| intel-xeon-gold-6250	3.9	8 	4	185	0	0	0 | ||||
| intel-xeon-gold-6252	2.1	24 	4	150	0	0	0 | ||||
| intel-xeon-gold-6254	3.1	18 	4	200	0	0	0 | ||||
| intel-xeon-gold-6258r	2.7	28 	2	205	0	0	0 | ||||
| intel-xeon-platinum-8253	2.2	16 	8	125	0	0	0 | ||||
| intel-xeon-platinum-8256	3.8	4 	8	105	0	0	0 | ||||
| intel-xeon-platinum-8260	2.4	24 	8	165	0	0	0 | ||||
| intel-xeon-platinum-8260l	2.4	24 	8	165	0	0	0 | ||||
| intel-xeon-platinum-8260y	2.4	24 	8	165	0	0	0 | ||||
| intel-xeon-platinum-8268	2.9	24 	8	205	0	0	0 | ||||
| intel-xeon-platinum-8270	2.7	26 	8	205	0	0	0 | ||||
| intel-xeon-platinum-8276	2.2	28 	8	165	0	0	0 | ||||
| intel-xeon-platinum-8280	2.7	28 	8	205	0	0	0 | ||||
| intel-xeon-platinum-8280l	2.7	28 	8	205	0	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-4214	2.2	12 	2	85	0	0 | ||||
| intel-xeon-silver-4214r	2.4	12 	2	100	0	0 | ||||
| intel-xeon-silver-4214y	2.2	12 	2	85	0	0 | ||||
| intel-xeon-silver-4215r	3.2	8 	2	130	0	0 | ||||
| intel-xeon-silver-4216	2.1	16 	2	100	0	0 | ||||
| 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-5217	3.0	8 	4	115	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-5220	2.2	18 	4	125	0	0 | ||||
| intel-xeon-gold-5220r	2.2	24 	2	150	0	0 | ||||
| intel-xeon-gold-5222	3.8	4 	4	105	0	0 | ||||
| intel-xeon-gold-6208u	2.9	16 	1	150	0	0 | ||||
| intel-xeon-gold-6210u	2.5	20 	1	150	0	0 | ||||
| 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-6226r	2.9	16 	2	150	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-6234	3.3	8 	4	130	0	0 | ||||
| intel-xeon-gold-6238	2.1	22 	4	140	0	0 | ||||
| intel-xeon-gold-6238l	2.1	22 	4	140	0	0 | ||||
| intel-xeon-gold-6238m	2.1	22 	4	140	0	0 | ||||
| intel-xeon-gold-6238r	2.2	28 	2	165	0	0 | ||||
| intel-xeon-gold-6240	2.6	18 	4	150	0	0 | ||||
| intel-xeon-gold-6240l	2.6	18 	4	150	0	0 | ||||
| intel-xeon-gold-6240m	2.6	18 	4	150	0	0 | ||||
| intel-xeon-gold-6240r	2.4	24 	2	165	0	0 | ||||
| intel-xeon-gold-6240y	2.6	18 	4	150	0	0 | ||||
| intel-xeon-gold-6242	2.8	16 	4	150	0	0 | ||||
| intel-xeon-gold-6242r	3.1	20 	2	205	0	0 | ||||
| intel-xeon-gold-6244	3.6	8 	4	150	0	0 | ||||
| intel-xeon-gold-6246	3.3	12 	4	165	0	0 | ||||
| intel-xeon-gold-6246r	3.4	16 	2	205	0	0 | ||||
| intel-xeon-gold-6248	2.5	20 	4	150	0	0 | ||||
| intel-xeon-gold-6248r	3.0	24 	2	205	0	0 | ||||
| intel-xeon-gold-6250	3.9	8 	4	185	0	0 | ||||
| intel-xeon-gold-6252	2.1	24 	4	150	0	0 | ||||
| intel-xeon-gold-6254	3.1	18 	4	200	0	0 | ||||
| intel-xeon-gold-6258r	2.7	28 	2	205	0	0 | ||||
| intel-xeon-platinum-8253	2.2	16 	8	125	0	0 | ||||
| intel-xeon-platinum-8256	3.8	4 	8	105	0	0 | ||||
| intel-xeon-platinum-8260	2.4	24 	8	165	0	0 | ||||
| intel-xeon-platinum-8260l	2.4	24 	8	165	0	0 | ||||
| intel-xeon-platinum-8260y	2.4	24 	8	165	0	0 | ||||
| intel-xeon-platinum-8268	2.9	24 	8	205	0	0 | ||||
| intel-xeon-platinum-8270	2.7	26 	8	205	0	0 | ||||
| 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-8280l	2.7	28 	8	205	0	0 | ||||
| intel-xeon-silver-4310	2.1	12 	2	120	0	0	18.0 | ||||
| intel-xeon-silver-4314	2.4	16 	2	135	0	0	24.0 | ||||
| intel-xeon-silver-4316	2.3	20 	2	150	0	0	30.0 | ||||
| intel-xeon-gold-5315y	3.2	8 	2	140	0	0	12.0 | ||||
| intel-xeon-gold-5317	3.0	12 	2	150	0	0	18.0 | ||||
| intel-xeon-gold-5318s	2.1	24 	2	165	0	0	36.0 | ||||
| intel-xeon-gold-5318y	2.1	24 	2	165	0	0	36.0 | ||||
| intel-xeon-gold-5320	2.2	26 	2	185	0	0	39.0 | ||||
| intel-xeon-gold-6312u	2.4	24 	1	185	0	0	36.0 | ||||
| intel-xeon-gold-6314u	2.3	32 	1	205	0	0	48.0 | ||||
| intel-xeon-gold-6326	2.9	16 	2	185	0	0	24.0 | ||||
| intel-xeon-gold-6330	2.0	28 	2	205	0	0	42.0 | ||||
| intel-xeon-gold-6334	3.6	8 	2	165	0	0	18.0 | ||||
| intel-xeon-gold-6336y	2.4	24 	2	185	0	0	36.0 | ||||
| intel-xeon-gold-6338	2.0	32 	2	205	0	0	48.0 | ||||
| intel-xeon-gold-6338n	2.2	32 	2	185	0	0	48.0 | ||||
| intel-xeon-gold-6342	2.8	24 	2	230	0	0	30.0 | ||||
| intel-xeon-gold-6346	3.1	16 	2	205	0	0	36.0 | ||||
| intel-xeon-gold-6348	2.6	28 	2	235	0	0	42.0 | ||||
| intel-xeon-gold-6354	3.0	18 	2	205	0	0	39.0 | ||||
| intel-xeon-platinum-8351n	2.4	36 	2	225	0	0	54.0 | ||||
| intel-xeon-platinum-8352m	2.3	32 	2	185	0	0	0 | ||||
| intel-xeon-platinum-8352s	2.2	32 	2	205	0	0	48.0 | ||||
| intel-xeon-platinum-8352v	2.1	36 	2	195	0	0	54.0 | ||||
| intel-xeon-platinum-8352y	2.2	32 	2	205	0	0	48.0 | ||||
| intel-xeon-platinum-8358	2.6	32 	2	250	0	0	48.0 | ||||
| intel-xeon-platinum-8358p	2.6	32 	2	240	0	0	48.0 | ||||
| intel-xeon-platinum-8362	2.8	32 	2	265	0	0	48.0 | ||||
| intel-xeon-platinum-8368	2.4	38 	2	270	0	0	57.0 | ||||
| intel-xeon-platinum-8380	2.3	40 	2	270	0	0	60.0 | ||||
| 
 | ||||
| intel-xeon-silver-4310	2.1	12 	2	120	0	0 | ||||
| intel-xeon-silver-4314	2.4	16 	2	135	0	0 | ||||
| intel-xeon-silver-4316	2.3	20 	2	150	0	0 | ||||
| intel-xeon-gold-5315y	3.2	8 	2	140	0	0 | ||||
| intel-xeon-gold-5317	3.0	12 	2	150	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 | ||||
| intel-xeon-bronze-3408u	1.8	8	2	125	0	0	22.5 | ||||
| intel-xeon-silver-4410y	2.0	12	2	150	0	0	30.0 | ||||
| intel-xeon-silver-4416+	2.0	20	2	165	0	0	37.5 | ||||
| intel-xeon-gold-5411n	1.9	24	1	165	0	0	45.0 | ||||
| intel-xeon-gold-5412u	2.1	24	1	185	0	0	45.0 | ||||
| intel-xeon-gold-5415+	2.9	8	2	150	0	0	22.5 | ||||
| intel-xeon-gold-5416s	2.0	16	2	150	0	0	30.0 | ||||
| intel-xeon-gold-5418n	1.8	24	2	165	0	0	45.0 | ||||
| intel-xeon-gold-5418y	2.0	24	2	185	0	0	45.0 | ||||
| intel-xeon-gold-5420+	2.0	28	2	205	0	0	52.5 | ||||
| intel-xeon-gold-6414u	2.0	32	1	250	0	0	60.0 | ||||
| intel-xeon-gold-6416h	2.2	18	4	165	0	0	45.0 | ||||
| intel-xeon-gold-6418h	2.1	24	4	185	0	0	60.0 | ||||
| intel-xeon-gold-6421n	1.8	32	1	185	0	0	60.0 | ||||
| intel-xeon-gold-6426y	2.5	16	2	185	0	0	37.5 | ||||
| intel-xeon-gold-6430	2.1	32	2	270	0	0	60.0 | ||||
| intel-xeon-gold-6434	3.7	8	2	195	0	0	22.5 | ||||
| intel-xeon-gold-6434h	3.7	8	4	195	0	0	22.5 | ||||
| intel-xeon-gold-6438n	2.0	32	2	205	0	0	60.0 | ||||
| intel-xeon-gold-6438y+	2.0	32	2	205	0	0	60.0 | ||||
| intel-xeon-gold-6442y	2.6	24	2	225	0	0	60.0 | ||||
| intel-xeon-gold-6444y	3.6	16	2	270	0	0	45.0 | ||||
| intel-xeon-gold-6448h	2.4	32	4	250	0	0	60.0 | ||||
| intel-xeon-gold-6448y	2.1	32	2	225	0	0	60.0 | ||||
| intel-xeon-gold-6454s	2.2	32	2	270	0	0	60.0 | ||||
| intel-xeon-gold-6458q	3.1	32	2	350	0	0	60.0 | ||||
| intel-xeon-platinum-8444h	2.9	16 	2	270	0	0	45.0 | ||||
| intel-xeon-platinum-8452y	2.0	36 	2	300	0	0	67.5 | ||||
| intel-xeon-platinum-8458p	2.7	44 	2	350	0	0	82.5 | ||||
| intel-xeon-platinum-8460y+	2.0	40 	2	300	0	0	105.0 | ||||
| intel-xeon-platinum-8462y+	2.8	32 	2	300	0	0	60.0 | ||||
| intel-xeon-platinum-8468	2.1	48 	2	350	0	0	105.0 | ||||
| intel-xeon-platinum-8468v	2.4	48 	2	330	0	0	97.5 | ||||
| intel-xeon-platinum-8470	2.0	52 	2	350	0	0	105.0 | ||||
| intel-xeon-platinum-8470n	1.7	52 	2	300	0	0	97.5 | ||||
| intel-xeon-platinum-8470q	2.1	52 	2	350	0	0	105.0 | ||||
| intel-xeon-platinum-8471n	1.8	52 	1	300	0	0	95.5 | ||||
| intel-xeon-platinum-8480+	2.0	56 	2	350	0	0	105.0 | ||||
| intel-xeon-platinum-8490h	1.9	60 	8	350	0	0	112.5 | ||||
| intel-xeon-platinum-9462	2.7	32 	2	350	0	0	75.0 | ||||
| 
 | ||||
| intel-xeon-bronze-3408u	1.8	8	2	125	0	0 | ||||
| intel-xeon-silver-4410y	2.0	12	2	150	0	0 | ||||
| intel-xeon-silver-4416+	2.0	20	2	165	0	0 | ||||
| intel-xeon-gold-5411n	1.9	24	2	165	0	0 | ||||
| intel-xeon-gold-5415+	2.9	8	2	150	0	0 | ||||
| intel-xeon-gold-5416s	2.0	16	2	150	0	0 | ||||
| intel-xeon-gold-5418n	1.8	24	2	165	0	0 | ||||
| intel-xeon-gold-5418y	2.0	24	2	185	0	0 | ||||
| intel-xeon-gold-5420+	2.0	28	2	205	0	0 | ||||
| intel-xeon-gold-6414u	2.0	32	1	250	0	0 | ||||
| intel-xeon-gold-6416h	2.2	18	2	165	0	0 | ||||
| intel-xeon-gold-6418h	2.1	24	2	185	0	0 | ||||
| intel-xeon-gold-6421n	1.8	32	2	185	0	0 | ||||
| intel-xeon-gold-6426y	2.5	16	2	185	0	0 | ||||
| intel-xeon-gold-6430	2.1	32	2	270	0	0 | ||||
| intel-xeon-gold-6434	3.7	8	2	195	0	0 | ||||
| intel-xeon-gold-6438n	2.0	32	2	205	0	0 | ||||
| intel-xeon-gold-6438y+	2.0	32	2	205	0	0 | ||||
| intel-xeon-gold-6442y	2.6	24	2	225	0	0 | ||||
| intel-xeon-gold-6444y	3.6	16	2	270	0	0 | ||||
| intel-xeon-gold-6448y	2.1	32	2	225	0	0 | ||||
| intel-xeon-gold-6454s	2.2	32	2	270	0	0 | ||||
| intel-xeon-gold-6458q	3.1	32	2	350	0	0 | ||||
| intel-xeon-platinum-8444h	2.9	16 	2	270	0	0 | ||||
| intel-xeon-platinum-8452y	2.0	36 	2	300	0	0 | ||||
| intel-xeon-platinum-8458p	2.7	44 	2	350	0	0 | ||||
| intel-xeon-platinum-8458q	3.1	32 	2	350	0	0 | ||||
| intel-xeon-platinum-8460y+	2.0	40 	2	300	0	0 | ||||
| intel-xeon-platinum-8462y+	2.8	32 	2	300	0	0 | ||||
| intel-xeon-platinum-8468	2.1	48 	2	350	0	0 | ||||
| intel-xeon-platinum-8468v	2.4	48 	2	330	0	0 | ||||
| intel-xeon-platinum-8470	2.0	52 	2	350	0	0 | ||||
| intel-xeon-platinum-8470n	1.7	52 	2	300	0	0 | ||||
| intel-xeon-platinum-8470q	2.1	52 	2	350	0	0 | ||||
| intel-xeon-platinum-8480+	2.0	56 	2	350	0	0 | ||||
| intel-xeon-platinum-8490h	1.9	60 	2	350	0	0 | ||||
| intel-xeon-platinum-9462	2.7	32 	2	350	0	0 | ||||
| amd-epyc-7262	3.2	8	2	155	0	0	0 | ||||
| amd-epyc-7272	2.9	12	2	120	0	0	0 | ||||
| amd-epyc-7282	2.8	16	2	120	0	0	0 | ||||
| amd-epyc-7302	3.0	16	2	155	0	0	0 | ||||
| amd-epyc-7352	2.3	24	2	155	0	0	0 | ||||
| amd-epyc-7402	2.8	24	2	180	0	0	0 | ||||
| amd-epyc-7452	2.35	32	2	155	0	0	0 | ||||
| amd-epyc-7502	2.5	32	2	180	0	0	0 | ||||
| amd-epyc-7542	2.9	32	2	225	0	0	0 | ||||
| amd-epyc-7552	2.2	48	2	200	0	0	0 | ||||
| amd-epyc-7642	2.3	48	2	225	0	0	0 | ||||
| amd-epyc-7702	2.0	64	2	200	0	0	0 | ||||
| amd-epyc-7742	2.25	64	2	225	0	0	0 | ||||
| amd-epyc-7f32	3.7	8	2	180	0	0	0 | ||||
| amd-epyc-7f52	3.5	16	2	240	0	0	0 | ||||
| amd-epyc-7f72	3.5	24	2	240	0	0	0 | ||||
| amd-epyc-7h12	2.6	64	2	280	0	0	0 | ||||
| 
 | ||||
| amd-epyc-7262	3.2	8	2	155	0	0 | ||||
| amd-epyc-7272	2.9	12	2	120	0	0 | ||||
| amd-epyc-7282	2.8	16	2	120	0	0 | ||||
| amd-epyc-7302	3.0	16	2	155	0	0 | ||||
| amd-epyc-7352	2.3	24	2	155	0	0 | ||||
| amd-epyc-7402	2.8	24	2	180	0	0 | ||||
| amd-epyc-7452	2.35	32	2	155	0	0 | ||||
| amd-epyc-7502	2.5	32	2	180	0	0 | ||||
| amd-epyc-7542	2.9	32	2	225	0	0 | ||||
| amd-epyc-7552	2.2	48	2	200	0	0 | ||||
| amd-epyc-7642	2.3	48	2	225	0	0 | ||||
| amd-epyc-7702	2.0	64	2	200	0	0 | ||||
| amd-epyc-7742	2.25	64	2	225	0	0 | ||||
| amd-epyc-7f32	3.7	8	2	180	0	0 | ||||
| amd-epyc-7f52	3.5	16	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-72f3	3.7	8	2	180	0	0	0 | ||||
| amd-epyc-7313	3.0	16	2	155	0	0	0 | ||||
| amd-epyc-7343	3.2	16	2	190	0	0	0 | ||||
| amd-epyc-73f3	3.5	16	2	240	0	0	0 | ||||
| amd-epyc-7413	2.65	24	2	180	0	0	0 | ||||
| amd-epyc-7443	2.85	24	2	200	0	0	0 | ||||
| amd-epyc-7453	2.75	28	2	225	0	0	0 | ||||
| amd-epyc-74f3	3.2	24	2	240	0	0	0 | ||||
| amd-epyc-7513	2.6	32	2	200	0	0	0 | ||||
| amd-epyc-7543	2.8	32	2	225	0	0	0 | ||||
| amd-epyc-75f3	2.95	32	2	280	0	0	0 | ||||
| amd-epyc-7643	2.3	48	2	225	0	0	0 | ||||
| amd-epyc-7663	2.0	56	2	240	0	0	0 | ||||
| amd-epyc-7713	2.0	64	2	225	0	0	0 | ||||
| amd-epyc-7763	2.45	64	2	280	0	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 | ||||
| amd-epyc-9124	3.0	16	2	200	0	0	64 | ||||
| amd-epyc-9174f	4.1	16	2	320	0	0	256 | ||||
| amd-epyc-9224	2.5	24	2	200	0	0	64 | ||||
| amd-epyc-9254	2.9	24	2	220	0	0	128 | ||||
| amd-epyc-9274f	4.05	24	2	320	0	0	256 | ||||
| amd-epyc-9334	2.7	32	2	210	0	0	128 | ||||
| amd-epyc-9354	3.25	32	2	280	0	0	256 | ||||
| amd-epyc-9374f	3.85	32	2	320	0	0	256 | ||||
| amd-epyc-9454	2.75	48	2	290	0	0	256 | ||||
| amd-epyc-9474f	3.6	48	2	360	0	0	256 | ||||
| amd-epyc-9534	2.45	64	2	280	0	0	256 | ||||
| amd-epyc-9554	3.1	64	2	360	0	0	256 | ||||
| amd-epyc-9634	2.25	84	2	290	0	0	384 | ||||
| amd-epyc-9654	2.4	96	2	360	0	0	384 | ||||
| amd-epyc-9734	2.2	112	2	340	0	0	256 | ||||
| amd-epyc-9754	2.25	128	2	360	0	0	256 | ||||
|  |  | |||
| 
 | 
							
								
								
									
										140
									
								
								concho/config.py
								
								
								
								
							
							
						
						
									
										140
									
								
								concho/config.py
								
								
								
								
							|  | @ -95,11 +95,12 @@ class Cpu(Item): | |||
|     max_cpus: int  # how many such cpus can be put on the same motherboard | ||||
|     tdp: Power  # TDP of the cpu, in Watts | ||||
|     cpumark: float  # cpu mark | ||||
|     l3_cache_mb: int  # level 3 cache, in MiB | ||||
| 
 | ||||
|     def __init__(self, proc_id: CpuId): | ||||
|         super().__init__(proc_id) | ||||
|         cpuTable = numpy.genfromtxt('catalogs/cpu_table.tsv', dtype=("|U32", float, int, float, float, float), names=True, delimiter='\t') | ||||
|         for cpu_id, clock, num_cores, max_cpus, tdp, cpumark in zip(cpuTable['id'], cpuTable['clock'], cpuTable['num_cores'], cpuTable['max_cpus'], cpuTable['tdp'], cpuTable['cpumark_1_cpu']): | ||||
|         cpuTable = numpy.genfromtxt('catalogs/cpu_table.tsv', dtype=("|U32", float, int, float, float, float, int, int), names=True, delimiter='\t') | ||||
|         for cpu_id, clock, num_cores, max_cpus, tdp, cpumark, l3_cache_mb in zip(cpuTable['id'], cpuTable['clock'], cpuTable['num_cores'], cpuTable['max_cpus'], cpuTable['tdp'], cpuTable['cpumark_1_cpu'], cpuTable['l3_cache_mb']): | ||||
|             # print(cpu_id) | ||||
|             if cpu_id == proc_id: | ||||
|                 # print('found '+procId) | ||||
|  | @ -110,6 +111,7 @@ class Cpu(Item): | |||
|         self.max_cpus = max_cpus | ||||
|         self.tdp = tdp | ||||
|         self.cpumark = cpumark | ||||
|         self.l3_cache_mb = l3_cache_mb | ||||
| 
 | ||||
|     @property | ||||
|     def architecture(self) -> CpuArchitecture: | ||||
|  | @ -162,34 +164,62 @@ class Cpu(Item): | |||
|             return 'rome' | ||||
|         elif re.match('amd-epyc-[0-9][0-9fh][0-9f]3', proc_id): | ||||
|             return 'milan' | ||||
|         elif re.match('amd-epyc-8[0-6][0-9f]4', proc_id): | ||||
|             return 'siena'  # zen 4c | ||||
|         elif re.match('amd-epyc-9[0-6][0-9f]4', proc_id): | ||||
|             return 'genoa'  # zen 4 | ||||
|         elif re.match('amd-epyc-97[0-9f]4', proc_id): | ||||
|             return 'bergamo'  # zen 4c | ||||
|         else: | ||||
|             assert False, 'unhandled processor id : %s' % proc_id | ||||
| 
 | ||||
|     @property | ||||
|     def num_dp_flop_per_cycle(self) -> int: | ||||
|     def num_dp_flop_per_cycle_per_core(self) -> int: | ||||
|         proc_arch = self.architecture | ||||
|         simd_id = get_simd_id(proc_arch) | ||||
|         num_simd_per_core = 1 | ||||
|         dp_flops_per_cycle_per_core = -1 | ||||
| 
 | ||||
|             # from https://stackoverflow.com/questions/15655835/flops-per-cycle-for-sandy-bridge-and-haswell-sse2-avx-avx2 | ||||
|             # Intel Core 2 and Nehalem: | ||||
|             # | ||||
|             #     4 DP FLOPs/cycle: 2-wide SSE2 addition + 2-wide SSE2 multiplication | ||||
|             #     8 SP FLOPs/cycle: 4-wide SSE addition + 4-wide SSE multiplication | ||||
|             # | ||||
| 
 | ||||
|         if proc_arch in ['sandy bridge', 'ivy bridge']: | ||||
| 
 | ||||
|             # [https://stackoverflow.com/questions/15655835/flops-per-cycle-for-sandy-bridge-and-haswell-and-others-sse2-avx-avx2-avx] | ||||
|             # Intel Sandy Bridge/Ivy Bridge (AVX1): | ||||
| 
 | ||||
|             #     8 DP FLOPs/cycle: 4-wide AVX addition + 4-wide AVX multiplication | ||||
|             #     16 SP FLOPs/cycle: 8-wide AVX addition + 8-wide AVX multiplication | ||||
|             dp_flops_per_cycle_per_core = 8 | ||||
| 
 | ||||
|         if proc_arch in ['haswell', 'broadwell']: | ||||
|             # https://stackoverflow.com/questions/15655835/flops-per-cycle-for-sandy-bridge-and-haswell-and-others-sse2-avx-avx2-avx | ||||
|             # Intel Haswell/Broadwell/Skylake/Kaby Lake/Coffee/... (AVX+FMA3): | ||||
| 
 | ||||
|             #     16 DP FLOPs/cycle: two 4-wide FMA (fused multiply-add) instructions | ||||
|             #     32 SP FLOPs/cycle: two 8-wide FMA (fused multiply-add) instructions | ||||
|             #     (Using 256-bit vector instructions can reduce max turbo clock speed on some CPUs.) | ||||
|             dp_flops_per_cycle_per_core = 16 | ||||
| 
 | ||||
|         if proc_arch in ['skylake', 'cascadelake']: | ||||
|             dp_flops_per_cycle_per_core = 16 | ||||
|             # from https://en.wikipedia.org/wiki/List_of_Intel_Xeon_microprocessors : Xeon Platinum, Gold 61XX, and Gold 5122 have two AVX-512 FMA units per core; Xeon Gold 51XX (except 5122), Silver, and Bronze have a single AVX-512 FMA unit per core | ||||
|             if re.match('intel-xeon-gold-5122', self.uid): | ||||
|                 num_simd_per_core = 2 | ||||
|                 dp_flops_per_cycle_per_core = 32 | ||||
| 
 | ||||
|             # https://en.wikichip.org/wiki/intel/xeon_gold/5222 : 'Note that this is the only processor in the Xeon Gold 52xx series with two 512b FMA units.' | ||||
|             if re.match('intel-xeon-gold-5222', self.uid): | ||||
|                 num_simd_per_core = 2 | ||||
|                 dp_flops_per_cycle_per_core = 32 | ||||
| 
 | ||||
|             if re.match('intel-xeon-gold-61[0-9][0-9]', self.uid): | ||||
|                 num_simd_per_core = 2 | ||||
|                 dp_flops_per_cycle_per_core = 32 | ||||
|             if re.match('intel-xeon-gold-62[0-9][0-9]', self.uid): | ||||
|                 num_simd_per_core = 2 | ||||
|                 dp_flops_per_cycle_per_core = 32 | ||||
|             if re.match('intel-xeon-gold-63[0-9][0-9]', self.uid): | ||||
|                 num_simd_per_core = 2 | ||||
|         # from https://www.microway.com/knowledge-center-articles/detailed-specifications-of-the-amd-epyc-rome-cpus/: | ||||
|         # - Full support for 256-bit AVX2 instructions with two 256-bit FMA units per CPU core. The previous “Naples” architecture split 256-bit instructions into two separate 128-bit operations | ||||
|         # - Up to 16 double-precision FLOPS per cycle per core | ||||
|         # - Double-precision floating point multiplies complete in 3 cycles (down from 4) | ||||
|         # note : zen2 rome core has 2 256 bits fma units per core, which corresponds to avx2 technology according to https://stackoverflow.com/questions/15655835/flops-per-cycle-for-sandy-bridge-and-haswell-sse2-avx-avx2: | ||||
|                 dp_flops_per_cycle_per_core = 32 | ||||
|         # flops-per-cycle-for-sandy-bridge-and-haswell-sse2-avx-avx2: | ||||
|         # Intel Haswell/Broadwell/Skylake/Kaby Lake/Coffee/... (AVX+FMA3): | ||||
|         # - 16 DP FLOPs/cycle: two 4-wide FMA (fused multiply-add) instructions | ||||
|         # - 32 SP FLOPs/cycle: two 8-wide FMA (fused multiply-add) instructions | ||||
|  | @ -202,18 +232,41 @@ class Cpu(Item): | |||
|             # > AVX-512 instructions (up to 16 double-precision FLOPS per cycle per AVX-512 FMA unit) | ||||
|             # > Two AVX-512 FMA units per CPU core (available in all Ice Lake-SP CPU SKUs) | ||||
|             # https://www.intel.com/content/www/us/en/products/sku/215269/intel-xeon-silver-4314-processor-24m-cache-2-40-ghz/specifications.html shows that even xeon silver 4314 has 2 AVX 512 fma units | ||||
|             num_simd_per_core = 2 | ||||
|             dp_flops_per_cycle_per_core = 32 | ||||
| 
 | ||||
|         if proc_arch in ['sapphire rapids']: | ||||
|             num_simd_per_core = 2 | ||||
|             dp_flops_per_cycle_per_core = 32 | ||||
|             # cpus_may2023_v3.pdf | ||||
| 
 | ||||
|         if proc_arch == 'rome': | ||||
|             num_simd_per_core = 1 | ||||
|         if proc_arch == 'rome':  # zen2 | ||||
|             # from https://www.microway.com/knowledge-center-articles/detailed-specifications-of-the-amd-epyc-rome-cpus/: | ||||
|             # - Full support for 256-bit AVX2 instructions with two 256-bit FMA units per CPU core. The previous “Naples” architecture split 256-bit instructions into two separate 128-bit operations | ||||
|             # - Up to 16 double-precision FLOPS per cycle per core | ||||
|             # - Double-precision floating point multiplies complete in 3 cycles (down from 4) | ||||
|             # note : zen2 rome core has 2 256 bits fma units per core, which corresponds to avx2 technology according to https://stackoverflow.com/questions/15655835/ | ||||
|             # [https://stackoverflow.com/questions/15655835/flops-per-cycle-for-sandy-bridge-and-haswell-and-others-sse2-avx-avx2-avx] | ||||
|             # AMD Zen 2 and later: 2 FMA/MUL units and two ADD units on separate ports | ||||
|             #     24 DP FLOPs/cycle: 4-wide FMA + 4-wide ADD on 256-bit execution units | ||||
|             #     48 SP FLOPs/cycle: 8-wide FMA + 8-wide ADD | ||||
|             #     with only FMAs like for a matmul, 16 DP / 32 SP FLOPs/cycle using 256-bit instructions (or 512-bit on Zen 4 which has single-uop but double-pumped 512-bit instructions.) | ||||
|             # https://www.dell.com/support/kbdoc/fr-fr/000137696/amd-rome-is-it-for-real-architecture-and-initial-hpc-performance | ||||
|             # The Rome micro-architecture can retire 16 DP FLOP/cycle, double that of Naples which was 8 FLOPS/cycle | ||||
| 
 | ||||
|             dp_flops_per_cycle_per_core = 16 | ||||
| 
 | ||||
|         if proc_arch == 'milan':  # zen3 | ||||
|             # [https://www.nas.nasa.gov/hecc/support/kb/amd-milan-processors_688.html] | ||||
|             # > Each Milan core has two 256-bit Fused Multiply-Add (FMA) units and can deliver up to 16 double-precision floating point operations (flops) per cycle. Therefore, the peak double-precision flops per node is: 128 cores x 2.45 GHz x 16 = 5.02 teraflops (TF). | ||||
|             dp_flops_per_cycle_per_core = 16 | ||||
| 
 | ||||
|         if proc_arch in ['genoa', 'bergamo']:  # zen4 | ||||
|             # [/home/graffy/work/concho/cpus_may2023_v3.pdf]] | ||||
|             # AMD has two AVX-2 256 bit units, which can do one coupled AVX-512 FMA instruction, which puts the FLOPS per cycle to 16 | ||||
|             dp_flops_per_cycle_per_core = 16 | ||||
| 
 | ||||
|         dp_flops_per_cycle = num_simd_per_core * simd_id_to_dp_flops_per_cycle(simd_id) | ||||
|         # print(self.uid, dp_flops_per_cycle) | ||||
|         return dp_flops_per_cycle | ||||
|         assert dp_flops_per_cycle_per_core > 0, f'failed to get the number of dp floating operations per cycle per core of {proc_arch}' | ||||
|         return dp_flops_per_cycle_per_core | ||||
| 
 | ||||
|     @property | ||||
|     def num_ram_channels(self) -> int: | ||||
|  | @ -224,7 +277,10 @@ class Cpu(Item): | |||
|             'icelake': 8, | ||||
|             'sapphire rapids': 8, | ||||
|             'rome': 8, | ||||
|             'milan': 8 | ||||
|             'milan': 8, | ||||
|             'siena': 6, | ||||
|             'genoa': 12, | ||||
|             'bergamo': 12 | ||||
|         }[self.architecture] | ||||
| 
 | ||||
| 
 | ||||
|  | @ -248,39 +304,6 @@ def get_proc_arch_transistor_size(proc_id: CpuId) -> TransistorSize: | |||
|     }[get_proc_architecture(proc_id)] | ||||
| 
 | ||||
| 
 | ||||
| def simd_id_to_dp_flops_per_cycle(simd_id: SimdId) -> int: | ||||
|     """ | ||||
|     :param str simd_id: eg 'avx2' | ||||
| 
 | ||||
|     """ | ||||
|     # from https://stackoverflow.com/questions/15655835/flops-per-cycle-for-sandy-bridge-and-haswell-sse2-avx-avx2 | ||||
|     # Intel Core 2 and Nehalem: | ||||
|     # | ||||
|     #     4 DP FLOPs/cycle: 2-wide SSE2 addition + 2-wide SSE2 multiplication | ||||
|     #     8 SP FLOPs/cycle: 4-wide SSE addition + 4-wide SSE multiplication | ||||
|     # | ||||
|     # Intel Sandy Bridge/Ivy Bridge: | ||||
|     # | ||||
|     #     8 DP FLOPs/cycle: 4-wide AVX addition + 4-wide AVX multiplication | ||||
|     #     16 SP FLOPs/cycle: 8-wide AVX addition + 8-wide AVX multiplication | ||||
|     # | ||||
|     # Intel Haswell/Broadwell/Skylake/Kaby Lake: | ||||
|     # | ||||
|     #     16 DP FLOPs/cycle: two 4-wide FMA (fused multiply-add) instructions | ||||
|     #     32 SP FLOPs/cycle: two 8-wide FMA (fused multiply-add) instructions | ||||
| 
 | ||||
|     # https://www.dell.com/support/kbdoc/fr-fr/000137696/amd-rome-is-it-for-real-architecture-and-initial-hpc-performance | ||||
|     # The Rome micro-architecture can retire 16 DP FLOP/cycle, double that of Naples which was 8 FLOPS/cycle | ||||
| 
 | ||||
|     return { | ||||
|         'sse4.1': 4, | ||||
|         'sse4.2': 4, | ||||
|         'avx': 8, | ||||
|         'avx2': 16, | ||||
|         'avx-512': 16, | ||||
|     }[simd_id] | ||||
| 
 | ||||
| 
 | ||||
| def get_simd_id(proc_arch: CpuArchitecture) -> SimdId: | ||||
|     """ | ||||
|         :param str proc_arch: eg 'broadwell' | ||||
|  | @ -306,6 +329,9 @@ def get_simd_id(proc_arch: CpuArchitecture) -> SimdId: | |||
|         # - Double-precision floating point multiplies complete in 3 cycles (down from 4) | ||||
|         'rome': 'avx2', | ||||
|         'milan': 'avx2', | ||||
|         'siena': 'avx2', | ||||
|         'genoa': 'avx2', | ||||
|         'bergamo': 'avx2', | ||||
|     }[proc_arch] | ||||
| 
 | ||||
| 
 | ||||
|  | @ -481,7 +507,7 @@ class Config(): | |||
|         return power_consumption | ||||
| 
 | ||||
|     def get_flops(self) -> float: | ||||
|         # print('%d servers * %d cpu %s * %d cores @ %f (%d flops/cycle)' % (self.num_servers, self.num_cpu_per_server, str(self.cpu.uid), self.cpu.num_cores, self.cpu.clock, self.cpu.num_dp_flop_per_cycle)) | ||||
|         # print('%d servers * %d cpu %s * %d cores @ %f (%d flops/cycle)' % (self.num_servers, self.num_cpu_per_server, str(self.cpu.uid), self.cpu.num_cores, self.cpu.clock, self.cpu.num_dp_flop_per_cycle_per_core)) | ||||
|         dynamic_frequency_scaling = 1.0  # https://en.wikichip.org/wiki/intel/frequency_behavior | ||||
|         # https://www.nas.nasa.gov/hecc/support/kb/cascade-lake-processors_579.html | ||||
|         # The Intel Cascade Lake processor incorporated into the Aitken cluster is the 20-core Xeon Gold 6248 model. Its base clock speed is 2.5 GHz for non-AVX, 1.9 GHz for AVX2, and 1.6 GHz for AVX-512. | ||||
|  | @ -496,7 +522,7 @@ class Config(): | |||
|             elif self.cpu.architecture == 'saphhire rapids': | ||||
|                 dynamic_frequency_scaling = 1.0  # sapphire rapids seem to get closer to theoretical speed, see /home/graffy/work/concho/cpus_may2023_v3.pdf | ||||
|         cpu_clock_when_computing = self.cpu.clock * dynamic_frequency_scaling | ||||
|         flops = self.cpu.num_dp_flop_per_cycle * cpu_clock_when_computing * 1.e9 * self.cpu.num_cores * self.num_cpu_per_server * self.num_servers | ||||
|         flops = self.cpu.num_dp_flop_per_cycle_per_core * cpu_clock_when_computing * 1.e9 * self.cpu.num_cores * self.num_cpu_per_server * self.num_servers | ||||
|         return flops | ||||
| 
 | ||||
|     def _init_dimm_slots(self): | ||||
|  |  | |||
|  | @ -260,9 +260,16 @@ class HpeV2ConfiguratorParser(IHtmlConfiguratorParser): | |||
|         ''' | ||||
|         modules_element = root_element.xpath(self.get_xpath_filter('root_to_modules_element'))[0] | ||||
|         # print(modules_element) | ||||
|         module_label = self.get_module_label(module_id)  # eg ProcessorSection_AdditionalProcessorsChoice | ||||
|         print(f'module label: {module_label}') | ||||
|         module_root = modules_element.xpath(f".//div[@id='{module_label}']")[0] | ||||
|         if module_id == 'additional_cpus': | ||||
|             module_labels = ['ProcessorSection_AdditionalProcessorsChoice', 'ProcessorSection_ProcessorChoice'] | ||||
|         else: | ||||
|             module_labels = [self.get_module_label(module_id)] | ||||
|         module_root = None | ||||
|         for module_label in module_labels: | ||||
|             module_roots = modules_element.xpath(f".//div[@id='{module_label}']") | ||||
|             if len(module_roots) > 0: | ||||
|                 module_root = modules_element.xpath(f".//div[@id='{module_label}']")[0] | ||||
|                 break | ||||
|         return module_root | ||||
| 
 | ||||
|     def _parse_module_html_table(self, html_root: HtmlElement, module_id: str) -> pd.DataFrame: | ||||
|  | @ -285,10 +292,15 @@ class HpeV2ConfiguratorParser(IHtmlConfiguratorParser): | |||
|             label = row['description'] | ||||
|             cpu_price = parse_price(row['price']) | ||||
|             match = re.match(r'^ *Intel Xeon-(?P<cpu_class>Bronze|Silver|Gold|Platinum) (?P<cpu_number>[0-9][0-9][0-9][0-9][HNPQRSLUVY]?[+]?).*', label) | ||||
|             assert match, 'unhandled label : %s' % label | ||||
|             # print(match['cpu_class'], match['cpu_number']) | ||||
|             cpu_class = match['cpu_class'].lower() | ||||
|             cpu_id = "intel-xeon-%s-%s" % (cpu_class, match['cpu_number'].lower()) | ||||
|             if match: | ||||
|                 # print(match['cpu_class'], match['cpu_number']) | ||||
|                 cpu_class = match['cpu_class'].lower() | ||||
|                 cpu_id = "intel-xeon-%s-%s" % (cpu_class, match['cpu_number'].lower()) | ||||
|             else: | ||||
|                 # AMD EPYC 9174F 4.1GHz 16-core 320W Processor for HPE | ||||
|                 match = re.match(r'^ *AMD EPYC *(?P<cpu_number>[0-9][0-9][0-9][0-9][F]?) .*', label) | ||||
|                 assert match, 'unhandled label : %s' % label | ||||
|                 cpu_id = f"amd-epyc-{match['cpu_number'].lower()}" | ||||
|             cpu = Cpu(cpu_id) | ||||
|             option = Option(cpu, cpu_price) | ||||
|             for selected_item in range(Quantity(row['quantity']).num_selected): | ||||
|  | @ -328,7 +340,7 @@ class HpeV2ConfiguratorParser(IHtmlConfiguratorParser): | |||
|     @staticmethod | ||||
|     def _parse_base_config_info(html_root: HtmlElement) -> Tuple[str, Price]: | ||||
|         prod_titles_grp_el = html_root.xpath(r".//div[@class='prod-titles-grp']")[0] | ||||
|         assert prod_titles_grp_el | ||||
|         assert prod_titles_grp_el is not None | ||||
| 
 | ||||
|         #                         <div class="prod-titles-grp"> | ||||
|         #                             <span id="main_title" title="DL380 Gen11 (Cat2 Conf16)" class="product-title pull-left">DL380 Gen11 (Cat2 Conf16)</span> | ||||
|  | @ -336,8 +348,9 @@ class HpeV2ConfiguratorParser(IHtmlConfiguratorParser): | |||
|         #                         </div> | ||||
|         product_subtitle = prod_titles_grp_el.xpath(r".//span[@class='product_subtitle']")[0].text.replace('\n', '').replace('\t', '')  # eg HPE ProLiant DL380 Gen11 8SFF NC Configure-to-order Server | ||||
|         # print(product_subtitle) | ||||
|         match = re.match(r'^HPE ProLiant DL(?P<chassis_number>[3][68][05]) *Gen11 *8SFF *NC *Configure-to-order *Server$', product_subtitle) | ||||
|         assert match | ||||
|         #match = re.match(r'^HPE ProLiant DL(?P<chassis_number>[3][68][05]) *Gen11 *8SFF *NC *Configure-to-order *Server *$', product_subtitle) | ||||
|         match = re.match(r'^HPE ProLiant DL(?P<chassis_number>[3][68][05]) *Gen11 *8SFF.*$', product_subtitle) | ||||
|         assert match, f'unrecognized chassis description: "{product_subtitle}"' | ||||
|         chassis_number = match['chassis_number'] | ||||
|         # configurator.base_config = self._parse_base_config() | ||||
|         chassis_id = f"hpe-proliant-dl{chassis_number}-gen11" | ||||
|  |  | |||
|  | @ -1,5 +1,5 @@ | |||
| # -*- coding: utf-8 -*- | ||||
| from typing import List | ||||
| from typing import List, Optional | ||||
| from abc import abstractmethod | ||||
| import numpy | ||||
| # import pylab | ||||
|  | @ -11,8 +11,9 @@ import hashlib | |||
| # from string import ascii_lowercase | ||||
| # from concho.config import Configurator | ||||
| # from concho.config import Config | ||||
| from concho.config import Cpu, MemSize, Configurator | ||||
| from concho.config import Cpu, MemSize, Configurator, Config | ||||
| # from concho import dell | ||||
| from pathlib import Path | ||||
| 
 | ||||
| markerTypes = [',', '+', '.', '^', 'v', '<', '>', 'o', '*', '1', '2', '3', '4', '8', 's', 'p', 'h', 'H', 'x', 'X', 'D', 'd', '|', '_'] | ||||
| # for c in ascii_lowercase: | ||||
|  | @ -121,10 +122,11 @@ class ConfigFlopsPerEuro(ConfigAxisDef): | |||
|         return item_total_num_ops / itemTotalCost | ||||
| 
 | ||||
| 
 | ||||
| def plot_configs(configs, xaxis_def, yaxis_def, plot_title): | ||||
| def plot_configs(configs: List[Config], xaxis_def: ConfigAxisDef, yaxis_def: ConfigAxisDef, plot_title: str, figure_file_path: Optional[Path] = None): | ||||
|     """ | ||||
|     Args: | ||||
|         configs (list(Config)): the tist of configurations to plot | ||||
|         configs: the list of configurations to plot | ||||
|         figure_file_path: eg './figures/hpe_bpu11.pdf' if None, the figure is displayed on the screen instead of being saved in a file | ||||
|     """ | ||||
| 
 | ||||
|     def GHzToMHz(frequency): | ||||
|  | @ -143,8 +145,11 @@ def plot_configs(configs, xaxis_def, yaxis_def, plot_title): | |||
|             'cascadelake': 0.8, | ||||
|             'icelake': 0.9, | ||||
|             'sapphire rapids': 1.0, | ||||
|             'rome': 0.8, | ||||
|             'milan': 1.0, | ||||
|             'rome': 0.2, | ||||
|             'milan': 0.4, | ||||
|             'siena': 1.0, | ||||
|             'genoa': 1.0, | ||||
|             'bergamo': 1.0, | ||||
|         }[Cpu(proc_id).architecture] | ||||
|         #         if model == 'r620': | ||||
|         #             color = 'r' | ||||
|  | @ -174,7 +179,8 @@ def plot_configs(configs, xaxis_def, yaxis_def, plot_title): | |||
|             'hpe-proliant-dl360-gen10+': 0.55, | ||||
|             'hpe-proliant-dl385-gen10': 0.0, | ||||
|             'hpe-proliant-dl385-gen10+': 0.0, | ||||
|             'hpe-proliant-dl380-gen11': 0.1, | ||||
|             'hpe-proliant-dl365-gen11': 0.0, | ||||
|             'hpe-proliant-dl380-gen11': 0.6, | ||||
|         }[model] | ||||
|         value = 0.9 | ||||
|         return matplotlib.colors.hsv_to_rgb((hue, saturation, value)) | ||||
|  | @ -223,11 +229,13 @@ def plot_configs(configs, xaxis_def, yaxis_def, plot_title): | |||
|     plt.grid(visible=True, which='minor', color='b', linestyle='-', linewidth=0.2) | ||||
|     plt.legend(bbox_to_anchor=(1.1, 1.1), ncol=2) | ||||
|     plt.draw() | ||||
| 
 | ||||
|     plt.show() | ||||
|     if figure_file_path: | ||||
|         plt.savefig(figure_file_path) | ||||
|     else: | ||||
|         plt.show() | ||||
| 
 | ||||
| 
 | ||||
| def plot_configurators(configurators: List[Configurator], ram_per_core: MemSize, xaxis_def, yaxis_def, plot_title, config_filter=lambda config: True): | ||||
| def plot_configurators(configurators: List[Configurator], ram_per_core: MemSize, xaxis_def: ConfigAxisDef, yaxis_def: ConfigAxisDef, plot_title: str, config_filter=lambda config: True, figure_file_path: Optional[Path] = None): | ||||
|     configs = [] | ||||
|     for configurator in configurators: | ||||
|         for cpu in configurator.get_cpu_options(): | ||||
|  | @ -238,4 +246,4 @@ def plot_configurators(configurators: List[Configurator], ram_per_core: MemSize, | |||
|             if config_filter(config): | ||||
|                 configs.append(config) | ||||
| 
 | ||||
|     plot_configs(configs, xaxis_def=xaxis_def, yaxis_def=yaxis_def, plot_title=plot_title) | ||||
|     plot_configs(configs, xaxis_def=xaxis_def, yaxis_def=yaxis_def, plot_title=plot_title, figure_file_path=figure_file_path) | ||||
|  |  | |||
|  | @ -7,7 +7,7 @@ from concho.hpe import HpeConfiguratorParser, HpeCpuChoiceConfiguratorParser | |||
| from concho.hpev2 import HpeV2ConfiguratorParser | ||||
| from concho.procs_chooser import plot_configurators | ||||
| from concho.procs_chooser import ConfigPrice | ||||
| # from concho.procs_chooser import ConfigFlops | ||||
| from concho.procs_chooser import ConfigFlops | ||||
| from concho.procs_chooser import ConfigFlopsPerEuro | ||||
| 
 | ||||
| 
 | ||||
|  | @ -92,15 +92,16 @@ def test_ur1_presents_2023_configs(): | |||
| 
 | ||||
| def test_hpe_bpu11_configs(): | ||||
|     configurators = [ | ||||
|         # HtmlConfigurator('20210407 - Cat2 Conf4 PowerEdge R640 - Dell.html', DellConfiguratorParser2021()), | ||||
|         HtmlConfigurator(Path('catalogs/hpev2/20250314-cat2-conf16-hpe-dl380-gen11.html'), HpeV2ConfiguratorParser()), | ||||
|         HtmlConfigurator(Path('catalogs/hpev2/20250314-cat2-conf19-hpe-dl365-gen11.html'), HpeV2ConfiguratorParser()), | ||||
|     ] | ||||
| 
 | ||||
|     def config_filter(config): | ||||
|         return True  # config.get_price() < 40000.0 | ||||
| 
 | ||||
|     plot_configurators(configurators=configurators, ram_per_core=4.0e9, xaxis_def=ConfigPrice(), yaxis_def=ConfigFlopsPerEuro(), plot_title='physmol/ts credit 2023 configs', config_filter=config_filter) | ||||
|     plot_configurators(configurators=configurators, ram_per_core=4.0e9, xaxis_def=ConfigPrice(), yaxis_def=ConfigFlopsPerEuro(), plot_title='physmol/dbossion ais configs', config_filter=config_filter, figure_file_path='./hpe-2025-03-14.pdf') | ||||
| 
 | ||||
|     # plot_configurators(configurators=configurators, ram_per_core=4.0e9, xaxis_def=ConfigPrice(), yaxis_def=ConfigFlops(), plot_title='physmol/dbossion ais configs', config_filter=config_filter) | ||||
| 
 | ||||
| if __name__ == '__main__': | ||||
|     test_hpe_bpu11_configs() | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue