Skip to content

Add LinuxPerf support, add text-only logs summarizer, add more metrics#698

Merged
jpsamaroo merged 5 commits into
masterfrom
jps/linuxperf
Jul 6, 2026
Merged

Add LinuxPerf support, add text-only logs summarizer, add more metrics#698
jpsamaroo merged 5 commits into
masterfrom
jps/linuxperf

Conversation

@jpsamaroo

@jpsamaroo jpsamaroo commented Apr 14, 2026

Copy link
Copy Markdown
Member

Written by Claude

Todo:

  • Add docs for LinuxPerf metrics and :summary visualizer
  • Basic test for :summary text output

@jpsamaroo jpsamaroo marked this pull request as ready for review July 6, 2026 14:51
@github-actions

github-actions Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

Dagger benchmarks: dirty vs master

master dirty master / dirty
array/dagger/N=1024 (block 512)/add (X + X) 10.4 ± 0.59 ms 10.7 ± 0.02 ms 0.978 ± 0.055
array/dagger/N=1024 (block 512)/alloc (rand) 4.41 ± 0.43 ms 4.44 ± 1.8 ms 0.993 ± 0.41
array/dagger/N=1024 (block 512)/broadcast (X .+ 1) 6.51 ± 0.99 ms 7.44 ± 0.2 ms 0.875 ± 0.13
array/dagger/N=1024 (block 512)/map (sin.(X)) 10.8 ± 2.7 ms 12.5 ± 1.6 ms 0.864 ± 0.24
array/dagger/N=1024 (block 512)/norm 3.88 ± 0.19 ms 4.59 ± 1 ms 0.845 ± 0.2
array/dagger/N=1024 (block 512)/reduce (sum) 7.17 ± 1.3 ms 7.83 ± 1.8 ms 0.916 ± 0.27
array/dagger/N=1024 (block 512)/transpose (permutedims) 10.4 ± 0.25 ms 10.9 ± 1.3 ms 0.951 ± 0.12
array/dagger/N=256 (block 256)/add (X + X) 3.73 ± 0.15 ms 3.31 ± 0.34 ms 1.13 ± 0.13
array/dagger/N=256 (block 256)/alloc (rand) 1.73 ± 0.51 ms 1.54 ± 0.036 ms 1.12 ± 0.33
array/dagger/N=256 (block 256)/broadcast (X .+ 1) 3.4 ± 0.33 ms 3.16 ± 0.073 ms 1.08 ± 0.11
array/dagger/N=256 (block 256)/map (sin.(X)) 3.99 ± 0.22 ms 3.66 ± 0.078 ms 1.09 ± 0.065
array/dagger/N=256 (block 256)/norm 2.12 ± 0.17 ms 2.29 ± 0.17 ms 0.925 ± 0.1
array/dagger/N=256 (block 256)/reduce (sum) 4.06 ± 0.35 ms 4.51 ± 0.74 ms 0.9 ± 0.17
array/dagger/N=256 (block 256)/transpose (permutedims) 2.58 ± 0.048 ms 3.3 ± 0.12 ms 0.78 ± 0.033
linalg/dagger/N=1024 (block 512)/cholesky 0.0341 ± 0.0033 s 31.1 ± 1.8 ms 1.1 ± 0.12
linalg/dagger/N=1024 (block 512)/lu 7.73 s 7.69 s 1.01
linalg/dagger/N=1024 (block 512)/matmul (A*A) 0.0577 ± 0.0055 s 0.0605 ± 0.0051 s 0.954 ± 0.12
linalg/dagger/N=1024 (block 512)/matvec (A*x) 9.69 ± 1.2 ms 9 ± 0.79 ms 1.08 ± 0.16
linalg/dagger/N=1024 (block 512)/qr 0.399 ± 0.0031 s 0.398 ± 0.008 s 1 ± 0.022
linalg/dagger/N=1024 (block 512)/solve (A\b via lu) 11.1 s 11 s 1.01
linalg/dagger/N=1024 (block 512)/syrk (A'*A) 0.0447 ± 0.0031 s 0.0464 ± 0.005 s 0.964 ± 0.12
linalg/dagger/N=256 (block 256)/cholesky 6.91 ± 0.59 ms 6.81 ± 0.19 ms 1.01 ± 0.091
linalg/dagger/N=256 (block 256)/lu 1.35 ± 0.012 s 1.34 ± 0.021 s 1.01 ± 0.018
linalg/dagger/N=256 (block 256)/matmul (A*A) 4.28 ± 0.52 ms 4.51 ± 0.39 ms 0.951 ± 0.14
linalg/dagger/N=256 (block 256)/matvec (A*x) 3.55 ± 0.57 ms 3.53 ± 0.42 ms 1.01 ± 0.2
linalg/dagger/N=256 (block 256)/qr 10.8 ± 0.4 ms 11 ± 0.082 ms 0.981 ± 0.037
linalg/dagger/N=256 (block 256)/solve (A\b via lu) 2.23 ± 0.012 s 2.21 ± 0.0071 s 1.01 ± 0.0063
linalg/dagger/N=256 (block 256)/syrk (A'*A) 6.51 ± 0.86 ms 6.16 ± 0.26 ms 1.06 ± 0.15
stencil/dagger/N=1024 (block 512)/alloc (neighbors Wrap) 0.112 ± 0.013 s 0.0606 ± 0.0021 s 1.85 ± 0.23
stencil/dagger/N=1024 (block 512)/assign (const) 4.36 ± 0.28 ms 4.24 ± 0.38 ms 1.03 ± 0.11
stencil/dagger/N=1024 (block 512)/multi-expr 9.73 ± 0.67 ms 9.8 ± 0.59 ms 0.993 ± 0.091
stencil/dagger/N=1024 (block 512)/neighbors (Clamp) 0.0572 ± 0.0027 s 0.0514 ± 0.0016 s 1.11 ± 0.064
stencil/dagger/N=1024 (block 512)/neighbors (Pad) 0.054 ± 0.006 s 0.0583 ± 0.0037 s 0.927 ± 0.12
stencil/dagger/N=1024 (block 512)/neighbors (Reflect) 0.0533 ± 0.0059 s 0.0542 ± 0.0045 s 0.985 ± 0.14
stencil/dagger/N=1024 (block 512)/neighbors (Wrap) 0.0591 ± 0.0048 s 0.0562 ± 0.003 s 1.05 ± 0.1
stencil/dagger/N=1024 (block 512)/update (+) 6.33 ± 0.27 ms 6.26 ± 0.2 ms 1.01 ± 0.054
stencil/dagger/N=256 (block 256)/alloc (neighbors Wrap) 17.7 ± 0.79 ms 14.9 ± 0.27 ms 1.19 ± 0.057
stencil/dagger/N=256 (block 256)/assign (const) 2.68 ± 0.032 ms 2.54 ± 0.047 ms 1.06 ± 0.023
stencil/dagger/N=256 (block 256)/multi-expr 5.09 ± 0.26 ms 4.47 ± 0.26 ms 1.14 ± 0.088
stencil/dagger/N=256 (block 256)/neighbors (Clamp) 13.9 ± 0.4 ms 14.1 ± 0.28 ms 0.979 ± 0.035
stencil/dagger/N=256 (block 256)/neighbors (Pad) 13.9 ± 0.67 ms 13.7 ± 0.93 ms 1.02 ± 0.085
stencil/dagger/N=256 (block 256)/neighbors (Reflect) 13.9 ± 0.15 ms 13.7 ± 0.61 ms 1.02 ± 0.047
stencil/dagger/N=256 (block 256)/neighbors (Wrap) 13.6 ± 0.12 ms 14 ± 0.13 ms 0.971 ± 0.012
stencil/dagger/N=256 (block 256)/update (+) 3 ± 0.72 ms 3.19 ± 0.68 ms 0.942 ± 0.3
time_to_load 1.06 ± 0.027 s 1.05 ± 0.016 s 1.01 ± 0.03

Plots

⚠️ Regressions (> 25.0%)

  • array/dagger/N=256 (block 256)/transpose (permutedims): +28.2%

Improvements (> 25.0% faster)

  • stencil/dagger/N=1024 (block 512)/alloc (neighbors Wrap): -46.0%

Full results and plots (download the benchmark-results artifact).

@jpsamaroo jpsamaroo merged commit 97416f2 into master Jul 6, 2026
8 of 23 checks passed
@jpsamaroo jpsamaroo deleted the jps/linuxperf branch July 6, 2026 20:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant