diff --git a/plotting/roofline.py b/plotting/roofline.py
index 8d5853f8713ac6c9ad8f407dc19a94fb22086ef5..fc0f629a1b5bc15be35d72fb81c923a280f9c161 100644
--- a/plotting/roofline.py
+++ b/plotting/roofline.py
@@ -1,5 +1,4 @@
 import plotly.graph_objs as go
-from dataclasses import dataclass
 import json
 
 try:
@@ -8,18 +7,6 @@ except ImportError:
     # Try backported to PY<37 `importlib_resources`.
     import importlib_resources as pkg_resources
 
-
-@dataclass
-class CPUInfo:
-    name: str
-    max_perf: float  # MFLOP/s
-    max_band: float  # MByte/s
-
-
-SKYLAKE = CPUInfo("Intel(R) Xeon(R) Gold 6148 CPU @ 2.40GHz",
-                  max_perf=5582274.03,
-                  max_band=159321.74)
-
 DEFAULT_MARKER = dict(size=10, color='green')
 
 
@@ -30,14 +17,15 @@ def get_data(file_name="roofline_data.json"):
 
 
 def add_compute_roofline(fig, peak_perf: float, ridge_point: float, max_x: float, *, name='Peak Performance'):
+    text = f'{name}: {peak_perf/1e12:.4f} TFlop/s'
     fig.add_trace(
         go.Scatter(x=[ridge_point, max_x],
                    y=[peak_perf, peak_perf],
                    mode='lines+text',
-                   name=f'{name}: {peak_perf/1e9} GFlop/s',
-                   text=['', f'{name}: {peak_perf/1e9} GFlop/s'],
+                   name=text,
+                   text=['', text],
                    textposition="top left",
-                   line=dict(color='black', width=2))
+                   line=dict(color='black', width=4))
     )
     return fig
 
@@ -47,9 +35,9 @@ def add_memory_roofline(fig, peak_perf: float, ridge_point: float, max_bw: float
         go.Scatter(x=[0, ridge_point],
                    y=[0, peak_perf],
                    mode='lines+text',
-                   name=f"Memory bandwidth ({name}): {max_bw/1e9} GB/s",
+                   name=f"Memory bandwidth ({name}): {max_bw/1e9:.4f} GB/s",
                    textposition="bottom left",
-                   line=dict(color='black', width=2))
+                   line=dict(color='black', width=4))
     )
     return fig
 
@@ -98,26 +86,30 @@ def set_axis(fig):
     return fig
 
 
+def create_figure(title: str):
+    fig = go.Figure()
+    fig = set_axis(fig)
+    fig.update_layout(title=title)
+    return fig
+
+
 def create_plot_by_host(hostname: str, title: str, *, max_x=50):
     data = get_data()[hostname]
-    fig = go.Figure()
     max_band = data["bw"]["load"] * 1e6
     perfs = sorted(data["perf"].items(), key=lambda x: x[1], reverse=True)
-    for name, perf in perfs:
-        add_compute_roofline(fig, perf*1e6, (perf*1e6/max_band), max_x, name=name)
+    fig = create_figure(title)
+    for idx, (name, perf) in enumerate(perfs):
+        perf_in_flops = perf * 1e6
+        add_compute_roofline(fig, perf_in_flops, (perf_in_flops/max_band), max_x, name=name)
+        if idx == 0:
+            add_memory_roofline(fig, perf_in_flops, perf_in_flops/max_band, max_band, "load")
 
-    add_memory_roofline(fig, perfs[0][1]*1e6, perfs[0][1]*1e6/max_band, max_band, "load")
-
-    fig = set_axis(fig)
-    fig.update_layout(title=title)
     return fig
 
 
 def create_plot(peak_perf, max_band, title):
-    fig = go.Figure()
+    fig = create_figure(title)
     fig = add_rooflines(fig, peak_perf, max_band, 100)
-    fig = set_axis(fig)
-    fig.update_layout(title=title)
     return fig