y-crdt / y-octo

CRDT implementation which is compatible with https://github.com/yjs/yjs
https://octobase.pro/
Other
200 stars 6 forks source link

feat: continue node binding #43

Open darkskygit opened 3 months ago

github-actions[bot] commented 3 months ago

Benchmark for Linux

Click to view benchmark | Test | Base | PR | % | | --- | --- | --- | --- | | codec/jwst decode var_int (32 bit) | 212.5±1.23µs | 212.3±0.71µs | **-0.09%** | | codec/jwst decode var_uint (32 bit) | 178.9±2.87µs | 178.3±1.04µs | -0.34% | | codec/jwst decode var_uint (64 bit) | 193.8±2.88µs | 193.4±0.59µs | **-0.21%** | | codec/jwst encode var_int (32 bit) | 333.6±16.52µs | 331.0±3.64µs | -0.78% | | codec/jwst encode var_uint (32 bit) | 254.5±6.04µs | 255.9±9.10µs | +0.55% | | codec/jwst encode var_uint (64 bit) | 254.0±3.86µs | 254.1±3.90µs | +0.04% | | codec/lib0 decode var_int (64 bit) | 186.3±2.68µs | 185.5±2.22µs | -0.43% | | codec/lib0 decode var_uint (32 bit) | 184.9±2.32µs | 184.5±2.11µs | -0.22% | | codec/lib0 decode var_uint (64 bit) | 184.1±1.89µs | 184.6±3.16µs | +0.27% | | codec/lib0 encode var_int (64 bit) | 388.7±10.81µs | 386.4±1.16µs | **-0.59%** | | codec/lib0 encode var_uint (32 bit) | 374.2±4.91µs | 373.3±1.60µs | -0.24% | | codec/lib0 encode var_uint (64 bit) | 373.4±1.65µs | 373.0±0.62µs | **-0.11%** | | ops/array/jwst/insert | 103.8±0.92µs | 103.1±1.00µs | **-0.67%** | | ops/array/jwst/insert range | 149.8±0.72µs | 153.4±1.64µs | **+2.40%** | | ops/array/jwst/remove | 55.7±0.26µs | 55.6±0.98µs | **-0.18%** | | ops/array/yrs/insert | 57.6±0.35µs | 57.1±0.39µs | **-0.87%** | | ops/array/yrs/insert range | 72.8±0.78µs | 72.8±0.47µs | -0.00% | | ops/array/yrs/remove | 66.3±0.47µs | 62.4±0.77µs | **-5.88%** | | ops/map/jwst/get | 217.4±1.91ns | 215.8±2.08ns | **-0.74%** | | ops/map/jwst/insert | 3.0±0.06µs | 3.1±0.02µs | **+3.33%** | | ops/map/jwst/remove | 4.3±0.02µs | 4.3±0.02µs | -0.00% | | ops/map/yrs/get | 238.5±1.18ns | 239.3±3.38ns | +0.34% | | ops/map/yrs/insert | 3.7±0.03µs | 3.8±0.02µs | **+2.70%** | | ops/map/yrs/remove | 4.9±0.03µs | 4.8±0.03µs | **-2.04%** | | ops/text/jwst/insert | 67.8±0.67µs | 66.6±0.22µs | **-1.77%** | | ops/text/jwst/remove | 1414.9±9.82ns | 1393.0±10.60ns | **-1.55%** | | ops/text/yrs/insert | 26.6±0.12µs | 27.5±0.26µs | **+3.38%** | | ops/text/yrs/remove | 1700.2±7.19ns | 1699.6±13.42ns | -0.04% | | update/parse with jwst/basic.bin | 39.9±0.26µs | 39.1±0.18µs | **-2.01%** | | update/parse with jwst/database.bin | 31.7±0.25µs | 31.5±0.19µs | **-0.63%** | | update/parse with jwst/edge-case-left-right-same-node.bin | 49.7±0.43µs | 49.5±0.47µs | **-0.40%** | | update/parse with jwst/large.bin | 3.6±0.05ms | 3.6±0.03ms | -0.00% | | update/parse with jwst/with-subdoc.bin | 5.3±0.02µs | 5.3±0.05µs | -0.00% | | update/parse with yrs/basic.bin | 30.0±0.27µs | 30.1±0.17µs | **+0.33%** | | update/parse with yrs/database.bin | 24.6±0.10µs | 24.6±0.13µs | -0.00% | | update/parse with yrs/edge-case-left-right-same-node.bin | 38.8±0.10µs | 39.1±0.13µs | **+0.77%** | | update/parse with yrs/large.bin | 2.3±0.01ms | 2.4±0.01ms | **+4.35%** | | update/parse with yrs/with-subdoc.bin | 4.0±0.03µs | 4.2±0.02µs | **+5.00%** |

Benchmark for Windows

Click to view benchmark | Test | Base | PR | % | | --- | --- | --- | --- | | codec/jwst decode var_int (32 bit) | 213.9±5.02µs | 212.8±1.95µs | **-0.51%** | | codec/jwst decode var_uint (32 bit) | 181.4±4.54µs | 180.8±5.18µs | -0.33% | | codec/jwst decode var_uint (64 bit) | 182.6±3.61µs | 184.0±6.89µs | +0.77% | | codec/jwst encode var_int (32 bit) | 280.6±4.90µs | 280.4±5.38µs | -0.07% | | codec/jwst encode var_uint (32 bit) | 300.5±2.68µs | 302.2±9.47µs | +0.57% | | codec/jwst encode var_uint (64 bit) | 297.4±1.72µs | 296.8±1.86µs | -0.20% | | codec/lib0 decode var_int (64 bit) | 190.1±5.02µs | 186.5±4.63µs | -1.89% | | codec/lib0 decode var_uint (32 bit) | 185.7±4.78µs | 184.0±3.78µs | -0.92% | | codec/lib0 decode var_uint (64 bit) | 186.2±5.04µs | 184.1±3.96µs | -1.13% | | codec/lib0 encode var_int (64 bit) | 387.2±5.63µs | 384.6±2.88µs | **-0.67%** | | codec/lib0 encode var_uint (32 bit) | 385.8±4.40µs | 373.3±1.00µs | **-3.24%** | | codec/lib0 encode var_uint (64 bit) | 380.3±3.66µs | 373.8±4.17µs | **-1.71%** | | ops/array/jwst/insert | 122.9±1.28µs | 125.1±1.45µs | **+1.79%** | | ops/array/jwst/insert range | 179.9±1.08µs | 187.5±4.00µs | **+4.22%** | | ops/array/jwst/remove | 69.1±0.43µs | 67.0±0.49µs | **-3.04%** | | ops/array/yrs/insert | 71.3±0.46µs | 70.6±0.84µs | **-0.98%** | | ops/array/yrs/insert range | 96.8±0.60µs | 96.3±0.51µs | **-0.52%** | | ops/array/yrs/remove | 99.0±0.28µs | 101.6±1.33µs | **+2.63%** | | ops/map/jwst/get | 222.2±5.10ns | 219.7±3.64ns | -1.13% | | ops/map/jwst/insert | 4.6±0.03µs | 5.0±0.08µs | **+8.70%** | | ops/map/jwst/remove | 6.5±0.05µs | 6.5±0.07µs | -0.00% | | ops/map/yrs/get | 269.1±4.67ns | 269.4±4.06ns | +0.11% | | ops/map/yrs/insert | 5.7±0.05µs | 6.7±0.03µs | **+17.54%** | | ops/map/yrs/remove | 6.8±0.02µs | 7.1±0.03µs | **+4.41%** | | ops/text/jwst/insert | 87.7±0.86µs | 86.1±1.61µs | **-1.82%** | | ops/text/jwst/remove | 2.1±0.02µs | 2.1±0.04µs | -0.00% | | ops/text/yrs/insert | 32.2±0.44µs | 32.4±0.20µs | **+0.62%** | | ops/text/yrs/remove | 2.5±0.08µs | 2.5±0.02µs | -0.00% | | update/parse with jwst/basic.bin | 58.2±0.81µs | 56.5±0.86µs | **-2.92%** | | update/parse with jwst/database.bin | 43.9±0.30µs | 45.2±0.53µs | **+2.96%** | | update/parse with jwst/edge-case-left-right-same-node.bin | 69.4±0.49µs | 70.7±0.36µs | **+1.87%** | | update/parse with jwst/large.bin | 2.8±0.08ms | 2.9±0.17ms | **+3.57%** | | update/parse with jwst/with-subdoc.bin | 7.9±0.12µs | 8.2±0.16µs | **+3.80%** | | update/parse with yrs/basic.bin | 44.8±0.37µs | 43.8±0.59µs | **-2.23%** | | update/parse with yrs/database.bin | 36.5±0.37µs | 34.3±1.22µs | **-6.03%** | | update/parse with yrs/edge-case-left-right-same-node.bin | 58.6±1.43µs | 56.0±1.71µs | **-4.44%** | | update/parse with yrs/large.bin | 2.2±0.11ms | 2.1±0.07ms | **-4.55%** | | update/parse with yrs/with-subdoc.bin | 7.6±0.05µs | 7.3±0.18µs | **-3.95%** |
github-actions[bot] commented 3 months ago

Benchmark for Linux

Click to view benchmark | Test | Base | PR | % | | --- | --- | --- | --- | | codec/jwst decode var_int (32 bit) | 213.1±4.17µs | 212.5±1.08µs | -0.28% | | codec/jwst decode var_uint (32 bit) | 178.3±1.15µs | 178.7±3.60µs | +0.22% | | codec/jwst decode var_uint (64 bit) | 193.3±0.95µs | 193.3±0.88µs | -0.00% | | codec/jwst encode var_int (32 bit) | 330.7±1.87µs | 331.1±4.80µs | +0.12% | | codec/jwst encode var_uint (32 bit) | 256.8±11.62µs | 254.8±4.39µs | -0.78% | | codec/jwst encode var_uint (64 bit) | 255.6±5.26µs | 255.7±5.52µs | +0.04% | | codec/lib0 decode var_int (64 bit) | 185.3±1.77µs | 185.8±2.28µs | +0.27% | | codec/lib0 decode var_uint (32 bit) | 184.6±2.24µs | 184.3±2.26µs | -0.16% | | codec/lib0 decode var_uint (64 bit) | 186.8±9.74µs | 184.2±1.90µs | **-1.39%** | | codec/lib0 encode var_int (64 bit) | 384.4±1.84µs | 384.4±1.70µs | -0.00% | | codec/lib0 encode var_uint (32 bit) | 373.5±1.61µs | 373.4±1.62µs | -0.03% | | codec/lib0 encode var_uint (64 bit) | 373.2±1.03µs | 373.1±0.76µs | **-0.03%** | | ops/array/jwst/insert | 103.5±1.01µs | 103.3±3.35µs | -0.19% | | ops/array/jwst/insert range | 153.7±0.74µs | 151.7±1.57µs | **-1.30%** | | ops/array/jwst/remove | 56.4±1.71µs | 55.1±0.18µs | **-2.30%** | | ops/array/yrs/insert | 57.2±0.42µs | 57.4±0.30µs | **+0.35%** | | ops/array/yrs/insert range | 73.3±0.35µs | 73.2±0.35µs | **-0.14%** | | ops/array/yrs/remove | 66.8±0.57µs | 65.4±0.52µs | **-2.10%** | | ops/map/jwst/get | 214.7±1.55ns | 214.8±1.22ns | +0.05% | | ops/map/jwst/insert | 3.0±0.01µs | 3.0±0.03µs | -0.00% | | ops/map/jwst/remove | 4.3±0.03µs | 4.2±0.02µs | **-2.33%** | | ops/map/yrs/get | 241.3±1.11ns | 241.2±1.33ns | -0.04% | | ops/map/yrs/insert | 3.7±0.03µs | 3.8±0.10µs | **+2.70%** | | ops/map/yrs/remove | 4.8±0.03µs | 4.8±0.05µs | -0.00% | | ops/text/jwst/insert | 66.7±0.43µs | 67.2±0.38µs | **+0.75%** | | ops/text/jwst/remove | 1402.9±14.20ns | 1417.3±15.70ns | **+1.03%** | | ops/text/yrs/insert | 26.6±0.30µs | 26.7±0.38µs | **+0.38%** | | ops/text/yrs/remove | 1704.6±16.36ns | 1704.0±23.40ns | -0.04% | | update/parse with jwst/basic.bin | 39.3±0.16µs | 39.0±0.13µs | **-0.76%** | | update/parse with jwst/database.bin | 31.4±0.20µs | 31.4±0.86µs | -0.00% | | update/parse with jwst/edge-case-left-right-same-node.bin | 50.5±0.16µs | 50.3±0.40µs | **-0.40%** | | update/parse with jwst/large.bin | 1839.4±17.21µs | 1842.8±9.86µs | +0.18% | | update/parse with jwst/with-subdoc.bin | 5.3±0.02µs | 5.3±0.04µs | -0.00% | | update/parse with yrs/basic.bin | 30.6±0.11µs | 30.3±0.31µs | **-0.98%** | | update/parse with yrs/database.bin | 24.8±0.22µs | 24.6±0.08µs | **-0.81%** | | update/parse with yrs/edge-case-left-right-same-node.bin | 41.4±0.35µs | 40.7±0.19µs | **-1.69%** | | update/parse with yrs/large.bin | 2.6±0.04ms | 2.6±0.01ms | -0.00% | | update/parse with yrs/with-subdoc.bin | 4.1±0.05µs | 3.9±0.03µs | **-4.88%** |

Benchmark for Windows

Click to view benchmark | Test | Base | PR | % | | --- | --- | --- | --- | | codec/jwst decode var_int (32 bit) | 213.2±1.37µs | 213.0±1.64µs | -0.09% | | codec/jwst decode var_uint (32 bit) | 180.6±3.61µs | 180.3±3.14µs | -0.17% | | codec/jwst decode var_uint (64 bit) | 184.7±4.69µs | 184.8±6.97µs | +0.05% | | codec/jwst encode var_int (32 bit) | 277.6±3.98µs | 277.6±5.50µs | -0.00% | | codec/jwst encode var_uint (32 bit) | 291.4±4.57µs | 300.6±3.41µs | **+3.16%** | | codec/jwst encode var_uint (64 bit) | 288.7±7.04µs | 298.8±4.21µs | **+3.50%** | | codec/lib0 decode var_int (64 bit) | 189.8±6.22µs | 191.8±6.91µs | +1.05% | | codec/lib0 decode var_uint (32 bit) | 186.2±4.71µs | 185.8±4.69µs | -0.21% | | codec/lib0 decode var_uint (64 bit) | 186.9±4.90µs | 187.2±5.24µs | +0.16% | | codec/lib0 encode var_int (64 bit) | 387.3±6.00µs | 386.8±5.56µs | -0.13% | | codec/lib0 encode var_uint (32 bit) | 388.0±4.45µs | 375.1±2.48µs | **-3.32%** | | codec/lib0 encode var_uint (64 bit) | 380.9±2.40µs | 374.3±0.95µs | **-1.73%** | | ops/array/jwst/insert | 125.9±1.45µs | 126.8±3.14µs | +0.71% | | ops/array/jwst/insert range | 193.8±1.46µs | 183.1±0.83µs | **-5.52%** | | ops/array/jwst/remove | 66.8±0.88µs | 66.8±1.27µs | -0.00% | | ops/array/yrs/insert | 73.5±0.95µs | 70.9±0.79µs | **-3.54%** | | ops/array/yrs/insert range | 95.2±0.44µs | 95.2±0.66µs | -0.00% | | ops/array/yrs/remove | 99.4±0.43µs | 100.3±1.14µs | **+0.91%** | | ops/map/jwst/get | 219.5±4.08ns | 232.3±3.01ns | **+5.83%** | | ops/map/jwst/insert | 4.6±0.03µs | 5.0±0.06µs | **+8.70%** | | ops/map/jwst/remove | 6.5±0.03µs | 6.8±0.04µs | **+4.62%** | | ops/map/yrs/get | 271.7±4.71ns | 268.1±3.62ns | **-1.32%** | | ops/map/yrs/insert | 6.5±0.05µs | 6.9±0.28µs | **+6.15%** | | ops/map/yrs/remove | 6.9±0.13µs | 7.3±0.07µs | **+5.80%** | | ops/text/jwst/insert | 86.4±0.86µs | 86.9±1.36µs | **+0.58%** | | ops/text/jwst/remove | 2.1±0.01µs | 2.2±0.01µs | **+4.76%** | | ops/text/yrs/insert | 32.1±0.38µs | 32.7±0.43µs | **+1.87%** | | ops/text/yrs/remove | 2.5±0.02µs | 2.6±0.03µs | **+4.00%** | | update/parse with jwst/basic.bin | 57.3±1.15µs | 55.2±0.90µs | **-3.66%** | | update/parse with jwst/database.bin | 43.4±0.34µs | 43.8±0.24µs | **+0.92%** | | update/parse with jwst/edge-case-left-right-same-node.bin | 70.0±1.37µs | 69.8±0.69µs | **-0.29%** | | update/parse with jwst/large.bin | 2.9±0.19ms | 2.9±0.20ms | -0.00% | | update/parse with jwst/with-subdoc.bin | 8.3±0.05µs | 8.2±0.03µs | **-1.20%** | | update/parse with yrs/basic.bin | 46.3±0.58µs | 43.1±0.51µs | **-6.91%** | | update/parse with yrs/database.bin | 35.0±0.18µs | 34.6±0.18µs | **-1.14%** | | update/parse with yrs/edge-case-left-right-same-node.bin | 54.1±0.68µs | 54.3±0.30µs | **+0.37%** | | update/parse with yrs/large.bin | 2.2±0.15ms | 2.1±0.07ms | **-4.55%** | | update/parse with yrs/with-subdoc.bin | 7.3±0.07µs | 7.6±0.05µs | **+4.11%** |
github-actions[bot] commented 1 month ago

Benchmark for Linux

Click to view benchmark | Test | Base | PR | % | | --- | --- | --- | --- | | codec/jwst decode var_int (32 bit) | 212.6±1.19µs | 212.8±0.33µs | **+0.09%** | | codec/jwst decode var_uint (32 bit) | 178.2±1.04µs | 178.2±0.43µs | -0.00% | | codec/jwst decode var_uint (64 bit) | 180.8±1.50µs | 206.3±0.35µs | **+14.10%** | | codec/jwst encode var_int (32 bit) | 330.6±0.48µs | 334.4±6.26µs | **+1.15%** | | codec/jwst encode var_uint (32 bit) | 269.7±3.62µs | 252.9±3.21µs | **-6.23%** | | codec/jwst encode var_uint (64 bit) | 274.2±18.10µs | 253.6±4.97µs | **-7.51%** | | codec/lib0 decode var_int (64 bit) | 186.3±3.13µs | 186.6±3.15µs | +0.16% | | codec/lib0 decode var_uint (32 bit) | 185.4±4.83µs | 184.8±3.42µs | -0.32% | | codec/lib0 decode var_uint (64 bit) | 184.8±2.19µs | 185.7±6.67µs | +0.49% | | codec/lib0 encode var_int (64 bit) | 387.5±8.52µs | 384.9±1.45µs | **-0.67%** | | codec/lib0 encode var_uint (32 bit) | 373.0±0.84µs | 373.7±0.27µs | **+0.19%** | | codec/lib0 encode var_uint (64 bit) | 374.1±4.73µs | 373.7±0.25µs | **-0.11%** | | ops/array/jwst/insert | 102.8±0.78µs | 102.3±0.96µs | **-0.49%** | | ops/array/jwst/insert range | 154.3±4.01µs | 154.3±0.66µs | -0.00% | | ops/array/jwst/remove | 56.2±1.03µs | 56.9±0.34µs | **+1.25%** | | ops/array/yrs/insert | 55.1±0.44µs | 57.4±0.68µs | **+4.17%** | | ops/array/yrs/insert range | 71.1±0.61µs | 72.8±0.55µs | **+2.39%** | | ops/array/yrs/remove | 64.2±0.63µs | 63.8±0.56µs | **-0.62%** | | ops/map/jwst/get | 215.3±2.13ns | 215.6±2.32ns | +0.14% | | ops/map/jwst/insert | 3.1±0.03µs | 3.2±0.04µs | **+3.23%** | | ops/map/jwst/remove | 4.3±0.03µs | 4.5±0.03µs | **+4.65%** | | ops/map/yrs/get | 244.7±1.63ns | 244.7±1.67ns | -0.00% | | ops/map/yrs/insert | 3.8±0.05µs | 3.7±0.02µs | **-2.63%** | | ops/map/yrs/remove | 4.9±0.02µs | 4.8±0.03µs | **-2.04%** | | ops/text/jwst/insert | 66.2±1.06µs | 69.0±1.14µs | **+4.23%** | | ops/text/jwst/remove | 1447.8±17.84ns | 1462.6±9.39ns | **+1.02%** | | ops/text/yrs/insert | 27.5±0.57µs | 26.3±0.57µs | **-4.36%** | | ops/text/yrs/remove | 1691.5±19.19ns | 1682.4±12.56ns | -0.54% | | update/parse with jwst/basic.bin | 39.4±0.17µs | 39.4±0.24µs | -0.00% | | update/parse with jwst/database.bin | 31.7±0.10µs | 31.7±0.27µs | -0.00% | | update/parse with jwst/edge-case-left-right-same-node.bin | 50.6±0.21µs | 50.7±0.26µs | **+0.20%** | | update/parse with jwst/large.bin | 3.3±0.03ms | 3.3±0.04ms | -0.00% | | update/parse with jwst/with-subdoc.bin | 5.2±0.05µs | 5.2±0.03µs | -0.00% | | update/parse with yrs/basic.bin | 32.5±0.31µs | 31.4±0.09µs | **-3.38%** | | update/parse with yrs/database.bin | 26.0±0.19µs | 25.7±0.31µs | **-1.15%** | | update/parse with yrs/edge-case-left-right-same-node.bin | 43.1±0.34µs | 41.5±0.35µs | **-3.71%** | | update/parse with yrs/large.bin | 2.8±0.02ms | 2.4±0.03ms | **-14.29%** | | update/parse with yrs/with-subdoc.bin | 4.1±0.07µs | 3.9±0.10µs | **-4.88%** |

Benchmark for Windows

Click to view benchmark | Test | Base | PR | % | | --- | --- | --- | --- | | codec/jwst decode var_int (32 bit) | 212.7±0.90µs | 212.4±0.89µs | **-0.14%** | | codec/jwst decode var_uint (32 bit) | 181.1±3.80µs | 180.7±3.96µs | -0.22% | | codec/jwst decode var_uint (64 bit) | 207.1±1.75µs | 195.1±4.20µs | **-5.79%** | | codec/jwst encode var_int (32 bit) | 303.4±1.95µs | 302.2±1.26µs | **-0.40%** | | codec/jwst encode var_uint (32 bit) | 255.4±6.77µs | 268.4±2.18µs | **+5.09%** | | codec/jwst encode var_uint (64 bit) | 263.9±5.81µs | 265.8±2.05µs | +0.72% | | codec/lib0 decode var_int (64 bit) | 188.8±6.10µs | 190.4±5.84µs | +0.85% | | codec/lib0 decode var_uint (32 bit) | 187.0±5.10µs | 184.5±4.29µs | -1.34% | | codec/lib0 decode var_uint (64 bit) | 182.3±2.10µs | 186.6±4.99µs | **+2.36%** | | codec/lib0 encode var_int (64 bit) | 385.4±5.47µs | 385.0±5.71µs | -0.10% | | codec/lib0 encode var_uint (32 bit) | 373.5±1.03µs | 373.2±1.09µs | -0.08% | | codec/lib0 encode var_uint (64 bit) | 373.6±1.17µs | 373.4±1.72µs | -0.05% | | ops/array/jwst/insert | 122.8±0.80µs | 118.6±1.49µs | **-3.42%** | | ops/array/jwst/insert range | 180.4±1.05µs | 179.4±2.09µs | -0.55% | | ops/array/jwst/remove | 66.3±0.83µs | 64.2±0.77µs | **-3.17%** | | ops/array/yrs/insert | 70.4±1.26µs | 69.3±0.60µs | **-1.56%** | | ops/array/yrs/insert range | 95.2±0.36µs | 93.2±0.44µs | **-2.10%** | | ops/array/yrs/remove | 100.4±5.96µs | 97.9±0.26µs | **-2.49%** | | ops/map/jwst/get | 223.2±4.15ns | 218.4±4.65ns | **-2.15%** | | ops/map/jwst/insert | 4.6±0.06µs | 4.6±0.02µs | -0.00% | | ops/map/jwst/remove | 6.3±0.03µs | 6.6±0.03µs | **+4.76%** | | ops/map/yrs/get | 273.7±5.55ns | 269.6±3.77ns | **-1.50%** | | ops/map/yrs/insert | 5.8±0.03µs | 5.7±0.44µs | **-1.72%** | | ops/map/yrs/remove | 6.9±0.04µs | 6.8±0.10µs | **-1.45%** | | ops/text/jwst/insert | 85.0±1.22µs | 84.6±1.27µs | -0.47% | | ops/text/jwst/remove | 2.1±0.01µs | 2.1±0.01µs | -0.00% | | ops/text/yrs/insert | 32.2±0.32µs | 31.7±0.19µs | **-1.55%** | | ops/text/yrs/remove | 2.5±0.01µs | 2.5±0.01µs | -0.00% | | update/parse with jwst/basic.bin | 55.1±0.46µs | 55.5±0.63µs | **+0.73%** | | update/parse with jwst/database.bin | 43.4±0.29µs | 45.8±0.86µs | **+5.53%** | | update/parse with jwst/edge-case-left-right-same-node.bin | 69.4±0.72µs | 70.6±0.33µs | **+1.73%** | | update/parse with jwst/large.bin | 2.6±0.05ms | 2.8±0.06ms | **+7.69%** | | update/parse with jwst/with-subdoc.bin | 8.2±0.07µs | 8.2±0.03µs | -0.00% | | update/parse with yrs/basic.bin | 44.7±0.28µs | 44.4±0.40µs | **-0.67%** | | update/parse with yrs/database.bin | 35.0±0.21µs | 35.1±0.36µs | **+0.29%** | | update/parse with yrs/edge-case-left-right-same-node.bin | 56.0±0.42µs | 54.3±0.26µs | **-3.04%** | | update/parse with yrs/large.bin | 2.2±0.06ms | 2.1±0.07ms | **-4.55%** | | update/parse with yrs/with-subdoc.bin | 7.3±0.06µs | 7.3±0.12µs | -0.00% |
github-actions[bot] commented 1 month ago

Benchmark for Linux

Click to view benchmark | Test | Base | PR | % | | --- | --- | --- | --- | | codec/jwst decode var_int (32 bit) | 212.8±2.53µs | 243.2±3.90µs | **+14.29%** | | codec/jwst decode var_uint (32 bit) | 178.2±0.95µs | 178.4±1.43µs | **+0.11%** | | codec/jwst decode var_uint (64 bit) | 193.2±0.46µs | 206.4±0.87µs | **+6.83%** | | codec/jwst encode var_int (32 bit) | 330.7±1.48µs | 330.7±1.68µs | -0.00% | | codec/jwst encode var_uint (32 bit) | 253.4±9.21µs | 255.3±3.84µs | +0.75% | | codec/jwst encode var_uint (64 bit) | 253.6±3.77µs | 255.5±3.60µs | +0.75% | | codec/lib0 decode var_int (64 bit) | 185.8±2.36µs | 187.1±2.84µs | +0.70% | | codec/lib0 decode var_uint (32 bit) | 184.6±1.99µs | 198.6±1.67µs | **+7.58%** | | codec/lib0 decode var_uint (64 bit) | 184.2±2.21µs | 186.7±1.46µs | **+1.36%** | | codec/lib0 encode var_int (64 bit) | 387.7±11.69µs | 385.6±3.95µs | -0.54% | | codec/lib0 encode var_uint (32 bit) | 373.0±0.36µs | 374.2±1.26µs | **+0.32%** | | codec/lib0 encode var_uint (64 bit) | 374.2±7.69µs | 374.3±1.32µs | +0.03% | | ops/array/jwst/insert | 100.9±1.59µs | 103.6±0.62µs | **+2.68%** | | ops/array/jwst/insert range | 152.9±3.04µs | 156.0±0.76µs | **+2.03%** | | ops/array/jwst/remove | 56.7±0.16µs | 58.6±0.21µs | **+3.35%** | | ops/array/yrs/insert | 55.3±1.10µs | 55.0±0.63µs | **-0.54%** | | ops/array/yrs/insert range | 70.7±0.60µs | 70.2±1.34µs | **-0.71%** | | ops/array/yrs/remove | 64.5±0.19µs | 64.4±0.62µs | **-0.16%** | | ops/map/jwst/get | 209.4±2.75ns | 207.6±3.59ns | -0.86% | | ops/map/jwst/insert | 3.1±0.02µs | 3.1±0.05µs | -0.00% | | ops/map/jwst/remove | 4.2±0.05µs | 4.2±0.02µs | -0.00% | | ops/map/yrs/get | 244.2±1.71ns | 244.4±1.71ns | +0.08% | | ops/map/yrs/insert | 3.8±0.03µs | 3.7±0.02µs | **-2.63%** | | ops/map/yrs/remove | 4.9±0.07µs | 4.9±0.02µs | -0.00% | | ops/text/jwst/insert | 68.1±1.77µs | 65.9±0.59µs | **-3.23%** | | ops/text/jwst/remove | 1448.0±24.41ns | 1461.5±19.86ns | +0.93% | | ops/text/yrs/insert | 26.5±0.32µs | 27.3±0.38µs | **+3.02%** | | ops/text/yrs/remove | 1670.3±24.68ns | 1697.3±19.09ns | **+1.62%** | | update/parse with jwst/basic.bin | 40.6±0.35µs | 39.7±0.26µs | **-2.22%** | | update/parse with jwst/database.bin | 33.3±0.14µs | 31.8±0.12µs | **-4.50%** | | update/parse with jwst/edge-case-left-right-same-node.bin | 53.2±0.53µs | 51.2±0.16µs | **-3.76%** | | update/parse with jwst/large.bin | 3.4±0.05ms | 3.2±0.01ms | **-5.88%** | | update/parse with jwst/with-subdoc.bin | 5.5±0.02µs | 5.3±0.07µs | **-3.64%** | | update/parse with yrs/basic.bin | 30.1±0.23µs | 30.8±0.19µs | **+2.33%** | | update/parse with yrs/database.bin | 24.6±0.09µs | 25.1±0.19µs | **+2.03%** | | update/parse with yrs/edge-case-left-right-same-node.bin | 41.2±0.35µs | 41.5±0.65µs | **+0.73%** | | update/parse with yrs/large.bin | 2.7±0.01ms | 2.4±0.03ms | **-11.11%** | | update/parse with yrs/with-subdoc.bin | 3.9±0.06µs | 3.9±0.02µs | -0.00% |

Benchmark for Windows

Click to view benchmark | Test | Base | PR | % | | --- | --- | --- | --- | | codec/jwst decode var_int (32 bit) | 214.9±7.42µs | 213.4±1.22µs | **-0.70%** | | codec/jwst decode var_uint (32 bit) | 181.0±3.50µs | 184.9±5.03µs | **+2.15%** | | codec/jwst decode var_uint (64 bit) | 195.5±3.00µs | 184.1±4.34µs | **-5.83%** | | codec/jwst encode var_int (32 bit) | 278.1±3.03µs | 306.5±9.14µs | **+10.21%** | | codec/jwst encode var_uint (32 bit) | 270.0±3.97µs | 294.0±5.46µs | **+8.89%** | | codec/jwst encode var_uint (64 bit) | 265.4±5.33µs | 289.3±5.26µs | **+9.01%** | | codec/lib0 decode var_int (64 bit) | 190.6±6.67µs | 187.4±6.40µs | -1.68% | | codec/lib0 decode var_uint (32 bit) | 184.7±1.45µs | 186.1±3.66µs | **+0.76%** | | codec/lib0 decode var_uint (64 bit) | 185.5±3.55µs | 185.5±4.15µs | -0.00% | | codec/lib0 encode var_int (64 bit) | 386.1±4.92µs | 386.2±2.53µs | +0.03% | | codec/lib0 encode var_uint (32 bit) | 374.4±1.03µs | 374.6±1.56µs | +0.05% | | codec/lib0 encode var_uint (64 bit) | 374.0±1.28µs | 374.9±2.26µs | +0.24% | | ops/array/jwst/insert | 133.0±1.61µs | 126.4±2.68µs | **-4.96%** | | ops/array/jwst/insert range | 196.6±1.99µs | 181.6±2.12µs | **-7.63%** | | ops/array/jwst/remove | 73.2±0.74µs | 63.0±1.23µs | **-13.93%** | | ops/array/yrs/insert | 69.4±0.65µs | 72.2±0.75µs | **+4.03%** | | ops/array/yrs/insert range | 93.2±0.62µs | 95.7±0.63µs | **+2.68%** | | ops/array/yrs/remove | 100.4±0.37µs | 100.5±0.84µs | **+0.10%** | | ops/map/jwst/get | 222.9±6.92ns | 234.4±7.41ns | **+5.16%** | | ops/map/jwst/insert | 4.7±0.04µs | 4.7±0.04µs | -0.00% | | ops/map/jwst/remove | 6.4±0.03µs | 6.6±0.18µs | **+3.12%** | | ops/map/yrs/get | 269.8±5.03ns | 269.6±4.48ns | -0.07% | | ops/map/yrs/insert | 5.8±0.09µs | 5.7±0.05µs | **-1.72%** | | ops/map/yrs/remove | 6.9±0.03µs | 6.8±0.02µs | **-1.45%** | | ops/text/jwst/insert | 85.9±0.87µs | 87.8±1.88µs | **+2.21%** | | ops/text/jwst/remove | 2.2±0.01µs | 2.2±0.02µs | -0.00% | | ops/text/yrs/insert | 32.0±0.27µs | 31.9±0.35µs | **-0.31%** | | ops/text/yrs/remove | 2.5±0.02µs | 2.5±0.01µs | -0.00% | | update/parse with jwst/basic.bin | 55.8±0.76µs | 59.1±0.62µs | **+5.91%** | | update/parse with jwst/database.bin | 44.9±0.38µs | 44.0±0.31µs | **-2.00%** | | update/parse with jwst/edge-case-left-right-same-node.bin | 71.7±0.44µs | 70.9±0.40µs | **-1.12%** | | update/parse with jwst/large.bin | 2.8±0.08ms | 2.8±0.08ms | -0.00% | | update/parse with jwst/with-subdoc.bin | 8.3±0.04µs | 8.2±0.05µs | **-1.20%** | | update/parse with yrs/basic.bin | 46.1±0.35µs | 44.2±0.35µs | **-4.12%** | | update/parse with yrs/database.bin | 35.3±1.72µs | 35.3±0.22µs | -0.00% | | update/parse with yrs/edge-case-left-right-same-node.bin | 54.9±0.45µs | 55.5±0.33µs | **+1.09%** | | update/parse with yrs/large.bin | 2.1±0.09ms | 2.2±0.08ms | **+4.76%** | | update/parse with yrs/with-subdoc.bin | 7.1±0.06µs | 7.3±0.05µs | **+2.82%** |
codecov-commenter commented 1 month ago

:warning: Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

Attention: Patch coverage is 87.04663% with 50 lines in your changes missing coverage. Please review.

Project coverage is 87.04%. Comparing base (953eb92) to head (e95bef9). Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
y-octo-node/tests/yjs/testHelper.ts 87.04% 50 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #43 +/- ## =========================================== + Coverage 37.69% 87.04% +49.35% =========================================== Files 1 1 Lines 260 386 +126 Branches 0 32 +32 =========================================== + Hits 98 336 +238 + Misses 162 50 -112 ``` | [Flag](https://app.codecov.io/gh/y-crdt/y-octo/pull/43/flags?src=pr&el=flags&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None) | Coverage Δ | | |---|---|---| | [node-binding-test](https://app.codecov.io/gh/y-crdt/y-octo/pull/43/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None) | `87.04% <87.04%> (+49.35%)` | :arrow_up: | Flags with carried forward coverage won't be shown. [Click here](https://docs.codecov.io/docs/carryforward-flags?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=None#carryforward-flags-in-the-pull-request-comment) to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

github-actions[bot] commented 1 month ago

Benchmark for Linux

Click to view benchmark | Test | Base | PR | % | | --- | --- | --- | --- | | codec/jwst decode var_int (32 bit) | 212.8±2.45µs | 213.3±1.28µs | +0.23% | | codec/jwst decode var_uint (32 bit) | 178.5±1.30µs | 180.9±1.03µs | **+1.34%** | | codec/jwst decode var_uint (64 bit) | 206.2±1.10µs | 181.1±1.49µs | **-12.17%** | | codec/jwst encode var_int (32 bit) | 330.7±1.35µs | 333.5±2.11µs | **+0.85%** | | codec/jwst encode var_uint (32 bit) | 257.1±2.08µs | 254.6±4.24µs | **-0.97%** | | codec/jwst encode var_uint (64 bit) | 257.1±1.70µs | 254.7±4.33µs | **-0.93%** | | codec/lib0 decode var_int (64 bit) | 187.0±3.30µs | 185.8±1.98µs | **-0.64%** | | codec/lib0 decode var_uint (32 bit) | 186.3±6.00µs | 184.9±1.92µs | **-0.75%** | | codec/lib0 decode var_uint (64 bit) | 185.2±3.01µs | 184.8±1.88µs | -0.22% | | codec/lib0 encode var_int (64 bit) | 385.4±2.55µs | 384.1±0.68µs | **-0.34%** | | codec/lib0 encode var_uint (32 bit) | 374.7±3.12µs | 373.2±0.43µs | **-0.40%** | | codec/lib0 encode var_uint (64 bit) | 374.0±0.92µs | 373.2±0.76µs | **-0.21%** | | ops/array/jwst/insert | 102.3±1.55µs | 103.4±1.01µs | **+1.08%** | | ops/array/jwst/insert range | 154.7±1.54µs | 156.3±1.91µs | **+1.03%** | | ops/array/jwst/remove | 57.2±0.11µs | 58.5±0.91µs | **+2.27%** | | ops/array/yrs/insert | 55.1±2.44µs | 57.2±0.23µs | **+3.81%** | | ops/array/yrs/insert range | 70.4±0.80µs | 72.8±0.49µs | **+3.41%** | | ops/array/yrs/remove | 64.1±0.61µs | 63.0±0.43µs | **-1.72%** | | ops/map/jwst/get | 219.6±3.48ns | 215.4±3.06ns | **-1.91%** | | ops/map/jwst/insert | 3.2±0.01µs | 3.2±0.03µs | -0.00% | | ops/map/jwst/remove | 4.3±0.11µs | 4.3±0.02µs | -0.00% | | ops/map/yrs/get | 242.8±2.03ns | 243.7±1.43ns | +0.37% | | ops/map/yrs/insert | 3.7±0.02µs | 4.0±0.02µs | **+8.11%** | | ops/map/yrs/remove | 4.8±0.03µs | 4.9±0.05µs | **+2.08%** | | ops/text/jwst/insert | 65.5±0.69µs | 68.6±0.57µs | **+4.73%** | | ops/text/jwst/remove | 1406.3±5.69ns | 1440.2±11.01ns | **+2.41%** | | ops/text/yrs/insert | 27.2±0.27µs | 27.7±0.31µs | **+1.84%** | | ops/text/yrs/remove | 1630.2±33.76ns | 1692.8±10.97ns | **+3.84%** | | update/parse with jwst/basic.bin | 41.8±0.33µs | 40.2±0.15µs | **-3.83%** | | update/parse with jwst/database.bin | 33.4±0.10µs | 32.4±0.19µs | **-2.99%** | | update/parse with jwst/edge-case-left-right-same-node.bin | 53.3±0.35µs | 51.8±0.27µs | **-2.81%** | | update/parse with jwst/large.bin | 3.4±0.14ms | 3.3±0.04ms | **-2.94%** | | update/parse with jwst/with-subdoc.bin | 5.6±0.06µs | 5.2±0.03µs | **-7.14%** | | update/parse with yrs/basic.bin | 30.4±0.25µs | 31.0±0.99µs | **+1.97%** | | update/parse with yrs/database.bin | 24.8±0.14µs | 25.1±0.14µs | **+1.21%** | | update/parse with yrs/edge-case-left-right-same-node.bin | 39.8±0.62µs | 40.4±0.13µs | **+1.51%** | | update/parse with yrs/large.bin | 2.4±0.03ms | 2.4±0.01ms | -0.00% | | update/parse with yrs/with-subdoc.bin | 3.7±0.01µs | 3.9±0.01µs | **+5.41%** |

Benchmark for Windows

Click to view benchmark | Test | Base | PR | % | | --- | --- | --- | --- | | codec/jwst decode var_int (32 bit) | 214.0±2.79µs | 213.3±1.49µs | -0.33% | | codec/jwst decode var_uint (32 bit) | 180.0±3.16µs | 180.7±3.15µs | +0.39% | | codec/jwst decode var_uint (64 bit) | 195.3±4.18µs | 183.4±3.91µs | **-6.09%** | | codec/jwst encode var_int (32 bit) | 281.2±8.70µs | 305.6±4.43µs | **+8.68%** | | codec/jwst encode var_uint (32 bit) | 268.7±2.32µs | 293.0±3.91µs | **+9.04%** | | codec/jwst encode var_uint (64 bit) | 264.7±3.81µs | 290.7±10.87µs | **+9.82%** | | codec/lib0 decode var_int (64 bit) | 190.6±7.25µs | 190.0±7.91µs | -0.31% | | codec/lib0 decode var_uint (32 bit) | 184.3±2.93µs | 186.2±4.33µs | +1.03% | | codec/lib0 decode var_uint (64 bit) | 186.2±4.02µs | 189.7±5.44µs | +1.88% | | codec/lib0 encode var_int (64 bit) | 386.3±4.91µs | 384.5±1.44µs | **-0.47%** | | codec/lib0 encode var_uint (32 bit) | 385.1±2.65µs | 373.3±1.22µs | **-3.06%** | | codec/lib0 encode var_uint (64 bit) | 379.6±1.48µs | 373.3±1.04µs | **-1.66%** | | ops/array/jwst/insert | 128.6±1.73µs | 124.5±1.07µs | **-3.19%** | | ops/array/jwst/insert range | 192.2±1.27µs | 185.0±1.14µs | **-3.75%** | | ops/array/jwst/remove | 65.9±0.30µs | 62.6±0.22µs | **-5.01%** | | ops/array/yrs/insert | 69.4±0.48µs | 71.2±0.41µs | **+2.59%** | | ops/array/yrs/insert range | 93.5±0.37µs | 96.0±0.89µs | **+2.67%** | | ops/array/yrs/remove | 100.3±0.92µs | 99.3±1.50µs | **-1.00%** | | ops/map/jwst/get | 220.8±6.31ns | 233.0±5.60ns | **+5.53%** | | ops/map/jwst/insert | 4.6±0.07µs | 4.5±0.04µs | **-2.17%** | | ops/map/jwst/remove | 6.4±0.04µs | 6.4±0.02µs | -0.00% | | ops/map/yrs/get | 271.5±5.83ns | 268.4±3.91ns | **-1.14%** | | ops/map/yrs/insert | 5.7±0.07µs | 5.6±0.09µs | **-1.75%** | | ops/map/yrs/remove | 6.8±0.05µs | 6.8±0.06µs | -0.00% | | ops/text/jwst/insert | 85.5±0.62µs | 84.9±1.28µs | **-0.70%** | | ops/text/jwst/remove | 2.2±0.01µs | 2.2±0.02µs | -0.00% | | ops/text/yrs/insert | 32.0±0.12µs | 31.8±0.34µs | **-0.62%** | | ops/text/yrs/remove | 2.5±0.05µs | 2.5±0.02µs | -0.00% | | update/parse with jwst/basic.bin | 56.5±0.45µs | 59.0±0.61µs | **+4.42%** | | update/parse with jwst/database.bin | 45.1±0.27µs | 44.8±0.27µs | **-0.67%** | | update/parse with jwst/edge-case-left-right-same-node.bin | 69.7±0.55µs | 69.3±0.42µs | **-0.57%** | | update/parse with jwst/large.bin | 2.7±0.06ms | 2.8±0.07ms | **+3.70%** | | update/parse with jwst/with-subdoc.bin | 8.4±0.06µs | 8.4±0.04µs | -0.00% | | update/parse with yrs/basic.bin | 44.3±0.24µs | 44.3±0.27µs | -0.00% | | update/parse with yrs/database.bin | 35.5±0.30µs | 35.7±0.17µs | **+0.56%** | | update/parse with yrs/edge-case-left-right-same-node.bin | 57.2±0.53µs | 56.0±0.32µs | **-2.10%** | | update/parse with yrs/large.bin | 2.2±0.04ms | 2.2±0.09ms | -0.00% | | update/parse with yrs/with-subdoc.bin | 7.4±0.07µs | 7.3±0.13µs | **-1.35%** |