Skip to content

Simplify vnode re-use detection (-2 B)#2863

Merged
JoviDeCroock merged 1 commit intomasterfrom
golf-clone
Dec 13, 2020
Merged

Simplify vnode re-use detection (-2 B)#2863
JoviDeCroock merged 1 commit intomasterfrom
golf-clone

Conversation

@marvinhagemeister
Copy link
Copy Markdown
Member

This PR simplifies our check to detect if a vnode is already in use and if we need to clone it. Noticed that while exploring alternative algorithms in diffChildren. Saves 2 B.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Dec 12, 2020

📊 Tachometer Benchmark Results

Summary

duration

  • 02_replace1k: slower ❌ 0% - 2% (0.11ms - 2.70ms)
    preact-local vs preact-master
  • 03_update10th1k_x16: unsure 🔍 -4% - +3% (-1.30ms - +0.93ms)
    preact-local vs preact-master
  • many_updates: unsure 🔍 -7% - +10% (-2.43ms - +3.60ms)
    preact-local vs preact-master
  • text_update: unsure 🔍 -5% - +4% (-0.15ms - +0.14ms)
    preact-local vs preact-master

window.usedJSHeapSize

  • 02_replace1k: unsure 🔍 -0% - +0% (-0.00ms - +0.01ms)
    preact-local vs preact-master
  • 03_update10th1k_x16: unsure 🔍 -0% - +0% (-0.01ms - +0.00ms)
    preact-local vs preact-master
  • many_updates: unsure 🔍 -0% - +0% (-0.00ms - +0.00ms)
    preact-local vs preact-master
  • text_update: unsure 🔍 -0% - -0% (-0.00ms - -0.00ms)
    preact-local vs preact-master

Results

02_replace1k
  • Browser: chrome-headless 87.0.4280.66
  • Sample size: 50
  • Built by: CI #556
  • Commit: 3fd85ad

duration

VersionAvg timevs preact-mastervs preact-local
preact-master144.54ms - 146.34ms-faster ✔
0% - 2%
0.11ms - 2.70ms
preact-local145.91ms - 147.78msslower ❌
0% - 2%
0.11ms - 2.70ms
-

window.usedJSHeapSize

VersionAvg timevs preact-mastervs preact-local
preact-master3.57ms - 3.57ms-unsure 🔍
-0% - +0%
-0.01ms - +0.00ms
preact-local3.57ms - 3.57msunsure 🔍
-0% - +0%
-0.00ms - +0.01ms
-
03_update10th1k_x16
  • Browser: chrome-headless 87.0.4280.66
  • Sample size: 130
  • Built by: CI #556
  • Commit: 3fd85ad

duration

VersionAvg timevs preact-mastervs preact-local
preact-master29.80ms - 31.32ms-unsure 🔍
-3% - +4%
-0.93ms - +1.30ms
preact-local29.56ms - 31.19msunsure 🔍
-4% - +3%
-1.30ms - +0.93ms
-

window.usedJSHeapSize

VersionAvg timevs preact-mastervs preact-local
preact-master3.52ms - 3.53ms-unsure 🔍
-0% - +0%
-0.00ms - +0.01ms
preact-local3.52ms - 3.53msunsure 🔍
-0% - +0%
-0.01ms - +0.00ms
-
many_updates
  • Browser: chrome-headless 87.0.4280.66
  • Sample size: 80
  • Built by: CI #556
  • Commit: 3fd85ad

duration

VersionAvg timevs preact-mastervs preact-local
preact-master34.84ms - 38.94ms-unsure 🔍
-10% - +6%
-3.60ms - +2.43ms
preact-local35.27ms - 39.68msunsure 🔍
-7% - +10%
-2.43ms - +3.60ms
-

window.usedJSHeapSize

VersionAvg timevs preact-mastervs preact-local
preact-master4.85ms - 4.85ms-unsure 🔍
-0% - +0%
-0.00ms - +0.00ms
preact-local4.85ms - 4.85msunsure 🔍
-0% - +0%
-0.00ms - +0.00ms
-
text_update
  • Browser: chrome-headless 87.0.4280.66
  • Sample size: 50
  • Built by: CI #556
  • Commit: 3fd85ad

duration

VersionAvg timevs preact-mastervs preact-local
preact-master3.01ms - 3.22ms-unsure 🔍
-4% - +5%
-0.14ms - +0.15ms
preact-local3.01ms - 3.21msunsure 🔍
-5% - +4%
-0.15ms - +0.14ms
-

window.usedJSHeapSize

VersionAvg timevs preact-mastervs preact-local
preact-master0.83ms - 0.83ms-unsure 🔍
+0% - +0%
+0.00ms - +0.00ms
preact-local0.83ms - 0.83msunsure 🔍
-0% - -0%
-0.00ms - -0.00ms
-

tachometer-reporter-action v2 for CI

@coveralls
Copy link
Copy Markdown

Coverage Status

Coverage remained the same at 100.0% when pulling 5acab8c on golf-clone into d31505e on master.

@github-actions
Copy link
Copy Markdown

Size Change: -16 B (0%)

Total Size: 41.9 kB

Filename Size Change
dist/preact.js 4.02 kB -3 B (0%)
dist/preact.min.js 4.04 kB -4 B (0%)
dist/preact.module.js 4.03 kB -5 B (0%)
dist/preact.umd.js 4.08 kB -4 B (0%)
ℹ️ View Unchanged
Filename Size Change
compat/dist/compat.js 3.23 kB 0 B
compat/dist/compat.module.js 3.23 kB 0 B
compat/dist/compat.umd.js 3.28 kB 0 B
debug/dist/debug.js 3.12 kB 0 B
debug/dist/debug.module.js 3.11 kB 0 B
debug/dist/debug.umd.js 3.21 kB 0 B
devtools/dist/devtools.js 185 B 0 B
devtools/dist/devtools.module.js 195 B 0 B
devtools/dist/devtools.umd.js 261 B 0 B
hooks/dist/hooks.js 1.13 kB 0 B
hooks/dist/hooks.module.js 1.15 kB 0 B
hooks/dist/hooks.umd.js 1.2 kB 0 B
jsx-runtime/dist/jsxRuntime.js 327 B 0 B
jsx-runtime/dist/jsxRuntime.module.js 335 B 0 B
jsx-runtime/dist/jsxRuntime.umd.js 405 B 0 B
test-utils/dist/testUtils.js 437 B 0 B
test-utils/dist/testUtils.module.js 439 B 0 B
test-utils/dist/testUtils.umd.js 515 B 0 B

compressed-size-action

Copy link
Copy Markdown
Member

@andrewiggins andrewiggins left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh nice catch!

@JoviDeCroock JoviDeCroock merged commit b1a42a1 into master Dec 13, 2020
@JoviDeCroock JoviDeCroock deleted the golf-clone branch December 13, 2020 12:12
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.

4 participants