Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reactivity v3 (Part 2) #626

Merged
merged 49 commits into from
Oct 6, 2023
Merged

Conversation

lukechu10
Copy link
Member

@lukechu10 lukechu10 commented Sep 15, 2023

This is the follow-up to #612.

Tasks:

  • Port sycamore, sycamore-core, sycamore-macro, sycamore-web, sycamore-futures.
  • Port sycamore-router and sycamore-router-macro
  • Port all examples
  • Add SSR utilities such as RootPool (Another PR).
  • Make sure Suspense still works and add Transition (Another PR).
  • Refactor reactivity to make memos reactive scopes as well.
  • Setup benchmarks
  • Write docs for new reactivity system!!!
  • Add some more tests
  • Remove old sycamore-reactive crate.
  • Decide what to do about store API and potentially remove sycamore-reactive-macro crate. (Removed for now)

@lukechu10 lukechu10 added C-enhancement Category: new feature or improvement to existing feature A-reactivity Area: reactivity and state handling BREAKING CHANGE Breaking changes introduced in this PR labels Sep 15, 2023
@lukechu10 lukechu10 added this to the v0.9 milestone Sep 15, 2023
@lukechu10 lukechu10 added performance Performance related and removed performance Performance related labels Sep 16, 2023
@lukechu10 lukechu10 added performance Performance related and removed performance Performance related labels Sep 16, 2023
@lukechu10 lukechu10 added the performance Performance related label Sep 16, 2023
@github-actions
Copy link

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
- 01_run1k                  |        12.85 |    27.11 |   32.42 |  +19.62%
+ 02_replace1k              |        22.13 |    48.06 |   43.66 |   -9.17%
+ 03_update10th1k_x16       |        11.30 |    30.02 |   18.80 |  -37.39%
- 04_select1k               |         2.99 |    12.21 |   13.63 |  +11.60%
+ 05_swap1k                 |         0.69 |     4.41 |    2.87 |  -34.83%
+ 06_remove-one-1k          |         0.98 |     4.09 |    3.82 |   -6.63%
+ 07_create10k              |       135.29 |   441.89 |  374.72 |  -15.20%
+ 08_create1k-after1k_x2    |        27.87 |    67.84 |   63.29 |   -6.72%
+ 09_clear1k_x8             |        82.00 |   111.18 |  106.69 |   -4.04%
  21_ready-memory           |         1.77 |     1.81 |    1.81 |   -0.01%
+ 22_run-memory             |         3.01 |     5.95 |    5.39 |   -9.45%
+ 23_update5-memory         |         2.98 |     6.11 |    5.51 |   -9.91%
- 25_run-clear-memory       |         1.89 |     4.59 |    5.28 |  +14.97%
+ 26_run-10k-memory         |        14.97 |    43.80 |   36.87 |  -15.83%
  31_startup-ci             |      1910.70 |  2352.67 | 2310.44 |   -1.79%
  32_startup-bt             |        29.93 |    83.36 |   83.92 |   +0.67%
  33_startup-mainthreadcost |       289.49 |   394.88 |  386.22 |   -2.19%
  34_startup-totalbytes     |       185.73 |   303.32 |  311.75 |   +2.78%

Workflow: 6212185511
Adding new commits will generate a new report

@github-actions
Copy link

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
- 01_run1k                  |        10.18 |    22.24 |   25.19 |  +13.25%
+ 02_replace1k              |        17.02 |    37.54 |   33.80 |   -9.98%
+ 03_update10th1k_x16       |         9.13 |    21.03 |   14.85 |  -29.42%
+ 04_select1k               |         2.73 |     9.17 |    8.56 |   -6.61%
+ 05_swap1k                 |         0.65 |     3.08 |    1.98 |  -35.66%
+ 06_remove-one-1k          |         0.75 |     2.98 |    2.52 |  -15.55%
+ 07_create10k              |       107.95 |   346.42 |  304.29 |  -12.16%
+ 08_create1k-after1k_x2    |        21.86 |    52.83 |   47.44 |  -10.20%
+ 09_clear1k_x8             |        59.77 |    84.28 |   73.05 |  -13.33%
  21_ready-memory           |         1.77 |     1.81 |    1.82 |   +0.77%
+ 22_run-memory             |         3.01 |     5.95 |    5.39 |   -9.45%
+ 23_update5-memory         |         2.98 |     6.10 |    5.50 |   -9.85%
- 25_run-clear-memory       |         1.89 |     4.59 |    5.29 |  +15.32%
+ 26_run-10k-memory         |        14.97 |    43.79 |   36.87 |  -15.80%
+ 31_startup-ci             |      1931.58 |  2189.81 | 2035.45 |   -7.05%
+ 32_startup-bt             |        27.27 |    44.42 |   39.85 |  -10.30%
  33_startup-mainthreadcost |       230.70 |   282.66 |  290.03 |   +2.61%
  34_startup-totalbytes     |       185.73 |   303.32 |  311.75 |   +2.78%

Workflow: 6213269216
Adding new commits will generate a new report

@github-actions
Copy link

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
- 01_run1k                  |        10.22 |    22.29 |   26.93 |  +20.81%
+ 02_replace1k              |        16.69 |    39.42 |   34.31 |  -12.96%
+ 03_update10th1k_x16       |         8.59 |    25.66 |   15.22 |  -40.67%
+ 04_select1k               |         1.22 |    11.40 |   10.76 |   -5.64%
+ 05_swap1k                 |         0.56 |     3.05 |    2.14 |  -29.72%
+ 06_remove-one-1k          |         0.81 |     2.66 |    2.47 |   -7.38%
+ 07_create10k              |       103.28 |   337.57 |  294.42 |  -12.78%
  08_create1k-after1k_x2    |        22.26 |    50.33 |   50.85 |   +1.03%
+ 09_clear1k_x8             |        59.95 |    82.96 |   73.87 |  -10.95%
  21_ready-memory           |         1.77 |     1.81 |    1.81 |   -0.03%
+ 22_run-memory             |         3.01 |     5.95 |    5.39 |   -9.48%
+ 23_update5-memory         |         2.97 |     6.10 |    5.50 |   -9.73%
- 25_run-clear-memory       |         1.88 |     4.59 |    5.28 |  +14.98%
+ 26_run-10k-memory         |        14.97 |    43.79 |   36.87 |  -15.80%
- 31_startup-ci             |      1934.30 |  2195.97 | 2336.32 |   +6.39%
- 32_startup-bt             |        24.75 |    40.85 |   67.81 |  +65.99%
- 33_startup-mainthreadcost |       257.23 |   267.26 |  316.64 |  +18.48%
  34_startup-totalbytes     |       185.73 |   303.32 |  311.75 |   +2.78%

Workflow: 6213270717
Adding new commits will generate a new report

@github-actions
Copy link

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
- 01_run1k                  |        11.06 |    24.55 |   25.63 |   +4.40%
+ 02_replace1k              |        19.30 |    43.11 |   40.50 |   -6.06%
+ 03_update10th1k_x16       |        12.28 |    28.69 |   16.67 |  -41.91%
- 04_select1k               |         1.46 |    11.20 |   14.23 |  +26.97%
+ 05_swap1k                 |         0.76 |     4.26 |    2.14 |  -49.80%
+ 06_remove-one-1k          |         1.02 |     3.56 |    3.07 |  -13.94%
+ 07_create10k              |       113.94 |   387.58 |  332.16 |  -14.30%
+ 08_create1k-after1k_x2    |        23.85 |    58.89 |   54.82 |   -6.91%
+ 09_clear1k_x8             |        77.06 |   100.00 |   87.18 |  -12.82%
  21_ready-memory           |         1.77 |     1.81 |    1.81 |   -0.01%
+ 22_run-memory             |         3.01 |     5.95 |    5.39 |   -9.42%
+ 23_update5-memory         |         2.98 |     6.10 |    5.51 |   -9.80%
- 25_run-clear-memory       |         1.89 |     4.59 |    5.28 |  +15.01%
+ 26_run-10k-memory         |        14.97 |    43.79 |   36.87 |  -15.80%
- 31_startup-ci             |      1884.40 |  2190.55 | 2324.95 |   +6.14%
- 32_startup-bt             |        27.22 |    52.59 |   64.64 |  +22.92%
+ 33_startup-mainthreadcost |       255.38 |   337.98 |  321.79 |   -4.79%
  34_startup-totalbytes     |       185.73 |   303.32 |  311.75 |   +2.78%

Workflow: 6213373301
Adding new commits will generate a new report

@github-actions
Copy link

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
- 01_run1k                  |        11.77 |    28.87 |   32.33 |  +11.96%
+ 02_replace1k              |        23.00 |    47.78 |   42.02 |  -12.05%
+ 03_update10th1k_x16       |        10.45 |    29.45 |   16.55 |  -43.78%
+ 04_select1k               |         2.00 |    14.71 |   10.67 |  -27.46%
+ 05_swap1k                 |         0.98 |     3.86 |    3.01 |  -21.95%
+ 06_remove-one-1k          |         0.98 |     3.66 |    2.80 |  -23.49%
+ 07_create10k              |       127.79 |   431.65 |  375.04 |  -13.12%
+ 08_create1k-after1k_x2    |        25.51 |    62.47 |   58.51 |   -6.34%
- 09_clear1k_x8             |        80.83 |    91.50 |  100.59 |   +9.93%
  21_ready-memory           |         1.77 |     1.81 |    1.81 |   -0.01%
+ 22_run-memory             |         3.01 |     5.95 |    5.39 |   -9.43%
+ 23_update5-memory         |         2.97 |     6.10 |    5.50 |   -9.73%
- 25_run-clear-memory       |         1.89 |     4.59 |    5.28 |  +14.98%
+ 26_run-10k-memory         |        14.97 |    43.79 |   36.87 |  -15.80%
- 31_startup-ci             |      1892.15 |  2328.41 | 2464.61 |   +5.85%
- 32_startup-bt             |        26.45 |    64.18 |   80.06 |  +24.74%
- 33_startup-mainthreadcost |       270.30 |   325.03 |  376.31 |  +15.78%
  34_startup-totalbytes     |       185.73 |   303.32 |  311.72 |   +2.77%

Workflow: 6213420364
Adding new commits will generate a new report

@github-actions
Copy link

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
- 01_run1k                  |        14.40 |    34.86 |   36.99 |   +6.12%
+ 02_replace1k              |        24.85 |    58.91 |   49.43 |  -16.10%
+ 03_update10th1k_x16       |        16.82 |    40.49 |   20.70 |  -48.87%
+ 04_select1k               |         4.25 |    15.86 |   10.62 |  -33.05%
+ 05_swap1k                 |         0.86 |     4.62 |    2.66 |  -42.31%
+ 06_remove-one-1k          |         1.34 |     4.77 |    3.50 |  -26.52%
+ 07_create10k              |       151.77 |   493.94 |  426.16 |  -13.72%
+ 08_create1k-after1k_x2    |        35.39 |    88.43 |   72.87 |  -17.59%
+ 09_clear1k_x8             |        92.78 |   136.33 |  122.08 |  -10.45%
  21_ready-memory           |         1.77 |     1.81 |    1.81 |   -0.01%
+ 22_run-memory             |         3.01 |     5.96 |    5.39 |   -9.45%
+ 23_update5-memory         |         2.98 |     6.10 |    5.51 |   -9.70%
- 25_run-clear-memory       |         1.88 |     4.59 |    5.28 |  +14.98%
+ 26_run-10k-memory         |        14.97 |    43.79 |   36.87 |  -15.80%
  31_startup-ci             |      1966.09 |  2334.83 | 2357.43 |   +0.97%
- 32_startup-bt             |        34.53 |    80.24 |   95.64 |  +19.20%
- 33_startup-mainthreadcost |       355.17 |   408.23 |  435.04 |   +6.57%
  34_startup-totalbytes     |       185.73 |   303.32 |  311.72 |   +2.77%

Workflow: 6213596129
Adding new commits will generate a new report

@github-actions
Copy link

github-actions bot commented Oct 5, 2023

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
- 01_run1k                  |        11.04 |    22.05 |   27.39 |  +24.21%
  02_replace1k              |        16.91 |    34.78 |   35.79 |   +2.88%
+ 03_update10th1k_x16       |         7.32 |    23.11 |   14.98 |  -35.19%
- 04_select1k               |         1.26 |    12.28 |   25.24 | +105.45%
+ 05_swap1k                 |         0.53 |     2.76 |    2.07 |  -24.97%
+ 06_remove-one-1k          |         0.73 |     3.24 |    2.51 |  -22.52%
- 07_create10k              |       100.47 |   314.04 |  392.19 |  +24.89%
  08_create1k-after1k_x2    |        20.12 |    49.75 |   49.38 |   -0.74%
+ 09_clear1k_x8             |        49.98 |    74.46 |   68.75 |   -7.67%
  21_ready-memory           |         1.71 |     1.75 |    1.75 |   +0.11%
- 22_run-memory             |         2.96 |     5.91 |    6.29 |   +6.37%
- 23_update5-memory         |         2.91 |     6.05 |    6.40 |   +5.79%
- 25_run-clear-memory       |         1.81 |     4.53 |    4.90 |   +8.33%
+ 26_run-10k-memory         |        14.92 |    43.73 |   40.93 |   -6.39%
- 31_startup-ci             |      1812.41 |  1935.20 | 2100.41 |   +8.54%
- 32_startup-bt             |        23.92 |    44.06 |   58.16 |  +31.99%
- 33_startup-mainthreadcost |       309.28 |   348.81 |  458.75 |  +31.52%
  34_startup-totalbytes     |       185.58 |   301.51 |  305.96 |   +1.48%

Workflow: 6424959635
Adding new commits will generate a new report

@github-actions
Copy link

github-actions bot commented Oct 5, 2023

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
- 01_run1k                  |        12.00 |    23.55 |   30.87 |  +31.07%
- 02_replace1k              |        19.80 |    40.45 |   43.41 |   +7.32%
+ 03_update10th1k_x16       |        10.78 |    22.30 |   15.15 |  -32.04%
- 04_select1k               |         3.50 |    14.89 |   27.69 |  +85.94%
+ 05_swap1k                 |         0.75 |     4.73 |    2.35 |  -50.34%
+ 06_remove-one-1k          |         0.94 |     3.98 |    2.69 |  -32.39%
- 07_create10k              |       126.41 |   391.59 |  475.80 |  +21.51%
  08_create1k-after1k_x2    |        21.92 |    56.51 |   57.33 |   +1.45%
+ 09_clear1k_x8             |        56.06 |    87.05 |   75.26 |  -13.54%
  21_ready-memory           |         1.71 |     1.75 |    1.75 |   +0.12%
- 22_run-memory             |         2.97 |     5.91 |    6.29 |   +6.34%
- 23_update5-memory         |         2.91 |     6.05 |    6.40 |   +5.80%
- 25_run-clear-memory       |         1.83 |     4.53 |    4.90 |   +8.31%
+ 26_run-10k-memory         |        14.91 |    43.73 |   40.93 |   -6.38%
+ 31_startup-ci             |      1822.82 |  2315.47 | 2134.82 |   -7.80%
- 32_startup-bt             |        42.31 |    57.05 |   65.08 |  +14.08%
- 33_startup-mainthreadcost |       316.46 |   344.99 |  423.74 |  +22.83%
  34_startup-totalbytes     |       185.58 |   301.51 |  305.96 |   +1.48%

Workflow: 6424932040
Adding new commits will generate a new report

@github-actions
Copy link

github-actions bot commented Oct 5, 2023

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
- 01_run1k                  |        15.85 |    29.61 |   39.84 |  +34.55%
- 02_replace1k              |        24.05 |    49.64 |   51.92 |   +4.60%
+ 03_update10th1k_x16       |        11.70 |    30.68 |   21.29 |  -30.62%
- 04_select1k               |         2.09 |    15.69 |   32.89 | +109.57%
+ 05_swap1k                 |         0.92 |     4.55 |    3.19 |  -29.95%
+ 06_remove-one-1k          |         0.99 |     4.92 |    3.92 |  -20.37%
- 07_create10k              |       138.28 |   461.92 |  576.06 |  +24.71%
- 08_create1k-after1k_x2    |        27.35 |    69.22 |   80.35 |  +16.08%
  09_clear1k_x8             |        71.35 |   103.17 |  100.13 |   -2.95%
  21_ready-memory           |         1.71 |     1.75 |    1.75 |   +0.10%
- 22_run-memory             |         2.96 |     5.91 |    6.30 |   +6.61%
- 23_update5-memory         |         2.91 |     6.05 |    6.42 |   +6.05%
- 25_run-clear-memory       |         1.83 |     4.52 |    4.90 |   +8.34%
+ 26_run-10k-memory         |        14.91 |    43.72 |   40.93 |   -6.39%
  31_startup-ci             |      1977.08 |  2474.90 | 2466.95 |   -0.32%
- 32_startup-bt             |        37.93 |    85.57 |   92.40 |   +7.98%
  33_startup-mainthreadcost |       431.82 |   425.82 |  423.85 |   -0.46%
  34_startup-totalbytes     |       185.58 |   301.51 |  305.99 |   +1.49%

Workflow: 6424902701
Adding new commits will generate a new report

Instead of checking if a dependency changed, we now check if the current node is dirty.
@github-actions
Copy link

github-actions bot commented Oct 6, 2023

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
- 01_run1k                  |        12.14 |    24.55 |   31.65 |  +28.91%
- 02_replace1k              |        18.98 |    41.51 |   43.74 |   +5.39%
+ 03_update10th1k_x16       |        12.09 |    31.48 |   21.28 |  -32.42%
- 04_select1k               |         2.79 |    11.07 |   26.04 | +135.33%
+ 05_swap1k                 |         0.80 |     4.38 |    2.46 |  -43.90%
+ 06_remove-one-1k          |         1.11 |     4.34 |    3.22 |  -25.82%
- 07_create10k              |       113.72 |   366.79 |  477.36 |  +30.14%
+ 08_create1k-after1k_x2    |        22.81 |    55.89 |   53.77 |   -3.81%
+ 09_clear1k_x8             |        61.96 |    92.39 |   78.55 |  -14.97%
  21_ready-memory           |         1.71 |     1.75 |    1.75 |   +0.14%
- 22_run-memory             |         2.96 |     5.91 |    6.30 |   +6.65%
- 23_update5-memory         |         2.91 |     6.05 |    6.40 |   +5.82%
- 25_run-clear-memory       |         1.83 |     4.53 |    4.92 |   +8.64%
+ 26_run-10k-memory         |        14.90 |    43.72 |   40.93 |   -6.38%
+ 31_startup-ci             |      1853.63 |  2309.99 | 1873.73 |  -18.89%
+ 32_startup-bt             |        20.10 |    74.93 |   49.51 |  -33.93%
  33_startup-mainthreadcost |       329.09 |   426.47 |  415.99 |   -2.46%
  34_startup-totalbytes     |       185.58 |   300.92 |  305.75 |   +1.60%

Workflow: 6429410302
Adding new commits will generate a new report

@lukechu10 lukechu10 force-pushed the reactivity-v3-part2 branch from 878948a to 02d703f Compare October 6, 2023 10:39
@github-actions
Copy link

github-actions bot commented Oct 6, 2023

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
+ 01_run1k                  |        11.46 |    23.47 |   22.65 |   -3.52%
+ 02_replace1k              |        18.36 |    41.65 |   39.95 |   -4.08%
+ 03_update10th1k_x16       |         9.88 |    25.44 |   16.29 |  -35.97%
- 04_select1k               |         3.12 |    11.95 |   34.51 | +188.84%
+ 05_swap1k                 |         0.71 |     3.92 |    2.23 |  -43.06%
+ 06_remove-one-1k          |         0.92 |     4.25 |    3.59 |  -15.61%
+ 07_create10k              |       116.08 |   357.92 |  284.32 |  -20.56%
+ 08_create1k-after1k_x2    |        23.95 |    55.28 |   50.59 |   -8.49%
+ 09_clear1k_x8             |        60.85 |    89.53 |   81.68 |   -8.76%
  21_ready-memory           |         1.71 |     1.75 |    1.75 |   -0.00%
+ 22_run-memory             |         2.96 |     5.91 |    4.91 |  -16.90%
+ 23_update5-memory         |         2.91 |     6.05 |    5.02 |  -16.94%
+ 25_run-clear-memory       |         1.81 |     4.53 |    3.65 |  -19.35%
+ 26_run-10k-memory         |        14.91 |    43.73 |   41.82 |   -4.35%
+ 31_startup-ci             |      1916.06 |  2266.95 | 2134.27 |   -5.85%
+ 32_startup-bt             |        34.25 |    77.02 |   49.33 |  -35.95%
  33_startup-mainthreadcost |       362.19 |   392.64 |  388.49 |   -1.06%
  34_startup-totalbytes     |       185.58 |   300.92 |  300.22 |   -0.23%

Workflow: 6430598291
Adding new commits will generate a new report

@github-actions
Copy link

github-actions bot commented Oct 6, 2023

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
+ 01_run1k                  |        11.77 |    25.46 |   22.72 |  -10.77%
  02_replace1k              |        19.20 |    42.56 |   41.33 |   -2.89%
+ 03_update10th1k_x16       |        12.64 |    29.21 |   20.72 |  -29.06%
- 04_select1k               |         3.88 |    14.75 |   33.53 | +127.41%
+ 05_swap1k                 |         0.70 |     4.43 |    2.61 |  -40.95%
+ 06_remove-one-1k          |         1.15 |     4.14 |    3.61 |  -12.83%
+ 07_create10k              |       110.31 |   375.01 |  283.04 |  -24.52%
+ 08_create1k-after1k_x2    |        24.13 |    56.47 |   51.10 |   -9.52%
+ 09_clear1k_x8             |        62.31 |    90.60 |   80.32 |  -11.34%
  21_ready-memory           |         1.71 |     1.75 |    1.75 |   +0.04%
+ 22_run-memory             |         2.96 |     5.91 |    4.91 |  -16.91%
+ 23_update5-memory         |         2.91 |     6.07 |    5.03 |  -17.14%
+ 25_run-clear-memory       |         1.83 |     4.54 |    3.65 |  -19.57%
+ 26_run-10k-memory         |        14.91 |    43.72 |   41.81 |   -4.39%
- 31_startup-ci             |      1818.31 |  2021.87 | 2247.58 |  +11.16%
- 32_startup-bt             |        23.55 |    48.17 |   59.69 |  +23.92%
- 33_startup-mainthreadcost |       338.87 |   346.55 |  415.37 |  +19.86%
  34_startup-totalbytes     |       185.58 |   300.92 |  300.22 |   -0.23%

Workflow: 6430631311
Adding new commits will generate a new report

@github-actions
Copy link

github-actions bot commented Oct 6, 2023

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
  01_run1k                  |        13.04 |    22.42 |   22.30 |   -0.53%
  02_replace1k              |        18.46 |    41.57 |   40.61 |   -2.31%
+ 03_update10th1k_x16       |        10.60 |    33.16 |   15.85 |  -52.19%
- 04_select1k               |         2.83 |    15.03 |   28.53 |  +89.85%
+ 05_swap1k                 |         0.67 |     3.88 |    2.43 |  -37.44%
+ 06_remove-one-1k          |         1.03 |     3.59 |    3.44 |   -4.14%
+ 07_create10k              |       110.55 |   365.04 |  279.32 |  -23.48%
+ 08_create1k-after1k_x2    |        22.05 |    55.30 |   49.67 |  -10.19%
+ 09_clear1k_x8             |        59.77 |    84.53 |   78.71 |   -6.88%
  21_ready-memory           |         1.71 |     1.75 |    1.75 |   +0.04%
+ 22_run-memory             |         2.96 |     5.91 |    4.91 |  -16.92%
+ 23_update5-memory         |         2.91 |     6.05 |    5.03 |  -16.93%
+ 25_run-clear-memory       |         1.83 |     4.54 |    3.67 |  -19.25%
+ 26_run-10k-memory         |        14.91 |    43.73 |   41.81 |   -4.39%
+ 31_startup-ci             |      1794.09 |  2245.90 | 2135.11 |   -4.93%
+ 32_startup-bt             |        21.70 |    74.35 |   71.73 |   -3.53%
+ 33_startup-mainthreadcost |       312.97 |   426.94 |  400.24 |   -6.25%
  34_startup-totalbytes     |       185.58 |   300.92 |  300.22 |   -0.23%

Workflow: 6430875536
Adding new commits will generate a new report

@github-actions
Copy link

github-actions bot commented Oct 6, 2023

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
+ 01_run1k                  |        10.84 |    22.43 |   21.37 |   -4.73%
+ 02_replace1k              |        18.51 |    36.25 |   34.95 |   -3.58%
+ 03_update10th1k_x16       |         7.62 |    23.81 |   16.80 |  -29.45%
- 04_select1k               |         2.06 |     9.51 |   24.77 | +160.53%
+ 05_swap1k                 |         0.53 |     2.59 |    2.15 |  -16.69%
- 06_remove-one-1k          |         0.68 |     2.81 |    2.91 |   +3.76%
+ 07_create10k              |       106.36 |   320.81 |  255.64 |  -20.31%
+ 08_create1k-after1k_x2    |        20.34 |    49.00 |   47.17 |   -3.74%
- 09_clear1k_x8             |        49.61 |    65.70 |   68.87 |   +4.82%
  21_ready-memory           |         1.71 |     1.75 |    1.75 |   +0.02%
+ 22_run-memory             |         2.96 |     5.91 |    4.91 |  -16.88%
+ 23_update5-memory         |         2.91 |     6.05 |    5.03 |  -16.93%
+ 25_run-clear-memory       |         1.83 |     4.53 |    3.65 |  -19.35%
+ 26_run-10k-memory         |        14.91 |    43.73 |   41.81 |   -4.39%
- 31_startup-ci             |      1812.41 |  1817.57 | 2164.96 |  +19.11%
+ 32_startup-bt             |        21.04 |    69.21 |   35.09 |  -49.30%
+ 33_startup-mainthreadcost |       325.67 |   379.19 |  321.12 |  -15.31%
  34_startup-totalbytes     |       185.58 |   300.92 |  300.21 |   -0.23%

Workflow: 6430996575
Adding new commits will generate a new report

@lukechu10 lukechu10 marked this pull request as ready for review October 6, 2023 13:36
@github-actions
Copy link

github-actions bot commented Oct 6, 2023

Benchmark Report

  • wasm-bindgen: the performance goal
  • baseline: performance of sycamore-baseline (typically latest master)
  • update: performance of sycamore (typically recent changes)
  • diff: measures the improvement of update over the baseline
@@                           Performance Diff                           @@

##                          | wasm-bindgen | baseline |  update |  diff ##
##########################################################################
+ 01_run1k                  |        12.54 |    23.62 |   22.27 |   -5.69%
  02_replace1k              |        19.81 |    39.86 |   39.99 |   +0.32%
+ 03_update10th1k_x16       |        11.88 |    29.59 |   18.95 |  -35.94%
- 04_select1k               |         2.39 |    12.19 |   28.67 | +135.24%
+ 05_swap1k                 |         0.75 |     4.32 |    2.52 |  -41.59%
+ 06_remove-one-1k          |         0.80 |     3.77 |    2.84 |  -24.54%
+ 07_create10k              |       112.07 |   347.04 |  277.31 |  -20.09%
+ 08_create1k-after1k_x2    |        22.69 |    54.00 |   49.73 |   -7.90%
+ 09_clear1k_x8             |        60.78 |    84.76 |   78.10 |   -7.86%
  21_ready-memory           |         1.71 |     1.75 |    1.75 |   +0.00%
+ 22_run-memory             |         2.96 |     5.91 |    4.91 |  -16.91%
+ 23_update5-memory         |         2.93 |     6.05 |    5.02 |  -16.96%
+ 25_run-clear-memory       |         1.81 |     4.54 |    3.65 |  -19.61%
+ 26_run-10k-memory         |        14.90 |    43.73 |   41.81 |   -4.39%
- 31_startup-ci             |      1954.99 |  2164.23 | 2250.50 |   +3.99%
- 32_startup-bt             |        21.80 |    57.09 |   60.17 |   +5.40%
  33_startup-mainthreadcost |       355.32 |   362.96 |  373.30 |   +2.85%
  34_startup-totalbytes     |       185.58 |   300.92 |  300.21 |   -0.23%

Workflow: 6432344781
Adding new commits will generate a new report

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-reactivity Area: reactivity and state handling BREAKING CHANGE Breaking changes introduced in this PR C-enhancement Category: new feature or improvement to existing feature performance Performance related
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant