Пример #1
0
def gen_pdf_c(path, l, f, nr, list_cases):
  mpl.rcParams = get_rcParams()
  filter_dict = {'lang': [l], 'format' : [f], 'NR' : [nr], 'Q' : [0.4]}
  list_sub_cases = ['GR', 'GC', 'LGR', 'LGC', 'BGR', 'BGC', 'CPT']
  COI = 'nodes'
  con = sqlite3.connect(OUTPUT_DB)
  m, coi_set = dr.matrix_relation(con, filter_dict, list_cases, list_sub_cases, COI, VOI, 'auto', [STAT])
  coi_set = sorted(coi_set, key=float)
  fig = plot.plot_axis(m, coi_set, STAT, 'Nodes (Cores)', 'Time (s)', list_cases, False)
  plot.plot_axis_add_cores_to_node_count(fig, coi_set, NCPN)
  output_file_base = path + f'fig_pangea2_c_nr{nr}_l'+ l + '_f' + f
  plot.save(fig, output_file_base + '.pdf')
  table.table(m, output_file_base + '.tex', list_cases)
  print(output_file_base + '.pdf')
  con.close()
Пример #2
0
def gen_pdf_bar(file_pdf, list_cases, s):
    mpl.rcParams = get_rcParams()
    filter_dict = {'datasize': [s]}
    list_sub_cases = ['nb_blocks', 'nb_proc_per_task']
    COI = 'nb_nodes'
    con = sqlite3.connect(OUTPUT_DB)
    m, coi_set = dr.matrix_relation(con, filter_dict, list_cases,
                                    list_sub_cases, COI, VOI, 'auto', [STAT])
    coi_set = sorted(coi_set, key=float)
    fig = plot.plot_bar(m, coi_set, STAT, 'Nodes (Cores)', 'Time (s)',
                        list_cases, False)
    plot.plot_axis_add_cores_to_node_count(fig, coi_set, NCPN)
    plot.save(fig, file_pdf)
    print(file_pdf)
    con.close()
Пример #3
0
def gen_pdf_ws(path, l, f, nr, list_cases, nodes, ylabel, yscale):
  mpl.rcParams = get_rcParams()
  filter_dict = {'lang': [l], 'format' : [f], 'C' : [300], 'nodes' : nodes}
  list_sub_cases = ['GR', 'GC', 'LGR', 'LGC', 'BGR', 'BGC', 'CPT']
  COI = 'nodes'
  con = sqlite3.connect(OUTPUT_DB)
  m, coi_set = dr.matrix_relation(con, filter_dict, list_cases, list_sub_cases, COI, VOI, 'auto', [STAT], [f'nodes,NR,{nr}'])
  coi_set = sorted(coi_set, key=float)
  fig = plot.plot_axis(m, coi_set, STAT, 'Nodes (Cores)', ylabel, list_cases, False, yscale = yscale)
  #fig = plot.plot_ratios_axis(m, coi_set, STAT, 'Nodes (Cores)', 'Weak Scaling Efficiency', list_cases, False)
  #fig = plot.plot_ratios2_axis(m, coi_set, STAT, 'Nodes (Cores)', 'Ratio Tn/T1', list_cases, False)
  plot.plot_axis_add_cores_to_node_count(fig, coi_set, NCPN)
  output_file_base = path + f'fig_pangea2_ws_nr{nr}_l'+ l + '_f' + f
  plot.save(fig, output_file_base + '.pdf')
  table.table(m, output_file_base + '.tex', list_cases)
  print(output_file_base + '.pdf')
  con.close()
Пример #4
0
def gen_pdf_ss(lang, modifier, nx, ny):
    mpl.rcParams = get_rcParams()
    filter_dict = {'lang': lang, 'nx': [nx], 'ny': [ny]}
    list_cases = ['lang']
    list_sub_cases = []
    COI = 'nodes'
    con = sqlite3.connect(OUTPUT_DB)
    m, coi_set = dr.matrix_relation(con, filter_dict, list_cases,
                                    list_sub_cases, COI, VOI, 'auto', [STAT])
    coi_set = sorted(coi_set, key=float)
    fig = plot.plot_axis(m, coi_set, STAT, 'Nodes (Cores)', 'Time (s)',
                         list_cases, False)
    plot.plot_axis_add_cores_to_node_count(fig, coi_set, NCPN)
    output_file_base = PATH_PREFIX + f'fig_pangea2_ss{modifier}_nx{nx}_ny{ny}'
    plot.save(fig, output_file_base + '.pdf')
    table.table(m, output_file_base + '.tex', list_cases)
    con.close()
Пример #5
0
gen_pdf_ws(['MPI', 'MPIOMP'], '2', 15000, 15000)

CASE_DEF = ['op', 'threads', 'cores', 'processes']
OUTPUT_DB = '.km_omp.db'
INPUT_JSON = 'pangea2_km_results_ompi.json'

FILTER_DICT = {}
con = dh.read_json_file(OUTPUT_DB, INPUT_JSON, FILTER_DICT, CASE_DEF, [VOI])

mpl.rcParams['font.family'] = 'serif'
mpl.rcParams['font.serif'] = ['Times New Roman']
COI = 'threads'
filter_dict = {'op': ['testp1']}
list_cases = ['op']
list_sub_cases = ['cores']
m, coi_set = dr.matrix_relation(con, filter_dict, list_cases, list_sub_cases,
                                COI, VOI, 'auto', [STAT])
coi_set = sorted(coi_set, key=float)
legend = ['op']
fig = plot.plot_axis(m, coi_set, STAT, 'Threads', 'Time (s)', legend, False)
output_file_base = PATH_PREFIX + f'fig_pangea2_omp_testp1'
plot.save(fig, output_file_base + '.pdf')

row_keys = set()
column_keys = set()
Nval_key = ''
Ncase_key = ''
for v in m.values():
    for k, v in v.items():
        row_keys.add(k)
        for i in v.keys():
            if not i.startswith('__'):