ror HF Staff commited on
Commit
1b5e076
·
1 Parent(s): 746981f

Added global failure rate

Browse files
Files changed (2) hide show
  1. app.py +2 -2
  2. summary_page.py +45 -0
app.py CHANGED
@@ -58,8 +58,8 @@ def get_description_text():
58
  msg = [
59
  "Transformer CI Dashboard",
60
  "-",
61
- "amd runs on MI325",
62
- "nvidia runs on A10",
63
  ]
64
  msg = ["**" + x + "**" for x in msg] + [""]
65
  if Ci_results.last_update_time:
 
58
  msg = [
59
  "Transformer CI Dashboard",
60
  "-",
61
+ "AMD runs on MI325",
62
+ "NVIDIA runs on A10",
63
  ]
64
  msg = ["**" + x + "**" for x in msg] + [""]
65
  if Ci_results.last_update_time:
summary_page.py CHANGED
@@ -35,6 +35,42 @@ COLORS = {
35
  MODEL_NAME_FONT_SIZE = 16
36
  LABEL_FONT_SIZE = 14
37
  LABEL_OFFSET = 1 # Distance of label from bar
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
38
 
39
 
40
  def draw_text_and_bar(
@@ -80,6 +116,9 @@ def create_summary_page(df: pd.DataFrame, available_models: list[str]) -> plt.Fi
80
  fontfamily='monospace', weight='normal')
81
  ax.axis('off')
82
  return fig
 
 
 
83
 
84
  # Calculate dimensions for N-column layout
85
  model_count = len(available_models)
@@ -91,6 +130,12 @@ def create_summary_page(df: pd.DataFrame, available_models: list[str]) -> plt.Fi
91
 
92
  fig, ax = plt.subplots(figsize=(FIGURE_WIDTH, figure_height), facecolor='#000000')
93
  ax.set_facecolor('#000000')
 
 
 
 
 
 
94
 
95
  visible_model_count = 0
96
  max_y = 0
 
35
  MODEL_NAME_FONT_SIZE = 16
36
  LABEL_FONT_SIZE = 14
37
  LABEL_OFFSET = 1 # Distance of label from bar
38
+ FAILURE_RATE_FONT_SIZE = 28
39
+
40
+
41
+ def calculate_overall_failure_rates(df: pd.DataFrame, available_models: list[str]) -> tuple[float, float]:
42
+ """Calculate overall failure rates for AMD and NVIDIA across all models."""
43
+ if df.empty or not available_models:
44
+ return 0.0, 0.0
45
+
46
+ total_amd_tests = 0
47
+ total_amd_failures = 0
48
+ total_nvidia_tests = 0
49
+ total_nvidia_failures = 0
50
+
51
+ for model_name in available_models:
52
+ if model_name not in df.index:
53
+ continue
54
+
55
+ row = df.loc[model_name]
56
+ amd_stats, nvidia_stats = extract_model_data(row)[:2]
57
+
58
+ # AMD totals
59
+ amd_total = sum(amd_stats.values())
60
+ if amd_total > 0:
61
+ total_amd_tests += amd_total
62
+ total_amd_failures += amd_stats['failed'] + amd_stats['error']
63
+
64
+ # NVIDIA totals
65
+ nvidia_total = sum(nvidia_stats.values())
66
+ if nvidia_total > 0:
67
+ total_nvidia_tests += nvidia_total
68
+ total_nvidia_failures += nvidia_stats['failed'] + nvidia_stats['error']
69
+
70
+ amd_failure_rate = (total_amd_failures / total_amd_tests * 100) if total_amd_tests > 0 else 0.0
71
+ nvidia_failure_rate = (total_nvidia_failures / total_nvidia_tests * 100) if total_nvidia_tests > 0 else 0.0
72
+
73
+ return amd_failure_rate, nvidia_failure_rate
74
 
75
 
76
  def draw_text_and_bar(
 
116
  fontfamily='monospace', weight='normal')
117
  ax.axis('off')
118
  return fig
119
+
120
+ # Calculate overall failure rates
121
+ amd_failure_rate, nvidia_failure_rate = calculate_overall_failure_rates(df, available_models)
122
 
123
  # Calculate dimensions for N-column layout
124
  model_count = len(available_models)
 
130
 
131
  fig, ax = plt.subplots(figsize=(FIGURE_WIDTH, figure_height), facecolor='#000000')
132
  ax.set_facecolor('#000000')
133
+
134
+ # Add overall failure rates at the top as a proper title
135
+ failure_text = f"Overall Failure Rates: AMD {amd_failure_rate:.1f}% | NVIDIA {nvidia_failure_rate:.1f}%"
136
+ ax.text(50, -1.25, failure_text, ha='center', va='top',
137
+ color='#FFFFFF', fontsize=FAILURE_RATE_FONT_SIZE,
138
+ fontfamily='monospace', fontweight='bold')
139
 
140
  visible_model_count = 0
141
  max_y = 0