diff --git a/cbutil/likwid_parser.py b/cbutil/likwid_parser.py new file mode 100644 index 0000000000000000000000000000000000000000..6f3150a75f7d3f9ac8fa51e9d01738f498f2e112 --- /dev/null +++ b/cbutil/likwid_parser.py @@ -0,0 +1,71 @@ +from typing import List, Dict, Any +from cbutil.postprocessing.plain_text import json2dict +from cbutil.util import get_from_nested_dict + + +def get_stat_sub_dict(data: Dict[str, Any], performance_group: str) -> Dict[str, Any]: + """ + Given a dictionary of data and the performance group name, returns the sub-dictionary containing the metric STAT. + + Args: + data (Dict[str, Any]): A dictionary of data from a Likwid JSON file. + performance_group (str): The name of the performance group to extract the sub-dictionary from. + + Returns: + Dict[str, Any]: The sub-dictionary containing the metric STAT. + """ + + return get_from_nested_dict(data, [performance_group, performance_group, 'Metric STAT']) + + +def extract_metric_value(metric_stat: Dict[str, Any], keys: List[str], suffix: str) -> Dict[str, Any]: + """ + Given the metric STAT sub-dictionary, a list of keys, and a suffix string, returns a dictionary with the key-suffix + pairs from the metric STAT sub-dictionary. + + Args: + metric_stat (Dict[str, Any]): The sub-dictionary containing the metric STAT. + keys (List[str]): The list of keys to extract the key-suffix pairs from. + suffix (str): The suffix string to append to each key in the returned dictionary. + + Returns: + Dict[str, Any]: The dictionary containing the key-suffix pairs extracted from the metric STAT sub-dictionary. + """ + + return { + f'{key} {suffix}': get_from_nested_dict(metric_stat, [key, suffix]) + for key in keys + } + + +def parse_likwid_json(file: str, + performance_group: str, + *, + sum_keys: List[str], + avg_keys: List[str] = [], + min_keys: List[str] = [], + max_keys: List[str] = []) -> Dict[str, Any]: + """ + Given the path to a Likwid JSON file, the name of the performance group, and a set of metric keys, returns a + dictionary containing the extracted metric values. + + Args: + file (str): The path to the Likwid JSON file. + performance_group (str): The name of the performance group to extract the metric values from. + sum_keys (List[str]): The list of metric keys to extract the sum values for. + avg_keys (List[str], optional): The list of metric keys to extract the average values for. Defaults to []. + min_keys (List[str], optional): The list of metric keys to extract the minimum values for. Defaults to []. + max_keys (List[str], optional): The list of metric keys to extract the maximum values for. Defaults to []. + + Returns: + Dict[str, Any]: A dictionary containing the extracted metric values, with keys of the form "key suffix" (e.g. + "cycles Sum", "L3 cache hit ratio Avg", etc.). + """ + + parsed_data = {} + data = json2dict(file) + + metric_stat = get_stat_sub_dict(data, performance_group) + for keys, suffix in [(sum_keys, 'Sum'), (avg_keys, 'Avg'), (min_keys, 'Min'), (max_keys, 'Max')]: + parsed_data.update(extract_metric_value(metric_stat, keys, suffix)) + return parsed_data diff --git a/tests/likwid_MEM_DP_fe2ti216bddc_skylakesp2_pardiso_80_1_10_1e-8.json b/tests/likwid_MEM_DP_fe2ti216bddc_skylakesp2_pardiso_80_1_10_1e-8.json new file mode 100644 index 0000000000000000000000000000000000000000..51a491dd9050f9bce6d0f26219e84223acb960f0 --- /dev/null +++ b/tests/likwid_MEM_DP_fe2ti216bddc_skylakesp2_pardiso_80_1_10_1e-8.json @@ -0,0 +1,3743 @@ +{ + "Info": { + "CPU clock:": "2.400011932 GHz", + "CPU list": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79 + ], + "CPU name:": "Intel(R) Xeon(R) Gold 6148 CPU @ 2.40GHz", + "CPU type:": "Intel Skylake SP processor" + }, + "MEM_DP": { + "MEM_DP": { + "Metric": { + "AVX DP [MFLOP/s]": { + "Values": [ + 6294.4475, + 6294.4515, + 6294.4489, + 6294.4599, + 6294.4507, + 6294.4593, + 6294.4523, + 6294.4586, + 6294.4479, + 6294.444, + 6294.4433, + 6294.4473, + 6294.4552, + 6294.4529, + 6294.4403, + 6294.4399, + 6294.4403, + 6294.4459, + 6294.4552, + 6294.4419, + 6294.3761, + 6294.4255, + 6294.3498, + 6294.4501, + 6294.4379, + 6294.454, + 6294.2298, + 6294.1052, + 6294.4363, + 6294.4441, + 6294.4222, + 6294.4197, + 6294.4359, + 6294.4325, + 6294.4427, + 6294.1324, + 6294.4352, + 6294.421, + 6294.431, + 6294.4342, + 6294.4306, + 6294.4253, + 6294.4264, + 6294.4207, + 6294.4086, + 6294.4205, + 6294.431, + 6294.4346, + 6294.2078, + 6294.412, + 6294.4278, + 6294.4296, + 6294.43, + 6294.4021, + 4196.2928, + 6294.43, + 6294.4358, + 4196.2995, + 4196.3006, + 4196.3072, + 4196.2953, + 4196.3017, + 4196.306, + 4196.2988, + 4196.3054, + 4196.3032, + 4196.2965, + 4196.2962, + 4196.3129, + 4196.287, + 4196.1792, + 4196.3017, + 4196.2969, + 4196.3132, + 4196.2986, + 4196.3083, + 4196.2366, + 4196.3054, + 4196.2996, + 4196.1283 + ] + }, + "CPI": { + "Values": [ + 1.5256, + 1.5258, + 1.5284, + 1.5088, + 1.5098, + 1.5262, + 1.5273, + 1.5154, + 1.5155, + 1.5124, + 1.5315, + 1.5304, + 1.5247, + 1.5156, + 1.4884, + 1.5261, + 1.5291, + 1.487, + 1.4813, + 1.4864, + 1.4826, + 1.4848, + 1.4848, + 1.4819, + 1.4832, + 1.4819, + 1.484, + 1.4848, + 1.485, + 1.4847, + 1.4841, + 1.4882, + 1.4857, + 1.4835, + 1.4815, + 1.4814, + 1.4828, + 1.4837, + 1.4837, + 1.4856, + 1.5255, + 1.5253, + 1.5296, + 1.5111, + 1.5049, + 1.5246, + 1.5249, + 1.515, + 1.5158, + 1.5108, + 1.5315, + 1.5309, + 1.528, + 1.5155, + 2.0593, + 1.5243, + 1.529, + 2.0557, + 2.0567, + 2.0545, + 2.0661, + 2.0687, + 2.0688, + 2.0656, + 2.0624, + 2.0666, + 2.0665, + 2.0677, + 2.0665, + 2.0676, + 2.0648, + 2.0708, + 2.0669, + 2.0607, + 2.066, + 2.0551, + 2.0595, + 2.0675, + 2.0677, + 2.0666 + ] + }, + "Clock [MHz]": { + "Values": [ + 2183.6989, + 2183.7446, + 2183.7415, + 2183.7338, + 2183.6978, + 2183.7343, + 2183.7322, + 2183.6124, + 2183.6281, + 2183.6132, + 2183.7288, + 2183.6975, + 2183.7746, + 2183.637, + 2183.5437, + 2183.7442, + 2183.6926, + 2183.5274, + 2183.5998, + 2183.5279, + 2194.5357, + 2194.5027, + 2194.5043, + 2194.5154, + 2194.5216, + 2194.5771, + 2194.5102, + 2194.5107, + 2194.5086, + 2194.5124, + 2194.5138, + 2194.5291, + 2194.5042, + 2194.5319, + 2194.539, + 2194.551, + 2194.5201, + 2194.5104, + 2194.5076, + 2194.5142, + 2183.6565, + 2183.7678, + 2183.7443, + 2183.6486, + 2183.7539, + 2183.7524, + 2183.7671, + 2183.6182, + 2183.6169, + 2183.6683, + 2183.6912, + 2183.7013, + 2183.7146, + 2183.6177, + 2183.3316, + 2183.7946, + 2183.7134, + 2183.366, + 2183.3804, + 2183.334, + 2194.45, + 2194.459, + 2194.4562, + 2194.4531, + 2194.4988, + 2194.4623, + 2194.4738, + 2194.4571, + 2194.4613, + 2194.4686, + 2194.4837, + 2194.4594, + 2194.4534, + 2194.5124, + 2194.466, + 2194.5798, + 2194.5263, + 2194.4634, + 2194.4563, + 2194.4464 + ] + }, + "DP [MFLOP/s]": { + "Values": [ + 6372.2342, + 6372.1369, + 6372.3162, + 6372.087, + 6372.318, + 6372.2709, + 6372.2607, + 6372.2704, + 6372.1693, + 6372.2638, + 6372.1762, + 6372.2567, + 6372.1798, + 6372.2295, + 6372.1976, + 6372.1965, + 6372.2853, + 6372.2021, + 6372.1845, + 6372.3121, + 6372.0507, + 6372.3005, + 6372.1561, + 6372.3255, + 6372.1589, + 6372.1884, + 6372.0363, + 6371.9264, + 6372.2104, + 6372.2014, + 6372.1467, + 6372.1755, + 6372.1667, + 6372.1884, + 6372.164, + 6371.9988, + 6372.1103, + 6372.3101, + 6372.0993, + 6372.2211, + 6372.2692, + 6372.2104, + 6372.2353, + 6372.2421, + 6372.1808, + 6372.1447, + 6372.187, + 6372.1915, + 6371.9623, + 6372.1745, + 6372.158, + 6372.3102, + 6372.0981, + 6372.0796, + 4249.1094, + 6372.2171, + 6372.2379, + 4249.0852, + 4248.973, + 4249.0645, + 4249.08, + 4249.0344, + 4249.0369, + 4249.0789, + 4248.978, + 4249.0508, + 4248.9777, + 4249.051, + 4249.0973, + 4249.115, + 4248.8579, + 4249.0997, + 4249.0409, + 4248.9893, + 4249.0418, + 4248.9626, + 4248.9388, + 4249.0469, + 4248.9784, + 4248.8696 + ] + }, + "Energy DRAM [J]": { + "Values": [ + 8921.4749, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 7608.6727, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "Energy [J]": { + "Values": [ + 63747.3724, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 60482.8571, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "Memory bandwidth [MBytes/s]": { + "Values": [ + 76400.961, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 64679.8412, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "Memory data volume [GBytes]": { + "Values": [ + 32854.047, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 27813.7148, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "Memory read bandwidth [MBytes/s]": { + "Values": [ + 53953.9854, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 45775.5435, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "Memory read data volume [GBytes]": { + "Values": [ + 23201.3675, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 19684.4626, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "Memory write bandwidth [MBytes/s]": { + "Values": [ + 22446.9756, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 18904.2977, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "Memory write data volume [GBytes]": { + "Values": [ + 9652.6795, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 8129.2523, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "Operational intensity": { + "Values": [ + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0985, + 0.0985, + 0.0985, + 0.0985, + 0.0985, + 0.0985, + 0.0985, + 0.0985, + 0.0985, + 0.0985, + 0.0985, + 0.0985, + 0.0985, + 0.0985, + 0.0985, + 0.0985, + 0.0985, + 0.0985, + 0.0985, + 0.0985, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0834, + 0.0556, + 0.0834, + 0.0834, + 0.0556, + 0.0556, + 0.0556, + 0.0657, + 0.0657, + 0.0657, + 0.0657, + 0.0657, + 0.0657, + 0.0657, + 0.0657, + 0.0657, + 0.0657, + 0.0657, + 0.0657, + 0.0657, + 0.0657, + 0.0657, + 0.0657, + 0.0657, + 0.0657, + 0.0657, + 0.0657 + ] + }, + "Packed [MUOPS/s]": { + "Values": [ + 793.0792, + 793.0797, + 793.0794, + 793.0808, + 793.0796, + 793.0807, + 793.0798, + 793.0806, + 793.0793, + 793.0788, + 793.0787, + 793.0792, + 793.0802, + 793.0799, + 793.0783, + 793.0783, + 793.0784, + 793.079, + 793.0802, + 793.0785, + 793.0702, + 793.0764, + 793.067, + 793.0796, + 793.078, + 793.08, + 793.052, + 793.0364, + 793.0778, + 793.0788, + 793.0761, + 793.0757, + 793.0777, + 793.0773, + 793.0786, + 793.0398, + 793.0777, + 793.0759, + 793.0771, + 793.0775, + 793.0771, + 793.0764, + 793.0765, + 793.0758, + 793.0738, + 793.0758, + 793.0771, + 793.0776, + 793.0492, + 793.0747, + 793.0768, + 793.077, + 793.077, + 793.0735, + 528.7188, + 793.077, + 793.0777, + 528.7197, + 528.7198, + 528.7207, + 528.7192, + 528.7199, + 528.7205, + 528.7196, + 528.7204, + 528.7178, + 528.7193, + 528.7192, + 528.7213, + 528.7181, + 528.7047, + 528.72, + 528.7194, + 528.7214, + 528.7196, + 528.7208, + 528.7118, + 528.7204, + 528.7197, + 528.6983 + ] + }, + "Power DRAM [W]": { + "Values": [ + 20.7466, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 17.6937, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "Power [W]": { + "Values": [ + 148.2423, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 140.6508, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "Runtime (RDTSC) [s]": { + "Values": [ + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214, + 430.0214 + ] + }, + "Runtime unhalted [s]": { + "Values": [ + 358.8326, + 359.3976, + 359.7016, + 357.4106, + 357.7448, + 359.5258, + 359.6567, + 358.3177, + 358.3471, + 357.9035, + 360.1207, + 359.8451, + 359.4191, + 358.2412, + 355.1831, + 359.5566, + 359.8059, + 354.9423, + 354.3414, + 354.8341, + 355.8208, + 356.1203, + 356.1878, + 355.6707, + 355.8291, + 355.6854, + 356.1163, + 355.9625, + 355.9873, + 356.0339, + 355.9654, + 356.8522, + 356.1329, + 356.091, + 355.6558, + 355.8171, + 355.9924, + 356.0267, + 356.0031, + 356.3191, + 359.3056, + 359.4542, + 359.9046, + 357.8019, + 356.8895, + 359.269, + 359.2722, + 358.2041, + 358.3219, + 357.6552, + 360.0836, + 360.0028, + 359.9117, + 358.1622, + 349.7955, + 359.2547, + 359.7648, + 349.4283, + 349.7265, + 349.1676, + 352.2134, + 352.3598, + 352.4733, + 352.3934, + 351.9106, + 352.2732, + 352.2417, + 352.3407, + 352.1968, + 352.1921, + 352.0027, + 352.8366, + 352.3401, + 351.7294, + 352.3517, + 351.5053, + 352.0827, + 352.3224, + 352.2698, + 352.0619 + ] + }, + "Scalar [MUOPS/s]": { + "Values": [ + 65.2762, + 65.175, + 65.357, + 65.1168, + 65.357, + 65.3012, + 65.298, + 65.3013, + 65.2109, + 65.3094, + 65.2224, + 65.299, + 65.2142, + 65.2662, + 65.2469, + 65.2462, + 65.3346, + 65.246, + 65.2189, + 65.36, + 65.1644, + 65.3647, + 65.2961, + 65.365, + 65.2107, + 65.2242, + 65.2961, + 65.3109, + 65.2638, + 65.247, + 65.2142, + 65.2456, + 65.2205, + 65.2457, + 65.211, + 65.3561, + 65.1648, + 65.3789, + 65.1581, + 65.2767, + 65.3284, + 65.2747, + 65.2986, + 65.3112, + 65.2628, + 65.2139, + 65.2457, + 65.2466, + 65.2442, + 65.2523, + 65.2199, + 65.3703, + 65.1578, + 65.1671, + 44.4763, + 65.2768, + 65.2919, + 44.4454, + 44.3321, + 44.417, + 44.4444, + 44.3925, + 44.3906, + 44.4398, + 44.3322, + 44.412, + 44.3409, + 44.4145, + 44.4441, + 44.4877, + 44.3384, + 44.4576, + 44.4036, + 44.3358, + 44.4028, + 44.3139, + 44.3618, + 44.4012, + 44.3385, + 44.401 + ] + } + }, + "Metric STAT": { + "AVX DP [MFLOP/s] STAT": { + "Avg": 5664.9768, + "Max": 6294.4599, + "Min": 4196.1283, + "Sum": 453198.1421 + }, + "CPI STAT": { + "Avg": 1.6732, + "Max": 2.0708, + "Min": 1.4813, + "Sum": 133.8586 + }, + "Clock [MHz] STAT": { + "Avg": 2189.0745, + "Max": 2194.5798, + "Min": 2183.3316, + "Sum": 175125.9564 + }, + "DP [MFLOP/s] STAT": { + "Avg": 5735.2392, + "Max": 6372.3255, + "Min": 4248.8579, + "Sum": 458819.1399 + }, + "Energy DRAM [J] STAT": { + "Avg": 206.6268, + "Max": 8921.4749, + "Min": 0.0, + "Sum": 16530.1476 + }, + "Energy [J] STAT": { + "Avg": 1552.8779, + "Max": 63747.3724, + "Min": 0.0, + "Sum": 124230.2295 + }, + "Memory bandwidth [MBytes/s] STAT": { + "Avg": 1763.51, + "Max": 76400.961, + "Min": 0.0, + "Sum": 141080.8022 + }, + "Memory data volume [GBytes] STAT": { + "Avg": 758.347, + "Max": 32854.047, + "Min": 0.0, + "Sum": 60667.7618 + }, + "Memory read bandwidth [MBytes/s] STAT": { + "Avg": 1246.6191, + "Max": 53953.9854, + "Min": 0.0, + "Sum": 99729.5289 + }, + "Memory read data volume [GBytes] STAT": { + "Avg": 536.0729, + "Max": 23201.3675, + "Min": 0.0, + "Sum": 42885.8301 + }, + "Memory write bandwidth [MBytes/s] STAT": { + "Avg": 516.8909, + "Max": 22446.9756, + "Min": 0.0, + "Sum": 41351.2733 + }, + "Memory write data volume [GBytes] STAT": { + "Avg": 222.2741, + "Max": 9652.6795, + "Min": 0.0, + "Sum": 17781.9318 + }, + "Operational intensity STAT": { + "Avg": 0.0814, + "Max": 0.0985, + "Min": 0.0556, + "Sum": 6.5088 + }, + "Packed [MUOPS/s] STAT": { + "Avg": 713.768, + "Max": 793.0808, + "Min": 528.6983, + "Sum": 57101.4416 + }, + "Power DRAM [W] STAT": { + "Avg": 0.4805, + "Max": 20.7466, + "Min": 0.0, + "Sum": 38.4403 + }, + "Power [W] STAT": { + "Avg": 3.6112, + "Max": 148.2423, + "Min": 0.0, + "Sum": 288.8931 + }, + "Runtime (RDTSC) [s] STAT": { + "Avg": 430.0214, + "Max": 430.0214, + "Min": 430.0214, + "Sum": 34401.712 + }, + "Runtime unhalted [s] STAT": { + "Avg": 355.8609, + "Max": 360.1207, + "Min": 349.1676, + "Sum": 28468.8708 + }, + "Scalar [MUOPS/s] STAT": { + "Avg": 59.0032, + "Max": 65.3789, + "Min": 44.3139, + "Sum": 4720.258 + } + }, + "Raw": { + "FIXC0": { + "Event": "INSTR_RETIRED_ANY", + "Values": [ + 564515586794.0, + 565297464361.0, + 564817386370.0, + 568510993691.0, + 568691160845.0, + 565351235772.0, + 565185079717.0, + 567474138203.0, + 567499626865.0, + 567968348849.0, + 564354357608.0, + 564335145844.0, + 565750226430.0, + 567276370139.0, + 572737468568.0, + 565455560641.0, + 564720485079.0, + 572868961018.0, + 574090821880.0, + 572933362120.0, + 576010949416.0, + 575645633326.0, + 575721869061.0, + 576039595957.0, + 575774322865.0, + 576060235103.0, + 575933501401.0, + 575379704294.0, + 575353570217.0, + 575530006489.0, + 575650351063.0, + 575503098061.0, + 575297431205.0, + 576071164774.0, + 576164082226.0, + 576454374105.0, + 576182913641.0, + 575901728597.0, + 575860577182.0, + 575643082050.0, + 565288972706.0, + 565578537722.0, + 564691993344.0, + 568280511472.0, + 569168012142.0, + 565548365136.0, + 565438941706.0, + 567445725422.0, + 567332607699.0, + 568162638414.0, + 564277397166.0, + 564396458621.0, + 565291056212.0, + 567197964457.0, + 407678986166.0, + 565628872974.0, + 564692930151.0, + 407957790919.0, + 408104910156.0, + 407893056211.0, + 409127830854.0, + 408788119326.0, + 408909422156.0, + 409441046616.0, + 409526323274.0, + 409108597452.0, + 409099062081.0, + 408971898016.0, + 409037207003.0, + 408816939510.0, + 409144502170.0, + 408924803251.0, + 409123051753.0, + 409639867372.0, + 409312940348.0, + 410497953515.0, + 410302650375.0, + 408978258003.0, + 408886209813.0, + 408856397020.0 + ] + }, + "FIXC1": { + "Event": "CPU_CLK_UNHALTED_CORE", + "Values": [ + 861202511994.0, + 862558469592.0, + 863288213508.0, + 857789628928.0, + 858591721854.0, + 862866248028.0, + 863180303481.0, + 859966780646.0, + 860037353099.0, + 858972727327.0, + 864294053832.0, + 863632633474.0, + 862610132091.0, + 859783199227.0, + 852443683359.0, + 862940244295.0, + 863538353384.0, + 851865772071.0, + 850423617390.0, + 851606178497.0, + 853974142014.0, + 854692948364.0, + 854855023768.0, + 853613830790.0, + 853993977154.0, + 853649287684.0, + 854683437593.0, + 854314170727.0, + 854373856603.0, + 854485503222.0, + 854321286316.0, + 856449541909.0, + 854723307515.0, + 854622595899.0, + 853578118672.0, + 853965302179.0, + 854386041884.0, + 854468283009.0, + 854411575353.0, + 855170102558.0, + 862337803621.0, + 862694255299.0, + 863775266489.0, + 858728852788.0, + 856539109383.0, + 862249998961.0, + 862257574107.0, + 859694001861.0, + 859976921460.0, + 858376833785.0, + 864205042798.0, + 864011020287.0, + 863792280496.0, + 859593570884.0, + 839513267840.0, + 862215577489.0, + 863439924507.0, + 838632187138.0, + 839347816128.0, + 838006454117.0, + 845316386631.0, + 845667643055.0, + 845940165159.0, + 845748291613.0, + 844589538538.0, + 845459844516.0, + 845384268007.0, + 845621807442.0, + 845276417051.0, + 845265208217.0, + 844810733322.0, + 846811961118.0, + 845620495149.0, + 844154710982.0, + 845648301925.0, + 843616983584.0, + 845002701245.0, + 845577908396.0, + 845451728171.0, + 844952870937.0 + ] + }, + "FIXC2": { + "Event": "CPU_CLK_UNHALTED_REF", + "Values": [ + 946511579712.0, + 947982040896.0, + 948785402016.0, + 942745555200.0, + 943642655328.0, + 948324735744.0, + 948670818816.0, + 945190870752.0, + 945261637536.0, + 944097954624.0, + 949896377280.0, + 949183021248.0, + 948025766880.0, + 944978473344.0, + 936951731424.0, + 948401785344.0, + 949081525728.0, + 936323520384.0, + 934707377280.0, + 936037965696.0, + 933932459904.0, + 934732628832.0, + 934909189152.0, + 933547061664.0, + 933960158208.0, + 933559563264.0, + 934719030528.0, + 934314969216.0, + 934381142976.0, + 934501618272.0, + 934321417632.0, + 936642450432.0, + 934765195200.0, + 934643270304.0, + 933497955456.0, + 933916303584.0, + 934389563136.0, + 934483623936.0, + 934422814368.0, + 935249577216.0, + 947777736672.0, + 948121168224.0, + 949319474496.0, + 943814617440.0, + 941362517568.0, + 947639617344.0, + 947641545408.0, + 944888547840.0, + 945200069280.0, + 943419210240.0, + 949814901312.0, + 949597246368.0, + 949351075488.0, + 944778405216.0, + 922829071968.0, + 947583473856.0, + 948964338624.0, + 921846014208.0, + 922626560832.0, + 921171691776.0, + 924500156736.0, + 924880548960.0, + 925179779424.0, + 924971246208.0, + 923684700192.0, + 924651900288.0, + 924564403008.0, + 924831231360.0, + 924451683168.0, + 924436370400.0, + 923932974528.0, + 926131884480.0, + 924831334176.0, + 923203419840.0, + 924856456224.0, + 922587000192.0, + 924124975008.0, + 924780538464.0, + 924645561504.0, + 924104113536.0 + ] + }, + "MBOX0C0": { + "Event": "CAS_COUNT_RD", + "Values": [ + 62887188638.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 51198676660.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "MBOX0C1": { + "Event": "CAS_COUNT_WR", + "Values": [ + 26291392242.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 21110253878.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "MBOX1C0": { + "Event": "CAS_COUNT_RD", + "Values": [ + 62878681822.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 51200438725.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "MBOX1C1": { + "Event": "CAS_COUNT_WR", + "Values": [ + 26290784544.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 21114029900.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "MBOX2C0": { + "Event": "CAS_COUNT_RD", + "Values": [ + 62894450991.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 51194796575.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "MBOX2C1": { + "Event": "CAS_COUNT_WR", + "Values": [ + 26299254594.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 21111447265.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "MBOX3C0": { + "Event": "CAS_COUNT_RD", + "Values": [ + 57953584729.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 51322266381.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "MBOX3C1": { + "Event": "CAS_COUNT_WR", + "Values": [ + 23973211958.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 21220484710.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "MBOX4C0": { + "Event": "CAS_COUNT_RD", + "Values": [ + 57962180688.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 51302005985.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "MBOX4C1": { + "Event": "CAS_COUNT_WR", + "Values": [ + 23995567440.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 21207090457.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "MBOX5C0": { + "Event": "CAS_COUNT_RD", + "Values": [ + 57945280058.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 51351543537.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "MBOX5C1": { + "Event": "CAS_COUNT_WR", + "Values": [ + 23972907099.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 21256260355.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "PMC0": { + "Event": "FP_ARITH_INST_RETIRED_128B_PACKED_DOUBLE", + "Values": [ + 2689867930.0, + 2689858979.0, + 2689862142.0, + 2689855663.0, + 2689857083.0, + 2689860160.0, + 2689870235.0, + 2689870744.0, + 2689871142.0, + 2689870744.0, + 2689873319.0, + 2689868271.0, + 2689867290.0, + 2689870844.0, + 2689856091.0, + 2689873319.0, + 2689871387.0, + 2689832560.0, + 2689863497.0, + 2689832223.0, + 2689827451.0, + 2689841243.0, + 2689843389.0, + 2689860784.0, + 2689856919.0, + 2689843262.0, + 2689856819.0, + 2689845367.0, + 2689843830.0, + 2689865651.0, + 2689862601.0, + 2689837776.0, + 2689832323.0, + 2689841951.0, + 2689854616.0, + 2689848910.0, + 2689852554.0, + 2689836055.0, + 2689842414.0, + 2689846740.0, + 2689842479.0, + 2689846730.0, + 2689841918.0, + 2689846863.0, + 2689637497.0, + 2689843835.0, + 2689847469.0, + 2689843194.0, + 2689855974.0, + 2689838324.0, + 2689856819.0, + 2689857212.0, + 2689835225.0, + 2689856647.0, + 1793251782.0, + 2689847107.0, + 2689842045.0, + 1793255715.0, + 1793255458.0, + 1793267051.0, + 1793262611.0, + 1793247516.0, + 1793258683.0, + 1793256895.0, + 1793268660.0, + 1792249734.0, + 1793262721.0, + 1793242948.0, + 1793254211.0, + 1793262867.0, + 1793267394.0, + 1793269379.0, + 1793261926.0, + 1793266499.0, + 1793259763.0, + 1793267665.0, + 1793270955.0, + 1793248878.0, + 1793261459.0, + 1793260955.0 + ] + }, + "PMC1": { + "Event": "FP_ARITH_INST_RETIRED_SCALAR_DOUBLE", + "Values": [ + 28070168608.0, + 28026660190.0, + 28104914899.0, + 28001595814.0, + 28104895823.0, + 28080915104.0, + 28079539240.0, + 28080965346.0, + 28042102147.0, + 28084443027.0, + 28047040247.0, + 28079982483.0, + 28043512590.0, + 28065862759.0, + 28057567846.0, + 28057242219.0, + 28095263608.0, + 28057161206.0, + 28045528714.0, + 28106177097.0, + 28022083978.0, + 28108223194.0, + 28078709947.0, + 28108364856.0, + 28041982999.0, + 28047786486.0, + 28078725827.0, + 28085091051.0, + 28064832371.0, + 28057597137.0, + 28043500527.0, + 28056983790.0, + 28046227087.0, + 28057038075.0, + 28042110076.0, + 28104511768.0, + 28022244658.0, + 28114336804.0, + 28019365433.0, + 28070374966.0, + 28092598923.0, + 28069536320.0, + 28079800993.0, + 28085193110.0, + 28064416648.0, + 28043380659.0, + 28057057929.0, + 28057447540.0, + 28056403016.0, + 28059873087.0, + 28045930879.0, + 28110633475.0, + 28019241601.0, + 28023249877.0, + 19125773960.0, + 28070399019.0, + 28076894908.0, + 19112471631.0, + 19063751102.0, + 19100242328.0, + 19112029542.0, + 19089707944.0, + 19088887612.0, + 19110070313.0, + 19063792532.0, + 19098096269.0, + 19067514517.0, + 19099203266.0, + 19111927806.0, + 19130657036.0, + 19066439840.0, + 19117730484.0, + 19094501697.0, + 19065327698.0, + 19094143218.0, + 19055917761.0, + 19076507825.0, + 19093459967.0, + 19066507449.0, + 19093367973.0 + ] + }, + "PMC2": { + "Event": "FP_ARITH_INST_RETIRED_256B_PACKED_DOUBLE", + "Values": [ + 15574842.0, + 15574802.0, + 15574802.0, + 15574751.0, + 15574798.0, + 15574778.0, + 15574802.0, + 15574802.0, + 15574802.0, + 15574802.0, + 15574802.0, + 15574802.0, + 15574802.0, + 15574802.0, + 15574802.0, + 15574802.0, + 15574802.0, + 15574802.0, + 15574758.0, + 15574802.0, + 15574802.0, + 15574802.0, + 15574802.0, + 15574802.0, + 15574706.0, + 15574622.0, + 15574802.0, + 15574802.0, + 15574890.0, + 15574756.0, + 15574802.0, + 15574647.0, + 15574802.0, + 15574802.0, + 15574298.0, + 15574676.0, + 15574710.0, + 15574802.0, + 15574801.0, + 15574802.0, + 15574802.0, + 15574802.0, + 15574802.0, + 15574802.0, + 15570255.0, + 15574802.0, + 15574792.0, + 15574802.0, + 15574802.0, + 15574658.0, + 15574610.0, + 15574802.0, + 15574690.0, + 15574768.0, + 10384238.0, + 15574610.0, + 15574802.0, + 10384142.0, + 10384238.0, + 10383828.0, + 10384238.0, + 10384238.0, + 10384238.0, + 10384238.0, + 10384057.0, + 10384118.0, + 10384225.0, + 10384238.0, + 10384238.0, + 10384022.0, + 10384111.0, + 10384196.0, + 10384238.0, + 10383962.0, + 10384238.0, + 10383940.0, + 10384130.0, + 10384238.0, + 10384069.0, + 10383856.0 + ] + }, + "PMC3": { + "Event": "FP_ARITH_INST_RETIRED_512B_PACKED_DOUBLE", + "Values": [ + 338335593475.0, + 338335807821.0, + 338335664133.0, + 338336255962.0, + 338335761296.0, + 338336227100.0, + 338335847702.0, + 338336189265.0, + 338335613208.0, + 338335404170.0, + 338335367626.0, + 338335578792.0, + 338336006833.0, + 338335882628.0, + 338335206353.0, + 338335182538.0, + 338335206284.0, + 338335504442.0, + 338336007767.0, + 338335290092.0, + 338331750742.0, + 338334410092.0, + 338330337686.0, + 338335731760.0, + 338335074310.0, + 338335940543.0, + 338323889562.0, + 338317190629.0, + 338334989145.0, + 338335406168.0, + 338334229946.0, + 338334096393.0, + 338334969078.0, + 338334782884.0, + 338335332996.0, + 338318655978.0, + 338334930358.0, + 338334165251.0, + 338334704377.0, + 338334873773.0, + 338334682179.0, + 338334399483.0, + 338334459065.0, + 338334148556.0, + 338333504263.0, + 338334137728.0, + 338334705266.0, + 338334898651.0, + 338322704276.0, + 338333681758.0, + 338334532697.0, + 338334626530.0, + 338334652866.0, + 338333153195.0, + 225556763132.0, + 338334652801.0, + 338334963014.0, + 225557124832.0, + 225557183700.0, + 225557536543.0, + 225556898251.0, + 225557240823.0, + 225557474614.0, + 225557083645.0, + 225557440840.0, + 225557323639.0, + 225556961355.0, + 225556944359.0, + 225557842867.0, + 225556451306.0, + 225550656028.0, + 225557242459.0, + 225556985159.0, + 225557860209.0, + 225557077169.0, + 225557596852.0, + 225553744357.0, + 225557439753.0, + 225557126405.0, + 225547922804.0 + ] + }, + "PWR0": { + "Event": "PWR_PKG_ENERGY", + "Values": [ + 63747.3724, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 60482.8571, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + }, + "PWR3": { + "Event": "PWR_DRAM_ENERGY", + "Values": [ + 8921.4749, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 7608.6727, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0, + 0.0 + ] + } + }, + "Raw STAT": { + "FIXC0": { + "Avg": 521757000000.0, + "Event": "INSTR_RETIRED_ANY STAT", + "Max": 576454374105.0, + "Min": 407678986166.0, + "Sum": 41740560780531.0 + }, + "FIXC1": { + "Avg": 854070400000.0, + "Event": "CPU_CLK_UNHALTED_CORE STAT", + "Max": 864294053832.0, + "Min": 838006454117.0, + "Sum": 68325629883786.0 + }, + "FIXC2": { + "Avg": 936384900000.0, + "Event": "CPU_CLK_UNHALTED_REF STAT", + "Max": 949896377280.0, + "Min": 921171691776.0, + "Sum": 74910788350368.0 + }, + "MBOX0C0": { + "Avg": 1426073000.0, + "Event": "CAS_COUNT_RD STAT", + "Max": 62887188638.0, + "Min": 0.0, + "Sum": 114085865298.0 + }, + "MBOX0C1": { + "Avg": 592520600.0, + "Event": "CAS_COUNT_WR STAT", + "Max": 26291392242.0, + "Min": 0.0, + "Sum": 47401646120.0 + }, + "MBOX1C0": { + "Avg": 1425989000.0, + "Event": "CAS_COUNT_RD STAT", + "Max": 62878681822.0, + "Min": 0.0, + "Sum": 114079120547.0 + }, + "MBOX1C1": { + "Avg": 592560200.0, + "Event": "CAS_COUNT_WR STAT", + "Max": 26290784544.0, + "Min": 0.0, + "Sum": 47404814444.0 + }, + "MBOX2C0": { + "Avg": 1426116000.0, + "Event": "CAS_COUNT_RD STAT", + "Max": 62894450991.0, + "Min": 0.0, + "Sum": 114089247566.0 + }, + "MBOX2C1": { + "Avg": 592633800.0, + "Event": "CAS_COUNT_WR STAT", + "Max": 26299254594.0, + "Min": 0.0, + "Sum": 47410701859.0 + }, + "MBOX3C0": { + "Avg": 1365948000.0, + "Event": "CAS_COUNT_RD STAT", + "Max": 57953584729.0, + "Min": 0.0, + "Sum": 109275851110.0 + }, + "MBOX3C1": { + "Avg": 564921200.0, + "Event": "CAS_COUNT_WR STAT", + "Max": 23973211958.0, + "Min": 0.0, + "Sum": 45193696668.0 + }, + "MBOX4C0": { + "Avg": 1365802000.0, + "Event": "CAS_COUNT_RD STAT", + "Max": 57962180688.0, + "Min": 0.0, + "Sum": 109264186673.0 + }, + "MBOX4C1": { + "Avg": 565033200.0, + "Event": "CAS_COUNT_WR STAT", + "Max": 23995567440.0, + "Min": 0.0, + "Sum": 45202657897.0 + }, + "MBOX5C0": { + "Avg": 1366210000.0, + "Event": "CAS_COUNT_RD STAT", + "Max": 57945280058.0, + "Min": 0.0, + "Sum": 109296823595.0 + }, + "MBOX5C1": { + "Avg": 565364600.0, + "Event": "CAS_COUNT_WR STAT", + "Max": 23972907099.0, + "Min": 0.0, + "Sum": 45229167454.0 + }, + "PMC0": { + "Avg": 2420860000.0, + "Event": "FP_ARITH_INST_RETIRED_128B_PACKED_DOUBLE STAT", + "Max": 2689873319.0, + "Min": 1792249734.0, + "Sum": 193668765341.0 + }, + "PMC1": { + "Avg": 25372650000.0, + "Event": "FP_ARITH_INST_RETIRED_SCALAR_DOUBLE STAT", + "Max": 28114336804.0, + "Min": 19055917761.0, + "Sum": 2029811717751.0 + }, + "PMC2": { + "Avg": 14017522.0, + "Event": "FP_ARITH_INST_RETIRED_256B_PACKED_DOUBLE STAT", + "Max": 15574890.0, + "Min": 10383828.0, + "Sum": 1121401760.0 + }, + "PMC3": { + "Avg": 304500600000.0, + "Event": "FP_ARITH_INST_RETIRED_512B_PACKED_DOUBLE STAT", + "Max": 338336255962.0, + "Min": 225547922804.0, + "Sum": 24360050882587.0 + }, + "PWR0": { + "Avg": 1552.8779, + "Event": "PWR_PKG_ENERGY STAT", + "Max": 63747.3724, + "Min": 0.0, + "Sum": 124230.2295 + }, + "PWR3": { + "Avg": 206.6268, + "Event": "PWR_DRAM_ENERGY STAT", + "Max": 8921.4749, + "Min": 0.0, + "Sum": 16530.1476 + } + } + } + } +} diff --git a/tests/test_likwid_parser.py b/tests/test_likwid_parser.py new file mode 100644 index 0000000000000000000000000000000000000000..9f8ae432683d32d1dd3433e96deaa9e06e48056d --- /dev/null +++ b/tests/test_likwid_parser.py @@ -0,0 +1,101 @@ +import json +import tempfile +import os +import pytest + +from cbutil.likwid_parser import parse_likwid_json + + +def test_parse_likwid_json(): + # create temporary file with sample JSON data + with tempfile.NamedTemporaryFile(mode='w', delete=False) as tmp_file: + data = { + "Performance group": { + "Performance group": + { + "Metric STAT": { + "metric1": { + "Sum": 10, + "Avg": 5, + "Min": 2, + "Max": 8 + }, + "metric2": { + "Sum": 20, + "Avg": 10, + "Min": 5, + "Max": 15 + } + } + }} + } + json.dump(data, tmp_file) + tmp_file.flush() + + # test case 1: all keys specified + expected_output = { + "metric1 Sum": 10, + "metric2 Sum": 20, + "metric1 Avg": 5, + "metric2 Avg": 10, + "metric1 Min": 2, + "metric2 Min": 5, + "metric1 Max": 8, + "metric2 Max": 15 + } + assert parse_likwid_json(tmp_file.name, + "Performance group", + sum_keys=["metric1", "metric2"], + avg_keys=["metric1", "metric2"], + min_keys=["metric1", "metric2"], + max_keys=["metric1", "metric2"]) == expected_output + + # test case 2: only sum keys specified + expected_output = { + "metric1 Sum": 10, + "metric2 Sum": 20 + } + assert parse_likwid_json(tmp_file.name, + "Performance group", + sum_keys=["metric1", "metric2"]) == expected_output + + # cleanup temporary file + os.unlink(tmp_file.name) + + +def test_parse_likwid_json_fail(): + with pytest.raises(FileNotFoundError): + parse_likwid_json("invalid_file.json", "Performance group", sum_keys=["metric1"]) + + +def test_parse_likwid_json_real_data(): + test_data = "tests/likwid_MEM_DP_fe2ti216bddc_skylakesp2_pardiso_80_1_10_1e-8.json" + sum_keys = ['AVX DP [MFLOP/s] STAT', + 'CPI STAT', + 'DP [MFLOP/s] STAT', + 'Energy DRAM [J] STAT', + 'Energy [J] STAT', + 'Memory bandwidth [MBytes/s] STAT', + 'Memory data volume [GBytes] STAT', + 'Memory read bandwidth [MBytes/s] STAT', + 'Memory read data volume [GBytes] STAT', + 'Memory write bandwidth [MBytes/s] STAT', + 'Memory write data volume [GBytes] STAT', + 'Operational intensity STAT', + 'Packed [MUOPS/s] STAT', + 'Power DRAM [W] STAT', + 'Power [W] STAT', + 'Scalar [MUOPS/s] STAT'] + avg_keys = ['Runtime (RDTSC) [s] STAT', + 'Clock [MHz] STAT', + 'DP [MFLOP/s] STAT', + ] + min_keys = ['Clock [MHz] STAT', + 'DP [MFLOP/s] STAT', ] + max_keys = min_keys + parse_likwid_json(test_data, + "MEM_DP", + sum_keys=sum_keys, + avg_keys=avg_keys, + min_keys=min_keys, + max_keys=max_keys)