Exemplo n.º 1
0
def generate_generic_cpustat_per_xact(jgraphs, results_dir, parameter, title, ylabel):
    user_data     = get_cpustat_per_xact_data(results_dir, "USER", parameter)
    kernel_data   = get_cpustat_per_xact_data(results_dir, "KERNEL", parameter)
    combined_data = get_cpustat_per_xact_data(results_dir, "COMBINED", parameter)

    lines = []
    lines.append(mfgraph.merge_data(group_title = "User", data = user_data))
    lines.append(mfgraph.merge_data(group_title = "Kernel", data = kernel_data))
    lines.append(mfgraph.merge_data(group_title = "Combined", data = combined_data))

    draw_std_line(jgraphs, title, ylabel, lines)
Exemplo n.º 2
0
def generate_throughput(jgraphs, results_dir):
    # ECperf Data
    data = get_throughput_data(results_dir)
    ecperf_data = mfgraph.merge_data(group_title = "ECperf", data = data)

    # Graph ECperf Data

    linear = get_linear(data=ecperf_data)
    
    linear_data = mfgraph.merge_data(group_title = "Linear", data = linear)
    lines = [ecperf_data, linear_data]
    
    draw_std_line(jgraphs, "Throughput", "BBops/min", lines)
Exemplo n.º 3
0
def generate_throughput_no_gc(jgraphs, results_dir):
    ylabel = "Throughput"

    # Gather ECperf Data
    data = get_throughput_data(results_dir)
    data_no_gc = get_throughput_no_gc_data(results_dir)

    ecperf_data = mfgraph.merge_data(group_title = "ECperf", data = data)
    ecperf_data_no_gc = mfgraph.merge_data(group_title = "ECperf no GC", data = data_no_gc)

    # Graph ECperf Data
    linear = get_linear(data=ecperf_data)

    linear_data = mfgraph.merge_data(group_title = "Linear", data = linear)
    lines = [linear_data, ecperf_data, ecperf_data_no_gc]

    draw_std_line(jgraphs, "Effect of GC on Throughput", ylabel, lines)
Exemplo n.º 4
0
def generate_gc_time_per_xact(jgraphs, results_dir):
    ylabel = "GC Time Per Transaction"

    # Gather ECperf data
    data = get_gc_time_per_xact_data(results_dir)
    ecperf_data = mfgraph.merge_data(group_title = "ECperf", data = data)

    #draw the graph
    lines = [ecperf_data]
    draw_std_line(jgraphs, "GC Time/Tranaction", ylabel, lines)
Exemplo n.º 5
0
def generate_indirect_branch_prediction_rate(jgraphs, results_dir):
    gshare_data = mfgraph.merge_data(group_title="GSHARE",
                                     data=get_branch_prediction_rate_data("INDIRE", "GSHARE"))
    agree_data = mfgraph.merge_data(group_title="AGREE",
                                    data=get_branch_prediction_rate_data("INDIRE", "AGREE"))
    yags_data = mfgraph.merge_data(group_title="YAGS",
                                   data=get_branch_prediction_rate_data("INDIRE", "YAGS"))
    print gshare_data
    lines = [gshare_data, agree_data, yags_data]

    jgraphs.append(mfgraph.line_graph(lines,
                                      title = "INDIRECT Branch Prediction Accuracy",
                                      xlabel = "PHT Bits",
                                      ylabel = "% Correct",
                                      xsize = 6,
                                      ysize = 4.5,
                                      ymin = 80,
                                      ymax = 100
                                      ))
Exemplo n.º 6
0
def generate_tuning(jgraphs, results_dir):
    ylabel = "Throughput in BBops/min"

    data_map = get_tuning_data(results_dir)

    lines = []
    for key in data_map.keys():
        label = "%d threads" % key
        lines.append(mfgraph.merge_data(group_title = label, data = data_map[key]))

    draw_std_line(jgraphs, "Tuning Data", ylabel, lines)
Exemplo n.º 7
0
def generate_gc_time(jgraphs, results_dir):
    xlabel = "Processors"
    ylabel = "Time Spent in Garbage Collection (%)"

    # Gather ECperf data
    data = get_gc_time_data(results_dir)
    ecperf_data = mfgraph.merge_data(group_title = "ECperf", data = data)

    lines = [ecperf_data]

    draw_std_line(jgraphs, "GC Time", "GC Time (s)", lines)
Exemplo n.º 8
0
def generate_tuning(jgraphs, results_dir):
    ylabel = "Throughput in BBops/min"

    data_map = get_tuning_data(results_dir)

    lines = []
    for key in data_map.keys():
        label = "%d threads" % key
        lines.append(mfgraph.merge_data(group_title=label, data=data_map[key]))

    draw_std_line(jgraphs, "Tuning Data", ylabel, lines)
Exemplo n.º 9
0
def generate_gc_time(jgraphs, results_dir):
    xlabel = "Processors"
    ylabel = "Time Spent in Garbage Collection (%)"

    # Gather ECperf data
    data = get_gc_time_data(results_dir)
    ecperf_data = mfgraph.merge_data(group_title="ECperf", data=data)

    lines = [ecperf_data]

    draw_std_line(jgraphs, "GC Time", "GC Time (s)", lines)
Exemplo n.º 10
0
def generate_indirect_branch_prediction_rate(jgraphs, results_dir):
    gshare_data = mfgraph.merge_data(group_title="GSHARE",
                                     data=get_branch_prediction_rate_data(
                                         "INDIRE", "GSHARE"))
    agree_data = mfgraph.merge_data(group_title="AGREE",
                                    data=get_branch_prediction_rate_data(
                                        "INDIRE", "AGREE"))
    yags_data = mfgraph.merge_data(group_title="YAGS",
                                   data=get_branch_prediction_rate_data(
                                       "INDIRE", "YAGS"))
    print gshare_data
    lines = [gshare_data, agree_data, yags_data]

    jgraphs.append(
        mfgraph.line_graph(lines,
                           title="INDIRECT Branch Prediction Accuracy",
                           xlabel="PHT Bits",
                           ylabel="% Correct",
                           xsize=6,
                           ysize=4.5,
                           ymin=80,
                           ymax=100))