un-inception/reports/4.2.38/perf.md

4.1 KiB

Performance Report: 4.2.38

Generated: 2026-01-29T15:57:07Z Pipeline: #13476

Summary

Metric Value
Total Tests 832
Passed 756
Failed 76
Pass Rate 90.8%
Languages 43
Avg Duration 396s
Slowest php (1047s)
Fastest awk (25s)

API Health

Tracks transient errors encountered during test execution. Tests retry on failures to ensure accurate results.

Metric Value
Health Score 0/100
Total Retries 222
Rate Limit (429) 0
Server Error (5xx) 125
Timeout 0
Connection 0
Tests Needing Retries 44

Interpretation:

  • Score 95-100: API is healthy, minimal transient errors
  • Score 80-94: Some API instability, but tests recovered via retry
  • Score < 80: Significant API issues affecting test reliability

Test Duration by Language

The primary performance metric - how long each language takes to run its full test suite (15 tests per language).

Duration by Language

Key observations:

  • PHP and RAKU are outliers at 90+ seconds
  • Most languages cluster between 20-40 seconds
  • Compiled languages (red) tend to be faster than interpreted (blue)
  • AWK is the fastest at 25 seconds

Compiled vs Interpreted

Comparing performance between compiled languages (C, Go, Rust, etc.) and interpreted languages (Python, Ruby, JavaScript, etc.).

Category Comparison

Findings:

  • 20 compiled languages vs 22 interpreted
  • Compiled languages have lower median execution time
  • Interpreted languages show more variance (wider spread)
  • The white diamond marks the mean for each category

Duration Distribution

Histogram showing how test durations are distributed across all 43 languages.

Duration Histogram

Distribution analysis:

  • Most languages complete in 20-35 seconds (the peak)
  • Mean (green dashed) and median (blue dotted) are close together
  • Long tail on the right from slow outliers (php, raku)

Speed Leaders

Side-by-side comparison of the 10 slowest and 10 fastest languages.

Speed Leaders

Slowest (left): PHP, RAKU, R, BASH, CLOJURE Fastest (right): AWK, POWERSHELL, RUBY, ERLANG, OBJC


Queue vs Execution Time

Scatter plot showing the relationship between CI queue wait time and actual test execution time.

Queue vs Execution

Notes:

  • Queue time is how long the job waited for a runner
  • Most jobs had similar queue times (clustered vertically)
  • Outliers labeled - php and raku took longest to execute regardless of queue time

Dashboard

Summary dashboard combining key metrics and visualizations.

Dashboard


Raw Data

Per-Language Performance

Language Status Duration
php Failed 1047s
raku Failed 951s
r Failed 904s
bash Failed 902s
clojure Failed 898s
commonlisp Failed 806s
c Failed 799s
python Failed 796s
deno Failed 788s
perl Failed 688s
javascript Failed 675s
typescript Failed 666s
lua Failed 627s
scheme Failed 581s
cpp Passed 515s
crystal Failed 472s
tcl Failed 396s
elixir Failed 369s
groovy Failed 336s
ocaml Failed 297s
zig Failed 280s
java Failed 278s
go Failed 239s
cobol Failed 237s
rust Failed 212s
fsharp Failed 209s
dotnet Failed 192s
forth Failed 191s
prolog Passed 188s
haskell Passed 182s
julia Failed 174s
dart Failed 171s
fortran Failed 170s
v Passed 133s
d Passed 123s
nim Passed 117s
kotlin Failed 113s
csharp Failed 107s
objc Failed 85s
erlang Failed 48s
ruby Failed 44s
powershell Failed 35s
awk Failed 25s

Report generated by UN Inception CI pipeline