un-inception/reports/4.3.2/perf.md

4.1 KiB

Performance Report: 4.3.2

Generated: 2026-02-08T18:34:37Z Pipeline: #15692

Summary

Metric Value
Total Tests 860
Passed 824
Failed 36
Pass Rate 95.8%
Languages 43
Avg Duration 132s
Slowest crystal (314s)
Fastest c (66s)

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 217
Rate Limit (429) 207
Server Error (5xx) 0
Timeout 10
Connection 0
Tests Needing Retries 113

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:

  • CRYSTAL and ERLANG are outliers at 90+ seconds
  • Most languages cluster between 20-40 seconds
  • Compiled languages (red) tend to be faster than interpreted (blue)
  • C is the fastest at 66 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 (crystal, erlang)

Speed Leaders

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

Speed Leaders

Slowest (left): CRYSTAL, ERLANG, ELIXIR, RUST, GROOVY Fastest (right): C, CPP, FSHARP, PERL, CSHARP


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 - crystal and erlang 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
crystal Failed 314s
erlang Failed 242s
elixir Failed 218s
rust Failed 217s
groovy Failed 196s
javascript Failed 193s
deno Failed 186s
r Passed 179s
objc Failed 176s
forth Failed 173s
go Failed 165s
kotlin Failed 161s
raku Failed 159s
d Failed 152s
php Passed 151s
java Passed 150s
scheme Failed 132s
dart Failed 131s
fortran Failed 127s
clojure Failed 123s
haskell Failed 121s
bash Passed 117s
nim Failed 114s
v Passed 110s
awk Failed 109s
zig Failed 107s
typescript Failed 106s
julia Failed 106s
prolog Passed 102s
ruby Passed 101s
commonlisp Failed 97s
powershell Failed 93s
lua Failed 89s
ocaml Failed 87s
python Passed 85s
dotnet Failed 82s
tcl Failed 80s
cobol Failed 79s
csharp Failed 78s
perl Passed 77s
fsharp Failed 75s
cpp Passed 67s
c Passed 66s

Report generated by UN Inception CI pipeline