Skip to content

chore(winit): Switch from hooking to catch unwind#2000

Open
marc2332 wants to merge 2 commits into
mainfrom
chore/catch-unwind-instead-of-hook
Open

chore(winit): Switch from hooking to catch unwind#2000
marc2332 wants to merge 2 commits into
mainfrom
chore/catch-unwind-instead-of-hook

Conversation

@marc2332

@marc2332 marc2332 commented Jul 5, 2026

Copy link
Copy Markdown
Owner

Closes #1999

This way users can catch the panics themselves, and if not then Freya does.

@marc2332

marc2332 commented Jul 5, 2026

Copy link
Copy Markdown
Owner Author

Note for myself: I really should wrap it over all the launch function

@codecov

codecov Bot commented Jul 5, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 0% with 4 lines in your changes missing coverage. Please review.
✅ Project coverage is 62.15%. Comparing base (744094a) to head (54db5a9).
⚠️ Report is 2 commits behind head on main.

Files with missing lines Patch % Lines
crates/freya-winit/src/lib.rs 0.00% 4 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2000      +/-   ##
==========================================
+ Coverage   62.11%   62.15%   +0.03%     
==========================================
  Files         334      334              
  Lines       43593    43635      +42     
==========================================
+ Hits        27079    27120      +41     
- Misses      16514    16515       +1     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions

github-actions Bot commented Jul 5, 2026

Copy link
Copy Markdown

Performance Comparison mainchore/catch-unwind-instead-of-hook

Total Elapsed Time: 66.43ms → 66.40ms (-0.0%)
CPU Baseline: 268.31µs → 240.79µs (-10.3%)
Benchmark ID: alloc

timing - Function execution time metrics.

+-----------------------------------+--------------------------+---------------------------------+----------------------------------+---------------------------------+---------------------------------+---------------------------------+---------------------------------+------------------------------+
| Function                          | Calls                    | Avg                             | P33                              | P66                             | P95                             | P99                             | Total                           | % Total                      |
+-----------------------------------+--------------------------+---------------------------------+----------------------------------+---------------------------------+---------------------------------+---------------------------------+---------------------------------+------------------------------+
| dev_perf::main                    | 1 → 1 (+0.0%)            | 66.24ms → 66.14ms (-0.2%)       | 66.26ms → 66.16ms (-0.2%)        | 66.26ms → 66.16ms (-0.2%)       | 66.26ms → 66.16ms (-0.2%)       | 66.26ms → 66.16ms (-0.2%)       | 66.25ms → 66.15ms (-0.2%)       | 100.00% → 100.00% (+0.0%)    |
+-----------------------------------+--------------------------+---------------------------------+----------------------------------+---------------------------------+---------------------------------+---------------------------------+---------------------------------+------------------------------+
| runner::run_scope                 | 32025 → 32025 (+0.0%)    | 1.36µs → 1.34µs (-1.5%)         | 17.00ns → 16.00ns (-5.9%)        | 17.00ns → 17.00ns (+0.0%)       | 18.00ns → 18.00ns (+0.0%)       | 18.00ns → 22.00ns (+22.2%) ⚠️   | 43.64ms → 42.83ms (-1.9%)       | 65.87% → 64.75% (-1.7%)      |
+-----------------------------------+--------------------------+---------------------------------+----------------------------------+---------------------------------+---------------------------------+---------------------------------+---------------------------------+------------------------------+
| runner::sync_and_update           | 3 → 3 (+0.0%)            | 12.15ms → 12.00ms (-1.2%)       | 7.01ms → 7.23ms (+3.1%)          | 9.46ms → 9.29ms (-1.8%)         | 19.99ms → 19.51ms (-2.4%)       | 19.99ms → 19.51ms (-2.4%)       | 36.44ms → 36.02ms (-1.2%)       | 55.01% → 54.45% (-1.0%)      |
+-----------------------------------+--------------------------+---------------------------------+----------------------------------+---------------------------------+---------------------------------+---------------------------------+---------------------------------+------------------------------+
| tree::apply_mutations             | 3 → 3 (+0.0%)            | 9.49ms → 9.67ms (+1.9%)         | 1.72ms → 2.09ms (+21.5%) ⚠️      | 8.86ms → 8.43ms (-4.9%)         | 17.89ms → 18.50ms (+3.4%)       | 17.89ms → 18.50ms (+3.4%)       | 28.46ms → 29.00ms (+1.9%)       | 42.95% → 43.84% (+2.1%)      |
+-----------------------------------+--------------------------+---------------------------------+----------------------------------+---------------------------------+---------------------------------+---------------------------------+---------------------------------+------------------------------+
| path_element::from_element        | 32025 → 32025 (+0.0%)    | 447.00ns → 449.00ns (+0.4%)     | 46.00ns → 46.00ns (+0.0%)        | 47.00ns → 47.00ns (+0.0%)       | 68.00ns → 66.00ns (-2.9%)       | 84.00ns → 78.00ns (-7.1%)       | 14.34ms → 14.39ms (+0.3%)       | 21.65% → 21.76% (+0.5%)      |
+-----------------------------------+--------------------------+---------------------------------+----------------------------------+---------------------------------+---------------------------------+---------------------------------+---------------------------------+------------------------------+
| path_element::diff                | 32025 → 32025 (+0.0%)    | 367.00ns → 376.00ns (+2.5%)     | 44.00ns → 44.00ns (+0.0%)        | 52.00ns → 52.00ns (+0.0%)       | 131.00ns → 137.00ns (+4.6%)     | 694.00ns → 557.00ns (-19.7%)    | 11.76ms → 12.05ms (+2.5%)       | 17.75% → 18.21% (+2.6%)      |
+-----------------------------------+--------------------------+---------------------------------+----------------------------------+---------------------------------+---------------------------------+---------------------------------+---------------------------------+------------------------------+
| mutations run                     | 3 → 3 (+0.0%)            | 3.89ms → 3.87ms (-0.5%)         | 3.82µs → 3.58µs (-6.3%)          | 2.83ms → 3.17ms (+12.0%)        | 8.86ms → 8.43ms (-4.9%)         | 8.86ms → 8.43ms (-4.9%)         | 11.69ms → 11.60ms (-0.8%)       | 17.64% → 17.53% (-0.6%)      |
+-----------------------------------+--------------------------+---------------------------------+----------------------------------+---------------------------------+---------------------------------+---------------------------------+---------------------------------+------------------------------+
| runner::apply_diff                | 6 → 6 (+0.0%)            | 1.44ms → 1.46ms (+1.4%)         | 4.65µs → 5.05µs (+8.6%)          | 2.17ms → 2.13ms (-1.8%)         | 2.24ms → 2.39ms (+6.7%)         | 2.24ms → 2.39ms (+6.7%)         | 8.62ms → 8.77ms (+1.7%)         | 13.00% → 13.26% (+2.0%)      |
+-----------------------------------+--------------------------+---------------------------------+----------------------------------+---------------------------------+---------------------------------+---------------------------------+---------------------------------+------------------------------+
| Scope Rendering                   | 2 → 2 (+0.0%)            | 4.04ms → 3.70ms (-8.4%)         | 3.59ms → 3.45ms (-3.9%)          | 4.49ms → 3.96ms (-11.8%)        | 4.49ms → 3.96ms (-11.8%)        | 4.49ms → 3.96ms (-11.8%)        | 8.07ms → 7.41ms (-8.2%)         | 12.19% → 11.20% (-8.1%)      |
+-----------------------------------+--------------------------+---------------------------------+----------------------------------+---------------------------------+---------------------------------+---------------------------------+---------------------------------+------------------------------+
| dirty run                         | 3 → 3 (+0.0%)            | 1.94ms → 2.01ms (+3.6%)         | 418.00ns → 404.00ns (-3.3%)      | 1.12µs → 1.98µs (+76.8%) ⚠️     | 5.83ms → 6.04ms (+3.6%)         | 5.83ms → 6.04ms (+3.6%)         | 5.83ms → 6.04ms (+3.6%)         | 8.80% → 9.13% (+3.8%)        |
+-----------------------------------+--------------------------+---------------------------------+----------------------------------+---------------------------------+---------------------------------+---------------------------------+---------------------------------+------------------------------+
| text style cascade                | 3 → 3 (+0.0%)            | 2.01ms → 1.94ms (-3.5%)         | 122.00ns → 66.00ns (-45.9%) 🚀   | 1.08µs → 1.57µs (+45.4%) ⚠️     | 6.03ms → 5.82ms (-3.5%)         | 6.03ms → 5.82ms (-3.5%)         | 6.03ms → 5.82ms (-3.5%)         | 9.11% → 8.80% (-3.4%)        |
+-----------------------------------+--------------------------+---------------------------------+----------------------------------+---------------------------------+---------------------------------+---------------------------------+---------------------------------+------------------------------+
| layer cascade                     | 3 → 3 (+0.0%)            | 1.57ms → 1.80ms (+14.6%)        | 135.00ns → 179.00ns (+32.6%) ⚠️  | 1.71ms → 2.08ms (+21.6%) ⚠️     | 3.00ms → 3.33ms (+11.0%)        | 3.00ms → 3.33ms (+11.0%)        | 4.71ms → 5.41ms (+14.9%)        | 7.11% → 8.18% (+15.0%)       |
+-----------------------------------+--------------------------+---------------------------------+----------------------------------+---------------------------------+---------------------------------+---------------------------------+---------------------------------+------------------------------+
| runner::handle_events_immediately | 3 → 3 (+0.0%)            | 247.00ns → 274.00ns (+10.9%)    | 196.00ns → 207.00ns (+5.6%)      | 269.00ns → 305.00ns (+13.4%)    | 276.00ns → 310.00ns (+12.3%)    | 276.00ns → 310.00ns (+12.3%)    | 741.00ns → 822.00ns (+10.9%)    | 0.00% → 0.00% (+0.0%)        |
+-----------------------------------+--------------------------+---------------------------------+----------------------------------+---------------------------------+---------------------------------+---------------------------------+---------------------------------+------------------------------+
| effect cascade                    | 3 → 3 (+0.0%)            | 138.00ns → 134.00ns (-2.9%)     | 126.00ns → 109.00ns (-13.5%)     | 144.00ns → 131.00ns (-9.0%)     | 145.00ns → 162.00ns (+11.7%)    | 145.00ns → 162.00ns (+11.7%)    | 415.00ns → 402.00ns (-3.1%)     | 0.00% → 0.00% (+0.0%)        |
+-----------------------------------+--------------------------+---------------------------------+----------------------------------+---------------------------------+---------------------------------+---------------------------------+---------------------------------+------------------------------+

alloc-bytes - Exclusive allocation bytes by each function (excluding nested calls).

+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| Function                          | Calls                    | Avg                          | P33                            | P66                          | P95                            | P99                            | Total                          | % Total                    |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| Scope Rendering                   | 2 → 2 (+0.0%)            | 7.0 MB → 7.0 MB (+0.0%)      | 7.0 MB → 7.0 MB (+0.0%)        | 7.0 MB → 7.0 MB (+0.0%)      | 7.0 MB → 7.0 MB (+0.0%)        | 7.0 MB → 7.0 MB (+0.0%)        | 13.9 MB → 13.9 MB (+0.0%)      | 22.39% → 22.39% (+0.0%)    |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| runner::apply_diff                | 6 → 6 (+0.0%)            | 1.6 MB → 1.6 MB (+0.0%)      | 604 B → 604 B (+0.0%)          | 1.4 MB → 1.4 MB (+0.0%)      | 3.3 MB → 3.3 MB (+0.0%)        | 3.3 MB → 3.3 MB (+0.0%)        | 9.4 MB → 9.4 MB (+0.0%)        | 15.08% → 15.08% (+0.0%)    |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| runner::sync_and_update           | 3 → 3 (+0.0%)            | 2.8 MB → 2.8 MB (+0.0%)      | 1.1 KB → 1.1 KB (+0.0%)        | 1.4 MB → 1.4 MB (+0.0%)      | 7.0 MB → 7.0 MB (+0.0%)        | 7.0 MB → 7.0 MB (+0.0%)        | 8.4 MB → 8.4 MB (+0.0%)        | 13.45% → 13.45% (+0.0%)    |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| text style cascade                | 3 → 3 (+0.0%)            | 2.8 MB → 2.8 MB (+0.0%)      | 84 B → 84 B (+0.0%)            | 8.3 MB → 8.3 MB (+0.0%)      | 8.3 MB → 8.3 MB (+0.0%)        | 8.3 MB → 8.3 MB (+0.0%)        | 8.3 MB → 8.3 MB (+0.0%)        | 13.31% → 13.31% (+0.0%)    |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| mutations run                     | 3 → 3 (+0.0%)            | 2.5 MB → 2.5 MB (+0.0%)      | 64 B → 64 B (+0.0%)            | 1.6 MB → 1.6 MB (+0.0%)      | 6.0 MB → 6.0 MB (+0.0%)        | 6.0 MB → 6.0 MB (+0.0%)        | 7.6 MB → 7.6 MB (+0.0%)        | 12.16% → 12.16% (+0.0%)    |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| dirty run                         | 3 → 3 (+0.0%)            | 1.4 MB → 1.4 MB (+0.0%)      | 64 B → 64 B (+0.0%)            | 4.2 MB → 4.2 MB (+0.0%)      | 4.2 MB → 4.2 MB (+0.0%)        | 4.2 MB → 4.2 MB (+0.0%)        | 4.2 MB → 4.2 MB (+0.0%)        | 6.73% → 6.73% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| layer cascade                     | 3 → 3 (+0.0%)            | 1.2 MB → 1.2 MB (+0.0%)      | 874.5 KB → 874.5 KB (+0.0%)    | 2.8 MB → 2.8 MB (+0.0%)      | 2.8 MB → 2.8 MB (+0.0%)        | 2.8 MB → 2.8 MB (+0.0%)        | 3.7 MB → 3.7 MB (+0.0%)        | 5.95% → 5.95% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| path_element::from_element        | 32025 → 32025 (+0.0%)    | 107 B → 107 B (+0.0%)        | 12 B → 12 B (+0.0%)            | 12 B → 12 B (+0.0%)          | 12 B → 12 B (+0.0%)            | 12 B → 12 B (+0.0%)            | 3.3 MB → 3.3 MB (+0.0%)        | 5.30% → 5.30% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| path_element::diff                | 32025 → 32025 (+0.0%)    | 104 B → 104 B (+0.0%)        | 12 B → 12 B (+0.0%)            | 12 B → 12 B (+0.0%)          | 12 B → 12 B (+0.0%)            | 12 B → 12 B (+0.0%)            | 3.2 MB → 3.2 MB (+0.0%)        | 5.12% → 5.12% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| tree::apply_mutations             | 3 → 3 (+0.0%)            | 96.4 KB → 96.4 KB (+0.0%)    | 52 B → 52 B (+0.0%)            | 52 B → 52 B (+0.0%)          | 289.0 KB → 289.0 KB (+0.0%)    | 289.0 KB → 289.0 KB (+0.0%)    | 289.1 KB → 289.1 KB (+0.0%)    | 0.45% → 0.45% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| dev_perf::main                    | 1 → 1 (+0.0%)            | 35.9 KB → 35.9 KB (+0.0%)    | 35.9 KB → 35.9 KB (+0.0%)      | 35.9 KB → 35.9 KB (+0.0%)    | 35.9 KB → 35.9 KB (+0.0%)      | 35.9 KB → 35.9 KB (+0.0%)      | 35.9 KB → 35.9 KB (+0.0%)      | 0.06% → 0.06% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| runner::run_scope                 | 32025 → 32025 (+0.0%)    | 0 B → 0 B (+0.0%)            | 52 B → 52 B (+0.0%)            | 88 B → 88 B (+0.0%)          | 492 B → 492 B (+0.0%)          | 492 B → 492 B (+0.0%)          | 1.2 KB → 1.2 KB (+0.0%)        | 0.00% → 0.00% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| effect cascade                    | 3 → 3 (+0.0%)            | 0 B → 0 B (+0.0%)            | 0 B → 0 B (+0.0%)              | 0 B → 0 B (+0.0%)            | 0 B → 0 B (+0.0%)              | 0 B → 0 B (+0.0%)              | 0 B → 0 B (+0.0%)              | 0.00% → 0.00% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+
| runner::handle_events_immediately | 3 → 3 (+0.0%)            | 0 B → 0 B (+0.0%)            | 0 B → 0 B (+0.0%)              | 0 B → 0 B (+0.0%)            | 0 B → 0 B (+0.0%)              | 0 B → 0 B (+0.0%)              | 0 B → 0 B (+0.0%)              | 0.00% → 0.00% (+0.0%)      |
+-----------------------------------+--------------------------+------------------------------+--------------------------------+------------------------------+--------------------------------+--------------------------------+--------------------------------+----------------------------+

Threads

Total Alloc: 683.6 KB → 786.2 KB (+15.0%)
Total Dealloc: 624 B → 672 B (+7.7%)
Mem Diff: 683.0 KB → 785.6 KB (+15.0%)

+--------------------+--------------------------+-----------+----------------------------+--------------------------+------------------------------+
| Thread             | CPU % Avg                | CPU % Max | Alloc                      | Dealloc                  | Mem Diff                     |
+--------------------+--------------------------+-----------+----------------------------+--------------------------+------------------------------+
| hp-server          | 0.00% → 0.00% (+0.0%)    |           | 9 B → 624 B (+6833.3%) ⚠️  | 24 B → 24 B (+0.0%)      | -15 B → 600 B (+4100.0%) ⚠️  |
+--------------------+--------------------------+-----------+----------------------------+--------------------------+------------------------------+
| hp-functions       | 0.00% → 0.00% (+0.0%)    |           |                            |                          |                              |
+--------------------+--------------------------+-----------+----------------------------+--------------------------+------------------------------+
| hp-threads         | 0.00% → 0.00% (+0.0%)    |           |                            |                          |                              |
+--------------------+--------------------------+-----------+----------------------------+--------------------------+------------------------------+
| 🆕 hp-cpu-baseline | 0.00% → 0.00% (+0.0%)    |           | 0 B → 15 B (+100.0%) ⚠️    | 0 B → 24 B (+100.0%) ⚠️  | 0 B → -9 B (+100.0%) ⚠️      |
+--------------------+--------------------------+-----------+----------------------------+--------------------------+------------------------------+

Generated with hotpath-rs

@github-actions

github-actions Bot commented Jul 5, 2026

Copy link
Copy Markdown

Performance Comparison mainchore/catch-unwind-instead-of-hook

Total Elapsed Time: 59.45ms → 60.92ms (+2.5%)
CPU Baseline: 232.67µs → 250.78µs (+7.8%)
Benchmark ID: timing

timing - Execution duration of functions.

+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| Function                          | Calls                    | Avg                              | P33                               | P66                              | P95                              | P99                              | Total                          | % Total                      |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| dev_perf::main                    | 1 → 1 (+0.0%)            | 59.23ms → 60.70ms (+2.5%)        | 59.24ms → 60.72ms (+2.5%)         | 59.24ms → 60.72ms (+2.5%)        | 59.24ms → 60.72ms (+2.5%)        | 59.24ms → 60.72ms (+2.5%)        | 59.23ms → 60.70ms (+2.5%)      | 100.00% → 100.00% (+0.0%)    |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| runner::run_scope                 | 32025 → 32025 (+0.0%)    | 1.14µs → 1.16µs (+1.8%)          | 16.00ns → 16.00ns (+0.0%)         | 17.00ns → 16.00ns (-5.9%)        | 18.00ns → 17.00ns (-5.6%)        | 18.00ns → 18.00ns (+0.0%)        | 36.53ms → 37.28ms (+2.1%)      | 61.68% → 61.42% (-0.4%)      |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| runner::sync_and_update           | 3 → 3 (+0.0%)            | 10.18ms → 10.49ms (+3.0%)        | 5.99ms → 6.18ms (+3.2%)           | 7.92ms → 8.25ms (+4.2%)          | 16.65ms → 17.04ms (+2.3%)        | 16.65ms → 17.04ms (+2.3%)        | 30.55ms → 31.46ms (+3.0%)      | 51.59% → 51.83% (+0.5%)      |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| tree::apply_mutations             | 3 → 3 (+0.0%)            | 9.23ms → 9.43ms (+2.2%)          | 1.68ms → 1.82ms (+8.3%)           | 7.55ms → 7.87ms (+4.2%)          | 18.48ms → 18.60ms (+0.6%)        | 18.48ms → 18.60ms (+0.6%)        | 27.70ms → 28.28ms (+2.1%)      | 46.77% → 46.59% (-0.4%)      |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| mutations run                     | 3 → 3 (+0.0%)            | 3.80ms → 3.92ms (+3.2%)          | 3.37µs → 4.04µs (+19.9%)          | 3.85ms → 3.87ms (+0.5%)          | 7.55ms → 7.87ms (+4.2%)          | 7.55ms → 7.87ms (+4.2%)          | 11.40ms → 11.75ms (+3.1%)      | 19.25% → 19.35% (+0.5%)      |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| path_element::diff                | 32025 → 32025 (+0.0%)    | 351.00ns → 351.00ns (+0.0%)      | 38.00ns → 38.00ns (+0.0%)         | 51.00ns → 51.00ns (+0.0%)        | 134.00ns → 137.00ns (+2.2%)      | 565.00ns → 632.00ns (+11.9%)     | 11.25ms → 11.24ms (-0.1%)      | 19.00% → 18.52% (-2.5%)      |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| path_element::from_element        | 32025 → 32025 (+0.0%)    | 286.00ns → 283.00ns (-1.0%)      | 21.00ns → 21.00ns (+0.0%)         | 22.00ns → 22.00ns (+0.0%)        | 27.00ns → 27.00ns (+0.0%)        | 48.00ns → 48.00ns (+0.0%)        | 9.18ms → 9.07ms (-1.2%)        | 15.50% → 14.94% (-3.6%)      |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| runner::apply_diff                | 6 → 6 (+0.0%)            | 1.22ms → 1.29ms (+5.7%)          | 7.14µs → 6.44µs (-9.8%)           | 1.74ms → 1.83ms (+5.2%)          | 2.14ms → 2.21ms (+3.3%)          | 2.14ms → 2.21ms (+3.3%)          | 7.34ms → 7.72ms (+5.2%)        | 12.39% → 12.72% (+2.7%)      |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| Scope Rendering                   | 2 → 2 (+0.0%)            | 3.69ms → 3.78ms (+2.4%)          | 3.59ms → 3.51ms (-2.2%)           | 3.80ms → 4.05ms (+6.6%)          | 3.80ms → 4.05ms (+6.6%)          | 3.80ms → 4.05ms (+6.6%)          | 7.38ms → 7.56ms (+2.4%)        | 12.47% → 12.45% (-0.2%)      |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| dirty run                         | 3 → 3 (+0.0%)            | 1.93ms → 1.92ms (-0.5%)          | 236.00ns → 642.00ns (+172.0%) ⚠️  | 1.05µs → 1.60µs (+52.4%) ⚠️      | 5.80ms → 5.76ms (-0.7%)          | 5.80ms → 5.76ms (-0.7%)          | 5.80ms → 5.76ms (-0.7%)        | 9.80% → 9.49% (-3.2%)        |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| text style cascade                | 3 → 3 (+0.0%)            | 1.82ms → 1.85ms (+1.6%)          | 27.00ns → 61.00ns (+125.9%) ⚠️    | 885.00ns → 1.24µs (+40.1%) ⚠️    | 5.45ms → 5.54ms (+1.7%)          | 5.45ms → 5.54ms (+1.7%)          | 5.45ms → 5.54ms (+1.7%)        | 9.21% → 9.13% (-0.9%)        |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| layer cascade                     | 3 → 3 (+0.0%)            | 1.64ms → 1.70ms (+3.7%)          | 62.00ns → 76.00ns (+22.6%) ⚠️     | 1.67ms → 1.82ms (+9.0%)          | 3.24ms → 3.28ms (+1.2%)          | 3.24ms → 3.28ms (+1.2%)          | 4.91ms → 5.09ms (+3.7%)        | 8.29% → 8.39% (+1.2%)        |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| effect cascade                    | 3 → 3 (+0.0%)            | 200.00ns → 375.00ns (+87.5%) ⚠️  | 115.00ns → 302.00ns (+162.6%) ⚠️  | 170.00ns → 318.00ns (+87.1%) ⚠️  | 315.00ns → 506.00ns (+60.6%) ⚠️  | 315.00ns → 506.00ns (+60.6%) ⚠️  | 600.00ns → 1.13µs (+88.3%) ⚠️  | 0.00% → 0.00% (+0.0%)        |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+
| runner::handle_events_immediately | 3 → 3 (+0.0%)            | 251.00ns → 260.00ns (+3.6%)      | 201.00ns → 194.00ns (-3.5%)       | 252.00ns → 270.00ns (+7.1%)      | 302.00ns → 316.00ns (+4.6%)      | 302.00ns → 316.00ns (+4.6%)      | 755.00ns → 780.00ns (+3.3%)    | 0.00% → 0.00% (+0.0%)        |
+-----------------------------------+--------------------------+----------------------------------+-----------------------------------+----------------------------------+----------------------------------+----------------------------------+--------------------------------+------------------------------+

Threads

+-----------------+---------------------------------------+-----------+
| Thread          | CPU % Avg                             | CPU % Max |
+-----------------+---------------------------------------+-----------+
| dev_perf        | 112559.70% → 630368.60% (+460.0%) ⚠️  |           |
+-----------------+---------------------------------------+-----------+
| hp-functions    | 0.00% → 0.00% (+0.0%)                 |           |
+-----------------+---------------------------------------+-----------+
| hp-threads      | 0.00% → 0.00% (+0.0%)                 |           |
+-----------------+---------------------------------------+-----------+
| hp-server       | 0.00% → 0.00% (+0.0%)                 |           |
+-----------------+---------------------------------------+-----------+
| hp-cpu-baseline | 0.00% → 0.00% (+0.0%)                 |           |
+-----------------+---------------------------------------+-----------+

Generated with hotpath-rs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Panic unwind crash

1 participant