<jupyter_start><jupyter_text>High Performance LinpackResults from running the [Intel](https://software.intel.com/content/www/us/en/develop/documentation/mkl-windows-developer-guide/top/intel-math-kernel-library-benchmarks/intel-distribution-for-linpack-benchmark/overview-of-the-intel-distribution-for-linpack-benchmark.html) version of the High Performance Linpack benchmarks. See the README in this directory for more info.<jupyter_code># Plotting setup
%matplotlib inline
import matplotlib.pyplot as plt
from matplotlib import ticker
from IPython.display import display, HTML

import pandas as pd
import os, sys
from pprint import pprint
sys.path.extend(('../../reframe', '../../')) # the `modules` package imports `reframe` so need that in sys.modules
import modules<jupyter_output><empty_output><jupyter_text>Performance vs number of nodesEach benchmark is run on both a single node and all nodes.The table shows the Gflops/s achieved in the most-recent run on each system/partition/environment combination, plus the ratio between RoCE / IB results.<jupyter_code>df = modules.utils.tabulate_last_perf('IntelHpl*', 'testname', 'Gflops') # don't use num_nodes as get NaNs
df.rename(index=lambda t: t.split('_')[-1], inplace=True)  # IntelHpl_all -> all
df.index.name = 'nodes'
modules.plots.add_roce_ib_factor(df)
df = df.transpose() # so now cols are all, single
df['all/single'] = (df['all'] / df['single']).round(1)
display(df)#.style.set_precision(0))<jupyter_output><empty_output><jupyter_text>Performance HistoryThe plot below shows the Gflop/s history with a series for each system/partition/environment combination. Where performance logs include a git reference (as a tag `"git="`) this is used to annotate the data point.<jupyter_code>for test in ['IntelHpl_single', 'IntelHpl_all']:
    perf_records = modules.utils.load_perf_logs('../../perflogs', test, '.log')
    if perf_records is None:
        print('%s: no performance logs found' % test)
        continue
    fig, ax = plt.subplots(nrows=1, ncols=1)
    for spe, data in perf_records.groupby(['sysname', 'partition', 'environ']):
        # filter to only Gflops records (might have others)
        data = data.loc[data['perf_var'] == 'Gflops']
        data.plot(ax=ax, x='completion_time', y='perf_value', style=['o-'], label='-'.join(spe))
        
        # annotate points with git_ref:
        for x, y, ref in zip(data['completion_time'], data['perf_value'], data['git']):
            if not pd.isnull(ref):
                ax.annotate(ref, (x, y))
    ax.set_title(test)
    ax.set_xlabel('completion time')
    ax.set_ylabel('Gflops')
    ax.legend()
    ax.grid()<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.1305649083426861, 'fraction_numerical': 0.0018705574261129816, 'mean_word_length': 4.502057613168724, 'pattern_counts': {'":': 0, '<': 13, '<?xml version=': 0, '>': 14, 'https://': 1, 'lorem ipsum': 0, 'www.': 1, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '3', 'dir': 'jupyter-structured-clean-dedup', 'id': '421520', 'license': 'Apache-2.0', 'n_tokens_mistral': 870, 'n_tokens_neox': 847, 'n_words': 232, 'path': 'apps/hpl/HPL.ipynb', 'repo_name': 'stackhpc/nrel-benchmarks', 'size': '2673'}