@@ -235,7 +235,7 @@ def roofline_only(path_to_dir, dev_id, sort_type, mem_level, kernel_names, verbo
|
||||
dev_id, # [Optional] Specify device id to collect roofline info from
|
||||
sort_type, # [Optional] Sort AI by top kernels or dispatches
|
||||
mem_level, # [Optional] Toggle particular level(s) of memory hierarchy
|
||||
kernel_names, # [Optional] Toggle overlay of kernel names in plot
|
||||
kernel_names, # [Optional] Toggle overlay of kernel names in plot
|
||||
True, # [Optional] Generate a standalone roofline analysis
|
||||
)
|
||||
|
||||
|
||||
@@ -33,7 +33,8 @@ from dash import dcc
|
||||
import plotly.graph_objects as go
|
||||
|
||||
|
||||
SYMBOLS = [0,1,2,3,4,5,13,17,18,20]
|
||||
SYMBOLS = [0, 1, 2, 3, 4, 5, 13, 17, 18, 20]
|
||||
|
||||
|
||||
def to_int(a):
|
||||
if str(type(a)) == "<class 'NoneType'>":
|
||||
@@ -124,7 +125,7 @@ def generate_plots(roof_info, ai_data, mem_level, is_standalone, verbose, fig=No
|
||||
name="ai_l1",
|
||||
mode="markers",
|
||||
marker_symbol=SYMBOLS,
|
||||
marker={"color": "#00CC96"}
|
||||
marker={"color": "#00CC96"},
|
||||
)
|
||||
)
|
||||
fig.add_trace(
|
||||
@@ -134,7 +135,7 @@ def generate_plots(roof_info, ai_data, mem_level, is_standalone, verbose, fig=No
|
||||
name="ai_l2",
|
||||
mode="markers",
|
||||
marker_symbol=SYMBOLS,
|
||||
marker={"color": "#EF553B"}
|
||||
marker={"color": "#EF553B"},
|
||||
)
|
||||
)
|
||||
fig.add_trace(
|
||||
@@ -144,7 +145,7 @@ def generate_plots(roof_info, ai_data, mem_level, is_standalone, verbose, fig=No
|
||||
name="ai_hbm",
|
||||
mode="markers",
|
||||
marker_symbol=SYMBOLS,
|
||||
marker={"color": "#636EFA"}
|
||||
marker={"color": "#636EFA"},
|
||||
)
|
||||
)
|
||||
|
||||
@@ -207,14 +208,20 @@ def get_roofline(
|
||||
legend = go.Figure(
|
||||
go.Scatter(
|
||||
mode="markers",
|
||||
x=[0]*10,
|
||||
x=[0] * 10,
|
||||
y=ai_data["kernelNames"],
|
||||
marker_symbol=SYMBOLS,
|
||||
marker_size=15,
|
||||
)
|
||||
)
|
||||
legend.update_layout(title="Kernel Names and Markers",
|
||||
margin=dict(b=0,r=0), xaxis_range=[-1,1], xaxis_side="top", height=400, width=1000)
|
||||
legend.update_layout(
|
||||
title="Kernel Names and Markers",
|
||||
margin=dict(b=0, r=0),
|
||||
xaxis_range=[-1, 1],
|
||||
xaxis_side="top",
|
||||
height=400,
|
||||
width=1000,
|
||||
)
|
||||
legend.update_xaxes(dtick=1)
|
||||
|
||||
if is_standalone:
|
||||
@@ -224,18 +231,14 @@ def get_roofline(
|
||||
ml_combo_fig.write_image(
|
||||
path_to_dir + "/empirRoof_gpu-{}_fp8_fp16.pdf".format(dev_id)
|
||||
)
|
||||
legend.write_image(
|
||||
path_to_dir + "/kernelName_legend.pdf"
|
||||
)
|
||||
legend.write_image(path_to_dir + "/kernelName_legend.pdf")
|
||||
time.sleep(1)
|
||||
# Re-save to remove loading MathJax pop up
|
||||
fp32_fig.write_image(path_to_dir + "/empirRoof_gpu-{}_fp32.pdf".format(dev_id))
|
||||
ml_combo_fig.write_image(
|
||||
path_to_dir + "/empirRoof_gpu-{}_fp8_fp16.pdf".format(dev_id)
|
||||
)
|
||||
legend.write_image(
|
||||
path_to_dir + "/kernelName_legend.pdf"
|
||||
)
|
||||
legend.write_image(path_to_dir + "/kernelName_legend.pdf")
|
||||
print("Empirical Roofline PDFs saved!")
|
||||
else:
|
||||
return html.Section(
|
||||
|
||||
Atsaukties uz šo jaunā problēmā
Block a user