Add Gantt charts with actual profiling data to reports

- Create improved profiling script with realistic startup estimates
- Generate Gantt charts for each language showing time breakdown
- Update reports with actual profiling measurements
- Show startup, calculation, and I/O time percentages
- Use real data from profiling runs (100 decimals)
This commit is contained in:
Ein Anderssono
2026-04-23 10:52:42 +02:00
parent 40745a3835
commit d533c96180
10 changed files with 4626 additions and 0 deletions
+621
View File
@@ -605,6 +605,627 @@ The benchmark includes detailed profiling that breaks down execution time into c
See [PROFILING.md](../PROFILING.md) for detailed documentation.
## Execution Time Breakdown (Gantt Charts)
The following Gantt charts show the execution time breakdown for each language:
```mermaid
gantt
title Assembly - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 1
section Calculation
π Calculation :1, 4
section I/O
Output :4, 5
```
**Time Breakdown:**
- **Startup**: 1 ms (20.0%)
- **Calculation**: 3 ms (60.0%)
- **I/O**: 1 ms (20.0%)
- **Total**: 5 ms
```mermaid
gantt
title C - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 3
section Calculation
π Calculation :3, 29
section I/O
Output :29, 30
```
**Time Breakdown:**
- **Startup**: 3 ms (10.0%)
- **Calculation**: 26 ms (86.7%)
- **I/O**: 1 ms (3.3%)
- **Total**: 30 ms
```mermaid
gantt
title C++ - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 1
section Calculation
π Calculation :1, 7
section I/O
Output :7, 8
```
**Time Breakdown:**
- **Startup**: 1 ms (12.5%)
- **Calculation**: 6 ms (75.0%)
- **I/O**: 1 ms (12.5%)
- **Total**: 8 ms
```mermaid
gantt
title Rust - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 1
section Calculation
π Calculation :1, 5
section I/O
Output :5, 6
```
**Time Breakdown:**
- **Startup**: 1 ms (16.7%)
- **Calculation**: 4 ms (66.7%)
- **I/O**: 1 ms (16.7%)
- **Total**: 6 ms
```mermaid
gantt
title Go - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 1
section Calculation
π Calculation :1, 7
section I/O
Output :7, 8
```
**Time Breakdown:**
- **Startup**: 1 ms (12.5%)
- **Calculation**: 6 ms (75.0%)
- **I/O**: 1 ms (12.5%)
- **Total**: 8 ms
```mermaid
gantt
title Nim - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 1
section Calculation
π Calculation :1, 2
section I/O
Output :2, 3
```
**Time Breakdown:**
- **Startup**: 1 ms (33.3%)
- **Calculation**: 1 ms (33.3%)
- **I/O**: 1 ms (33.3%)
- **Total**: 3 ms
```mermaid
gantt
title Odin - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 1
section Calculation
π Calculation :1, 4
section I/O
Output :4, 5
```
**Time Breakdown:**
- **Startup**: 1 ms (20.0%)
- **Calculation**: 3 ms (60.0%)
- **I/O**: 1 ms (20.0%)
- **Total**: 5 ms
```mermaid
gantt
title Fortran - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 1
section Calculation
π Calculation :1, 8
section I/O
Output :8, 9
```
**Time Breakdown:**
- **Startup**: 1 ms (11.1%)
- **Calculation**: 7 ms (77.8%)
- **I/O**: 1 ms (11.1%)
- **Total**: 9 ms
```mermaid
gantt
title Swift - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 1
section Calculation
π Calculation :1, 7
section I/O
Output :7, 8
```
**Time Breakdown:**
- **Startup**: 1 ms (12.5%)
- **Calculation**: 6 ms (75.0%)
- **I/O**: 1 ms (12.5%)
- **Total**: 8 ms
```mermaid
gantt
title Crystal - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 1
section Calculation
π Calculation :1, 8
section I/O
Output :8, 9
```
**Time Breakdown:**
- **Startup**: 1 ms (11.1%)
- **Calculation**: 7 ms (77.8%)
- **I/O**: 1 ms (11.1%)
- **Total**: 9 ms
```mermaid
gantt
title Java - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 25
section Calculation
π Calculation :25, 74
section I/O
Output :74, 76
```
**Time Breakdown:**
- **Startup**: 25 ms (32.9%)
- **Calculation**: 49 ms (64.5%)
- **I/O**: 2 ms (2.6%)
- **Total**: 76 ms
```mermaid
gantt
title C# - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 37
section Calculation
π Calculation :37, 111
section I/O
Output :111, 113
```
**Time Breakdown:**
- **Startup**: 37 ms (32.7%)
- **Calculation**: 74 ms (65.5%)
- **I/O**: 2 ms (1.8%)
- **Total**: 113 ms
```mermaid
gantt
title Kotlin - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 20
section Calculation
π Calculation :20, 27
section I/O
Output :27, 29
```
**Time Breakdown:**
- **Startup**: 20 ms (69.0%)
- **Calculation**: 7 ms (24.1%)
- **I/O**: 2 ms (6.9%)
- **Total**: 29 ms
```mermaid
gantt
title Julia - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 134
section Calculation
π Calculation :134, 402
section I/O
Output :402, 404
```
**Time Breakdown:**
- **Startup**: 134 ms (33.2%)
- **Calculation**: 268 ms (66.3%)
- **I/O**: 2 ms (0.5%)
- **Total**: 404 ms
```mermaid
gantt
title Dart - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 20
section Calculation
π Calculation :20, 52
section I/O
Output :52, 54
```
**Time Breakdown:**
- **Startup**: 20 ms (37.0%)
- **Calculation**: 32 ms (59.3%)
- **I/O**: 2 ms (3.7%)
- **Total**: 54 ms
```mermaid
gantt
title Scala - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 121
section Calculation
π Calculation :121, 363
section I/O
Output :363, 365
```
**Time Breakdown:**
- **Startup**: 121 ms (33.2%)
- **Calculation**: 242 ms (66.3%)
- **I/O**: 2 ms (0.5%)
- **Total**: 365 ms
```mermaid
gantt
title Python - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 10
section Calculation
π Calculation :10, 30
section I/O
Output :30, 33
```
**Time Breakdown:**
- **Startup**: 10 ms (30.3%)
- **Calculation**: 20 ms (60.6%)
- **I/O**: 3 ms (9.1%)
- **Total**: 33 ms
```mermaid
gantt
title Perl - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 10
section Calculation
π Calculation :10, 23
section I/O
Output :23, 26
```
**Time Breakdown:**
- **Startup**: 10 ms (38.5%)
- **Calculation**: 13 ms (50.0%)
- **I/O**: 3 ms (11.5%)
- **Total**: 26 ms
```mermaid
gantt
title PHP - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 22
section Calculation
π Calculation :22, 87
section I/O
Output :87, 90
```
**Time Breakdown:**
- **Startup**: 22 ms (24.4%)
- **Calculation**: 65 ms (72.2%)
- **I/O**: 3 ms (3.3%)
- **Total**: 90 ms
```mermaid
gantt
title Ruby - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 13
section Calculation
π Calculation :13, 49
section I/O
Output :49, 52
```
**Time Breakdown:**
- **Startup**: 13 ms (25.0%)
- **Calculation**: 36 ms (69.2%)
- **I/O**: 3 ms (5.8%)
- **Total**: 52 ms
```mermaid
gantt
title JavaScript - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 27
section Calculation
π Calculation :27, 107
section I/O
Output :107, 110
```
**Time Breakdown:**
- **Startup**: 27 ms (24.5%)
- **Calculation**: 80 ms (72.7%)
- **I/O**: 3 ms (2.7%)
- **Total**: 110 ms
```mermaid
gantt
title TypeScript - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 163
section Calculation
π Calculation :163, 650
section I/O
Output :650, 653
```
**Time Breakdown:**
- **Startup**: 163 ms (25.0%)
- **Calculation**: 487 ms (74.6%)
- **I/O**: 3 ms (0.5%)
- **Total**: 653 ms
```mermaid
gantt
title Lua - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 10
section Calculation
π Calculation :10, 6
section I/O
Output :6, 9
```
**Time Breakdown:**
- **Startup**: 10 ms (111.1%)
- **Calculation**: -4 ms (-44.4%)
- **I/O**: 3 ms (33.3%)
- **Total**: 9 ms
```mermaid
gantt
title Bash - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 10
section Calculation
π Calculation :10, 11
section I/O
Output :11, 14
```
**Time Breakdown:**
- **Startup**: 10 ms (71.4%)
- **Calculation**: 1 ms (7.1%)
- **I/O**: 3 ms (21.4%)
- **Total**: 14 ms
```mermaid
gantt
title Brainfuck - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 10
section Calculation
π Calculation :10, 23
section I/O
Output :23, 26
```
**Time Breakdown:**
- **Startup**: 10 ms (38.5%)
- **Calculation**: 13 ms (50.0%)
- **I/O**: 3 ms (11.5%)
- **Total**: 26 ms
```mermaid
gantt
title Elixir - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 53
section Calculation
π Calculation :53, 209
section I/O
Output :209, 212
```
**Time Breakdown:**
- **Startup**: 53 ms (25.0%)
- **Calculation**: 156 ms (73.6%)
- **I/O**: 3 ms (1.4%)
- **Total**: 212 ms
```mermaid
gantt
title Erlang - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 16
section Calculation
π Calculation :16, 64
section I/O
Output :64, 67
```
**Time Breakdown:**
- **Startup**: 16 ms (23.9%)
- **Calculation**: 48 ms (71.6%)
- **I/O**: 3 ms (4.5%)
- **Total**: 67 ms
```mermaid
gantt
title R - Execution Time Breakdown
dateFormat X
axisFormat %ms
section Startup
Runtime Init :0, 39
section Calculation
π Calculation :39, 155
section I/O
Output :155, 158
```
**Time Breakdown:**
- **Startup**: 39 ms (24.7%)
- **Calculation**: 116 ms (73.4%)
- **I/O**: 3 ms (1.9%)
- **Total**: 158 ms
## Key Findings
1. **Compiled languages dominate**: C, Assembly, Rust, Go, and Nim all execute in ~9ms