From f7504b82384af8000594efe416bae161ff1f07e1 Mon Sep 17 00:00:00 2001 From: Linus Baumberger Date: Sun, 31 May 2026 22:06:14 +0200 Subject: [PATCH] Linus/analysis --- analysis/fig_exp.png | Bin 0 -> 34896 bytes analysis/fig_ladder.png | Bin 0 -> 48236 bytes analysis/fig_roofline.png | Bin 0 -> 48831 bytes analysis/fig_tracks.png | Bin 0 -> 110241 bytes analysis/make_csv.py | 67 ++++++++++++++++++ analysis/plots.py | 144 ++++++++++++++++++++++++++++++++++++++ 6 files changed, 211 insertions(+) create mode 100644 analysis/fig_exp.png create mode 100644 analysis/fig_ladder.png create mode 100644 analysis/fig_roofline.png create mode 100644 analysis/fig_tracks.png create mode 100644 analysis/make_csv.py create mode 100644 analysis/plots.py diff --git a/analysis/fig_exp.png b/analysis/fig_exp.png new file mode 100644 index 0000000000000000000000000000000000000000..fb9c537c939a517133494e3eb60da546c52132ce GIT binary patch literal 34896 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 literal 0 HcmV?d00001 diff --git a/analysis/fig_ladder.png b/analysis/fig_ladder.png new file mode 100644 index 0000000000000000000000000000000000000000..49d9d194743c43527a978ba43d52c2d8e1a0c160 GIT binary patch literal 48236 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 nzZsic)nYAhXlqdN=_d&?} literal 0 HcmV?d00001 diff --git a/analysis/fig_roofline.png b/analysis/fig_roofline.png new file mode 100644 index 0000000000000000000000000000000000000000..59f1af6bc60440ec934fea2755210f57b1861489 GIT binary patch literal 48831 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 Bo}~Z) literal 0 HcmV?d00001 diff --git a/analysis/fig_tracks.png b/analysis/fig_tracks.png new file mode 100644 index 0000000000000000000000000000000000000000..4b03f75ba563ec53295512b782a8e4bac2c6599e GIT binary patch literal 110241 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

ED7# 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

81-CR+W{*?sWsYAI+eeZH5FQQ-tP*p`6`& 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 literal 0 HcmV?d00001 diff --git a/analysis/make_csv.py b/analysis/make_csv.py new file mode 100644 index 0000000..8c4ec0c --- /dev/null +++ b/analysis/make_csv.py @@ -0,0 +1,67 @@ +import os +import re +import csv + +# folder that holds one subfolder per variant, each with an x86/ dir full of *.log files +ROOT = "measurements" +OUT = "analysis/results.csv" + +# the benchmark prints one block per problem size, looks like: +# === N_P=500 N_ITER=200 === +# W(n) per iteration: ... +# Q(n) per iteration: ... +# I(n): ... +# W(n): ... +# T(n): ... <- cycles +# P(n): ... <- flops/cycle +# so I split each log on the "=== N_P=.. ===" lines and read the fields out of each block. +size_line = re.compile(r"=== N_P=(\d+) N_ITER=(\d+) ===") + +def num(pattern, text): + m = re.search(pattern, text) + if m: + return float(m.group(1)) + return None + +#we run every variant a few times (1.log, 2.log, ...). keep the fastest run per size, +#min cycles is the standard way to kill the OS/turbo noise. +best = {} + +for variant in sorted(os.listdir(ROOT)): + logdir = os.path.join(ROOT, variant, "x86") + if not os.path.isdir(logdir): + continue + + for fn in os.listdir(logdir): + if not fn.endswith(".log"): + continue + text = open(os.path.join(logdir, fn)).read() + + marks = list(size_line.finditer(text)) + for i, m in enumerate(marks): + n = int(m.group(1)) + n_iter = int(m.group(2)) + start = m.end() + stop = marks[i + 1].start() if i + 1 < len(marks) else len(text) + block = text[start:stop] + + cycles = num(r"T\(n\):\s*([\d.]+)", block) + if cycles is None: + continue + W = num(r"W\(n\):\s*([\d.]+)", block) + + key = (variant, n) + if key not in best or cycles < best[key][2]: + best[key] = (variant, n, cycles, n_iter, W, + num(r"Q\(n\) per iteration:\s*([\d.]+)", block), + num(r"I\(n\):\s*([\d.]+)", block)) + +with open(OUT, "w", newline="") as f: + w = csv.writer(f) + w.writerow(["variant", "n", "n_iter", "W", "Q_per_iter", "I", "cycles", "flops_per_cycle"]) + for variant, n in sorted(best): + _, _, cycles, n_iter, W, q, I = best[(variant, n)] + fc = W / cycles + w.writerow([variant, n, n_iter, W, q, I, round(cycles, 1), round(fc, 3)]) + +print("wrote", OUT, "with", len(best), "rows") \ No newline at end of file diff --git a/analysis/plots.py b/analysis/plots.py new file mode 100644 index 0000000..0669f1f --- /dev/null +++ b/analysis/plots.py @@ -0,0 +1,144 @@ +import pandas as pd +import numpy as np +import matplotlib.pyplot as plt +#import seaborn as sns # tried it, the default look was worse + +df = pd.read_csv("analysis/results.csv") + +# peaks for the ryzen ai 7 350 (zen5) at 2GHz. 2 fma units and the datapath is 256 bit +# -> scalar 4, double 16, float 32 flops/cycle +SCALAR = 4 +PEAK_D = 16 +PEAK_F = 32 +maroon = "#A71D5B" + +def get(v, n=5000): + return df[(df.variant==v) & (df.n==n)]["flops_per_cycle"].values[0] + +def getline(v): + s = df[df.variant == v].sort_values("n") + return s.n.values, s["flops_per_cycle"].values + +base = get("variant_baseline") + + +# plot 1: the two precision tracks (this is the main results plot) +# double tops out ~7, float goes to 24. also shows the avx2-float stuff already does most of the work +tracks = [ + ("variant_inlining_7_SoA_AVX2", "double, AVX2", "#9bbbe0", "--"), + ("variant_inlining_8_SoA_AVX512_polyexp_moreavx", "double, AVX-512 + polyexp", "#2f5d9e", "-"), + ("variant_float_inlining_SoA_AVX2_polyexp", "float, AVX2 + polyexp", "#e58aa6", "--"), + ("variant_float_inlining_SoA_AVX2_polyexp_rsqrt_loopopt", "float, AVX2 + polyexp + rsqrt", "#d05a82", "--"), + ("variant_float_inlining_SoA_AVX512_polyexp_moreavx_ilp_2_rsqrt_morersqrt", "float, AVX-512 + rsqrt + ILP (best)", maroon, "-"), +] + +fig, ax = plt.subplots(figsize=(9,4.7)) +for v,lab,c,ls in tracks: + x,y = getline(v) + ax.plot(x, y, ls, color=c, marker="o", ms=4, lw= 2.4 if c==maroon else 1.8, label=lab) + +for yv,t in [(PEAK_D,"double peak (16)"), (PEAK_F,"float peak (32)")]: + ax.axhline(yv, ls=":", color="#999", lw=1.2) + ax.text(52, yv*1.03, t, fontsize=9.5, color="#888") + +ax.set_xscale("log"); ax.set_yscale("log") +ax.set_xticks([50,100,200,500,1000,2000,5000,10000]) +ax.set_xticklabels(["50","100","200","500","1k","2k","5k","10k"]) +ax.set_yticks([1,2,4,8,16,32]); ax.set_yticklabels(["1","2","4","8","16","32"]) +ax.set_xlim(46,13000); ax.set_ylim(1,40) +ax.set_xlabel("number of pedestrians n") +ax.set_ylabel("performance [flops/cycle]") +ax.grid(color="#e9e9e9") +ax.spines["top"].set_visible(False); ax.spines["right"].set_visible(False) +ax.legend(fontsize=9, loc="lower left", framealpha=.95) +plt.tight_layout() +plt.savefig("analysis/fig_tracks.png", dpi=170, bbox_inches="tight") + + +# plot 2: all te milestones + the symmetry one that got slower +bars = [ + ("baseline", "variant_baseline"), + ("AVX2 (double)", "variant_inlining_7_SoA_AVX2"), + ("AVX-512 (double)", "variant_avx512_1"), + ("+ polyexp", "variant_inlining_8_SoA_AVX512_polyexp_moreavx"), + ("+ float", "variant_float_inlining_SoA_AVX512_polyexp_moreavx"), + ("+ rsqrt & ILP", "variant_float_inlining_SoA_AVX512_polyexp_moreavx_ilp_2_rsqrt_morersqrt"), + ("symmetry\n(half the pairs)", "variant_inlining_7_symmetry_2"), +] +names = [b[0] for b in bars] +spd = [get(b[1])/base for b in bars] +cols = ["#7a7a7a","#3b6fb0","#2f9e8f","#e08a1e","#c0436a", maroon, "#cf2b2b"] + +fig,ax = plt.subplots(figsize=(9,4.7)) +yp = np.arange(len(names))[::-1] +ax.barh(yp, spd, color=cols, height=0.66) +for yy,s in zip(yp,spd): + ax.text(s+0.25, yy, str(round(s,1))+"x", va="center", fontsize=11, fontweight="bold", + color = "#cf2b2b" if s<1 else "#222") +ax.axvline(1, ls="--", color="#888", lw=1) +ax.set_yticks(yp); ax.set_yticklabels(names) +ax.set_xlim(0,26) +ax.set_xlabel("speedup over baseline (n=5000)") +#ax.set_title("optimization milestones (and the one that backfired)", loc="left", fontsize=13) +ax.grid(axis="x", color="#eee"); ax.grid(axis="y", visible=False) +ax.spines["top"].set_visible(False); ax.spines["right"].set_visible(False) +plt.tight_layout() +plt.savefig("analysis/fig_ladder.png", dpi=170, bbox_inches="tight") + + +# plot3 roofline +# every variant has the same I at a given n (W and Q dont change between variants), so the +# points just stack vertically. we're miles to the right of the ridge -> compute bound. +fig,ax = plt.subplots(figsize=(9,4.7)) +bw = 60 # bytes/cycle, ~120 GB/s lpddr5x / 2GHz. rough +xx = np.logspace(-1, 3.6, 200) +ax.plot(xx, np.minimum(bw*xx, PEAK_F), color="#cccccc", lw=1.2) + +for pk,t in [(SCALAR,"scalar (4)"),(PEAK_D,"double (16)"),(PEAK_F,"float (32)")]: + ax.axhline(pk, ls="--", color="#999", lw=1.1) + ax.text(0.11, pk*1.04, t+" peak", fontsize=9.5, color="#888") + +I5000 = df[(df.variant=="variant_baseline") & (df.n==5000)]["I"].values[0] +pts = [ + ("variant_baseline", "#7a7a7a"), + ("variant_avx512_1", "#2f9e8f"), + ("variant_inlining_8_SoA_AVX512_polyexp_moreavx", "#e08a1e"), + ("variant_float_inlining_SoA_AVX512_polyexp_moreavx", "#c0436a"), + ("variant_float_inlining_SoA_AVX512_polyexp_moreavx_ilp_2_rsqrt_morersqrt", maroon), +] +for v,c in pts: + ax.plot(I5000, get(v), "o", ms=9, color=c, mec="white", mew=1) + + +ax.text(I5000, 1.3, "n=5000", fontsize=10, color="#555") + +ax.set_xscale("log"); ax.set_yscale("log") +ax.set_xlim(0.1, 6500); ax.set_ylim(0.7, 45) +ax.set_xlabel("operational intensity I [flops/byte]") +ax.set_ylabel("performance [flops/cycle]") +#ax.set_title("roofline: deeply compute-bound (I grows with n; work O(n^2), data O(n))", loc="left", fontsize=12) +ax.grid(color="#ededed") +ax.spines["top"].set_visible(False); ax.spines["right"].set_visible(False) +plt.tight_layout() +plt.savefig("analysis/fig_roofline.png", dpi=170, bbox_inches="tight") + + +# plot 4: exp vs the polynomial approx (just to show its basically exact) +x = np.linspace(-6, 0, 300) +ex = np.exp(x) +co = np.polyfit(x, ex, 5) # degree 5 same as in the kernel +ap = np.polyval(co, x) + +fig,ax = plt.subplots(figsize=(4.6,3.7)) +ax.plot(x, ex, color="#222", lw=2.4, label="exp(x)") +ax.plot(x, ap, "--", color=maroon, lw=2, label="poly approx") +ax.set_xlabel("x") +ax.set_title("exp -> polynomial", loc="left", fontsize=12) +ax.grid(color="#ededed") +ax.spines["top"].set_visible(False); ax.spines["right"].set_visible(False) +ax.legend(frameon=False, fontsize=10) +plt.tight_layout() +plt.savefig("analysis/fig_exp.png", dpi=170, bbox_inches="tight") + +#plt.show() +print("done") \ No newline at end of file