Skip to content

Commit

Permalink
fix
Browse files Browse the repository at this point in the history
  • Loading branch information
victimsnino committed Sep 2, 2022
1 parent 6e1a6c7 commit e0b71e3
Showing 1 changed file with 1 addition and 0 deletions.
1 change: 1 addition & 0 deletions .github/workflows/clang_tidy_comments.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ jobs:
if: github.event.workflow_run.event == 'pull_request' && github.event.workflow_run.conclusion == 'success'

steps:
- uses: haya14busa/action-workflow_run-status@v1
- name: "Get PR information"
uses: potiuk/get-workflow-origin@v1_3
id: source-run-info
Expand Down

2 comments on commit e0b71e3

@github-actions
Copy link
Contributor

Choose a reason for hiding this comment

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

BENCHMARK RESULTS (AUTOGENERATED)

ci-ubuntu-clang

Observable construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable construction 0.40ns 0.374016 1.07 0.40ns
Dynamic observable construction 28.63ns 50.7242 0.56 25.51ns
Specific observable construction + as_dynamic 28.61ns 33.7152 0.85 25.03ns

Observable lift

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable lift specific observer 126.36ns 163.161 0.77 289.32ns
Specific observable lift dynamic observer 154.80ns 175.688 0.88 304.98ns
Dynamic observable lift specific observer 203.97ns 224.844 0.91 334.34ns
Dynamic observable lift dynamic observer 217.89ns 242.766 0.90 329.73ns

Observable subscribe

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe specific observer 89.25ns 133.272 0.67 292.43ns
Specific observable subscribe dynamic observer 102.76ns 123.468 0.83 295.82ns
Dynamic observable subscribe specific observer 158.46ns 191.398 0.83 332.60ns
Dynamic observable subscribe dynamic observer 156.99ns 177.476 0.88 318.36ns

Observable subscribe #2

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe lambda 88.48ns 108.923 0.81 290.36ns
Dynamic observable subscribe lambda 155.07ns 174.907 0.89 324.77ns
Specific observable subscribe lambda without subscription 88.66ns 110.408 0.80 289.05ns
Dynamic observable subscribe lambda without subscription 173.46ns 177.596 0.98 326.10ns
Specific observable subscribe specific subscriber 40.22ns 50.6669 0.79 224.23ns
Dynamic observable subscribe specific subscriber 107.93ns 122.341 0.88 266.18ns
Specific observable subscribe dynamic observer 42.56ns 50.6536 0.84 236.64ns
Dynamic observable subscribe dynamic observer 96.45ns 110.891 0.87 255.16ns

Observer construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer construction 0.40ns 0.371074 1.08 0.40ns
Dynamic observer construction 28.85ns 32.3281 0.89 19.66ns
Specific observer construction + as_dynamic 28.63ns 38.3751 0.75 19.70ns

OnNext

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer OnNext 0.44ns 0.75787 0.58 0.80ns
Dynamic observer OnNext 1.61ns 3.17777 0.51 2.01ns

Subscriber construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Make subsriber 48.92ns 52.9753 0.92 66.58ns
Make copy of subscriber 18.86ns 19.3577 0.97 4.92ns
Transform subsriber to dynamic 47.36ns 47.7832 0.99 25.04ns

Subscription

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
composite_subscription create 40.24ns 48.8915 0.82 49.50ns
composite_subscription add 51.44ns 57.3817 0.90 21.38ns
composite_subscription unsubscribe 15.02ns 14.7212 1.02 16.60ns

buffer

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
buffer 262.96ns 307.74 0.85 2031.30ns
sending of values from observable via buffer to subscriber 6.44ns 7.5487 0.85 22.92ns

chains creation test

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
long non-state chain creation + subscribe 297.51ns 315.95 0.94 533.93ns
long stateful chain creation + subscribe 424.98ns 454.715 0.93 841.79ns

combine_latest

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
combine_latest construction from observable via dot + subscribe 651.13ns 731.354 0.89 902.97ns
sending of values from observable via combine_latest to subscriber 22.49ns 26.58 0.85 1.71ns

concat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
concat 1477.03ns 1656.72 0.89 3674.45ns
concat_with 1780.15ns 1914.14 0.93 4191.22ns

distinct_until_changed

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
distinct_until_changed construction from observable via dot + subscribe 130.74ns 145.001 0.90 246.24ns
sending of values from observable via distinct_until_changed to subscriber 2.41ns 3.64012 0.66 1.61ns

first

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
first construction from observable via dot + subscribe 153.32ns 187.364 0.82 632.97ns
sending of values from observable via first to subscriber 0.61ns 0.651304 0.93 0.80ns

foundamental sources

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
empty 84.58ns 117.282 0.72 665.56ns
error 132.97ns 175.017 0.76 752.62ns
never 44.82ns 55.3986 0.81 249.38ns

from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
from vector with int 97.84ns 118.539 0.83 697.37ns

immediate scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 27.34ns 28.1807 0.97 112.57ns
re-schedule 10 times 35.88ns 37.8674 0.95 140.13ns

just

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
just send int 85.19ns 100.956 0.84 677.83ns
just send variadic 108.39ns 136.241 0.80 775.70ns

map

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
map construction from observable via dot + subscribe 96.58ns 100.411 0.96 239.85ns
sending of values from observable via map to subscriber 1.20ns 0.997605 1.21 2.01ns

merge

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
merge 1425.12ns 1590.02 0.90 3621.07ns
merge_with 1710.15ns 1897.19 0.90 3995.45ns

observe_on

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
observe_on construction from observable via dot + subscribe 607.44ns 654.954 0.93 2505.77ns
sending of values from observable via observe_on to subscriber 92.38ns 108.103 0.85 202.83ns

publish_subject callbacks

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
on_next 29.60ns 27.4894 1.08 8.02ns
on_error 0.61ns 0.562989 1.08 19.06ns
on_completed 0.61ns 0.602952 1.01 0.60ns

publish_subject routines

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
construct 207.36ns 227.621 0.91 151.08ns
get_observable 33.70ns 30.4292 1.11 44.25ns
get_subscriber 67.63ns 87.0858 0.78 12.09ns

repeat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
repeat construction from observable via dot + subscribe 4221.07ns 4654.32 0.91 3154.16ns

scan

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
scan construction from observable via dot + subscribe 127.58ns 138.295 0.92 292.72ns
sending of values from observable via scan to subscriber 2.01ns 2.23263 0.90 1.61ns

skip

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
skip construction from observable via dot + subscribe 125.14ns 173.336 0.72 475.99ns
sending of values from observable via skip to subscriber 2.41ns 3.10961 0.78 2.59ns

switch_on_next

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
switch_on_next construction from observable via dot + subscribe 1987.37ns 2196.43 0.90 3193.31ns
sending of values from observable via switch_on_next to subscriber 558.01ns 594.364 0.94 721.89ns

take

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
take construction from observable via dot + subscribe 195.85ns 213.75 0.92 510.45ns
sending of values from observable via take to subscriber 2.52ns 3.3552 0.75 2.25ns

trampoline scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 35.99ns 41.0029 0.88 147.84ns
re-schedule 10 times 50.71ns 57.4491 0.88 180.39ns
recursively schedule 10 times 1448.68ns 2052.75 0.71 5330.57ns

window

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
window 2214.11ns 2676.39 0.83 3312.16ns
sending of values from observable via window to subscriber 593.22ns 616.809 0.96 372.08ns

with_latest_from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
with_latest_from construction from observable via dot + subscribe 669.23ns 736.082 0.91 1089.89ns
sending of values from observable via with_latest_from to subscriber 22.49ns 26.9532 0.83 2.44ns

ci-ubuntu-gcc

Observable construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable construction 0.40ns 0.402041 1.00 0.40ns
Dynamic observable construction 37.77ns 28.8147 1.31 27.98ns
Specific observable construction + as_dynamic 37.74ns 28.7988 1.31 28.11ns

Observable lift

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable lift specific observer 156.76ns 123.182 1.27 403.99ns
Specific observable lift dynamic observer 188.02ns 155.198 1.21 419.69ns
Dynamic observable lift specific observer 255.62ns 209.162 1.22 456.69ns
Dynamic observable lift dynamic observer 273.99ns 222.1 1.23 441.10ns

Observable subscribe

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe specific observer 106.73ns 82.9258 1.29 394.71ns
Specific observable subscribe dynamic observer 124.71ns 99.3651 1.26 399.27ns
Dynamic observable subscribe specific observer 192.70ns 157.716 1.22 444.40ns
Dynamic observable subscribe dynamic observer 194.77ns 161.936 1.20 421.90ns

Observable subscribe #2

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe lambda 106.72ns 83.4364 1.28 391.23ns
Dynamic observable subscribe lambda 192.34ns 153.659 1.25 448.03ns
Specific observable subscribe lambda without subscription 106.90ns 84.7079 1.26 393.82ns
Dynamic observable subscribe lambda without subscription 192.10ns 154.0 1.25 440.30ns
Specific observable subscribe specific subscriber 60.14ns 49.0641 1.23 326.27ns
Dynamic observable subscribe specific subscriber 139.59ns 118.567 1.18 379.48ns
Specific observable subscribe dynamic observer 60.08ns 49.4667 1.21 333.03ns
Dynamic observable subscribe dynamic observer 128.85ns 111.237 1.16 350.32ns

Observer construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer construction 0.40ns 0.401035 1.00 0.40ns
Dynamic observer construction 37.77ns 28.8407 1.31 25.06ns
Specific observer construction + as_dynamic 37.79ns 28.7315 1.32 25.63ns

OnNext

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer OnNext 0.40ns 0.427479 0.94 0.40ns
Dynamic observer OnNext 2.01ns 1.60745 1.25 2.09ns

Subscriber construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Make subsriber 48.32ns 36.1798 1.34 74.77ns
Make copy of subscriber 20.10ns 16.0928 1.25 5.38ns
Transform subsriber to dynamic 53.28ns 44.7526 1.19 31.58ns

Subscription

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
composite_subscription create 44.25ns 35.3608 1.25 69.03ns
composite_subscription add 56.41ns 48.9696 1.15 20.95ns
composite_subscription unsubscribe 16.11ns 15.4654 1.04 12.95ns

buffer

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
buffer 305.81ns 258.614 1.18 2314.53ns
sending of values from observable via buffer to subscriber 7.86ns 6.15841 1.28 37.09ns

chains creation test

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
long non-state chain creation + subscribe 361.27ns 336.238 1.07 848.39ns
long stateful chain creation + subscribe 520.68ns 463.825 1.12 1272.34ns

combine_latest

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
combine_latest construction from observable via dot + subscribe 781.45ns 681.213 1.15 1323.19ns
sending of values from observable via combine_latest to subscriber 22.11ns 22.4888 0.98 2.82ns

concat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
concat 1725.16ns 1517.35 1.14 4366.61ns
concat_with 2091.14ns 1828.59 1.14 4696.68ns

distinct_until_changed

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
distinct_until_changed construction from observable via dot + subscribe 163.89ns 141.519 1.16 433.23ns
sending of values from observable via distinct_until_changed to subscriber 4.03ns 3.61864 1.11 2.81ns

first

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
first construction from observable via dot + subscribe 193.89ns 169.442 1.14 856.23ns
sending of values from observable via first to subscriber 0.81ns 0.804812 1.00 1.21ns

foundamental sources

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
empty 105.75ns 89.1542 1.19 913.59ns
error 157.71ns 137.216 1.15 1014.79ns
never 60.03ns 47.8489 1.25 339.61ns

from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
from vector with int 126.58ns 101.996 1.24 943.33ns

immediate scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 35.36ns 28.8806 1.22 160.52ns
re-schedule 10 times 50.88ns 42.5331 1.20 209.09ns

just

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
just send int 108.37ns 90.9304 1.19 918.04ns
just send variadic 153.10ns 115.904 1.32 982.74ns

map

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
map construction from observable via dot + subscribe 121.83ns 126.276 0.96 417.83ns
sending of values from observable via map to subscriber 1.61ns 1.00477 1.60 3.22ns

merge

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
merge 1641.66ns 1481.25 1.11 4439.95ns
merge_with 2028.02ns 1880.44 1.08 4739.31ns

observe_on

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
observe_on construction from observable via dot + subscribe 733.92ns 649.424 1.13 3312.86ns
sending of values from observable via observe_on to subscriber 107.84ns 95.6446 1.13 285.77ns

publish_subject callbacks

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
on_next 27.31ns 30.1459 0.91 14.03ns
on_error 0.81ns 0.808724 1.00 20.20ns
on_completed 0.81ns 0.808817 1.00 0.81ns

publish_subject routines

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
construct 239.42ns 213.492 1.12 208.89ns
get_observable 35.36ns 30.5498 1.16 59.48ns
get_subscriber 69.35ns 63.6135 1.09 27.81ns

repeat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
repeat construction from observable via dot + subscribe 4991.82ns 4396.42 1.14 3672.34ns

scan

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
scan construction from observable via dot + subscribe 164.23ns 148.166 1.11 467.14ns
sending of values from observable via scan to subscriber 3.22ns 2.81152 1.15 2.80ns

skip

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
skip construction from observable via dot + subscribe 161.46ns 134.396 1.20 637.25ns
sending of values from observable via skip to subscriber 4.15ns 2.81351 1.47 2.82ns

switch_on_next

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
switch_on_next construction from observable via dot + subscribe 2346.36ns 2057.66 1.14 4926.77ns
sending of values from observable via switch_on_next to subscriber 651.43ns 577.43 1.13 1299.94ns

take

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
take construction from observable via dot + subscribe 231.76ns 194.8 1.19 722.89ns
sending of values from observable via take to subscriber 4.83ns 3.64835 1.32 4.54ns

trampoline scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 55.07ns 45.714 1.20 222.46ns
re-schedule 10 times 82.48ns 70.2891 1.17 270.12ns
recursively schedule 10 times 1788.67ns 1466.2 1.22 7968.50ns

window

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
window 2588.96ns 2277.84 1.14 3819.15ns
sending of values from observable via window to subscriber 707.87ns 623.77 1.13 508.26ns

with_latest_from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
with_latest_from construction from observable via dot + subscribe 808.74ns 709.699 1.14 1684.40ns
sending of values from observable via with_latest_from to subscriber 21.28ns 22.4826 0.95 4.83ns

ci-windows

Observable construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable construction 2.18ns 1.50471 1.45 0.85ns
Dynamic observable construction 99.43ns 81.7453 1.22 189.10ns
Specific observable construction + as_dynamic 101.75ns 81.637 1.25 147.74ns

Observable lift

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable lift specific observer 233.02ns 186.134 1.25 1435.42ns
Specific observable lift dynamic observer 276.32ns 213.975 1.29 1790.22ns
Dynamic observable lift specific observer 388.00ns 313.964 1.24 1760.29ns
Dynamic observable lift dynamic observer 351.44ns 267.906 1.31 2117.79ns

Observable subscribe

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe specific observer 251.56ns 145.182 1.73 1586.35ns
Specific observable subscribe dynamic observer 224.91ns 164.741 1.37 1389.29ns
Dynamic observable subscribe specific observer 339.15ns 264.255 1.28 1631.71ns
Dynamic observable subscribe dynamic observer 241.60ns 211.347 1.14 1538.32ns

Observable subscribe #2

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe lambda 183.79ns 167.539 1.10 1402.25ns
Dynamic observable subscribe lambda 344.33ns 266.245 1.29 1774.61ns
Specific observable subscribe lambda without subscription 187.38ns 146.224 1.28 1617.85ns
Dynamic observable subscribe lambda without subscription 384.91ns 266.265 1.45 1693.94ns
Specific observable subscribe specific subscriber 61.30ns 47.847 1.28 1143.96ns
Dynamic observable subscribe specific subscriber 190.64ns 165.482 1.15 1297.87ns
Specific observable subscribe dynamic observer 68.38ns 50.8821 1.34 1157.68ns
Dynamic observable subscribe dynamic observer 127.94ns 99.5308 1.29 1266.35ns

Observer construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer construction 2.29ns 1.51323 1.51 2.11ns
Dynamic observer construction 96.72ns 83.2955 1.16 153.79ns
Specific observer construction + as_dynamic 104.56ns 194.918 0.54 140.94ns

OnNext

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer OnNext 0.87ns 0.668865 1.31 0.78ns
Dynamic observer OnNext 2.43ns 1.69039 1.44 2.74ns

Subscriber construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Make subsriber 121.55ns 93.4847 1.30 532.99ns
Make copy of subscriber 18.61ns 16.691 1.12 38.18ns
Transform subsriber to dynamic 137.65ns 97.703 1.41 169.59ns

Subscription

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
composite_subscription create 117.12ns 92.3167 1.27 435.89ns
composite_subscription add 125.97ns 66.4789 1.89 76.23ns
composite_subscription unsubscribe 21.79ns 14.5442 1.50 28.99ns

buffer

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
buffer 454.95ns 377.0 1.21 5859.80ns
sending of values from observable via buffer to subscriber 10.21ns 6.55588 1.56 173.01ns

chains creation test

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
long non-state chain creation + subscribe 355.80ns 282.39 1.26 2308.23ns
long stateful chain creation + subscribe 851.20ns 675.056 1.26 4276.83ns

combine_latest

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
combine_latest construction from observable via dot + subscribe 1348.36ns 1084.04 1.24 3464.50ns
sending of values from observable via combine_latest to subscriber 44.26ns 35.8579 1.23 6.17ns

concat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
concat 2754.33ns 2072.77 1.33 18023.50ns
concat_with 3731.71ns 2704.2 1.38 15105.50ns

distinct_until_changed

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
distinct_until_changed construction from observable via dot + subscribe 247.64ns 232.403 1.07 1457.87ns
sending of values from observable via distinct_until_changed to subscriber 5.46ns 3.68694 1.48 4.88ns

first

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
first construction from observable via dot + subscribe 181.46ns 143.987 1.26 3654.00ns
sending of values from observable via first to subscriber 3.51ns 2.6782 1.31 1.29ns

foundamental sources

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
empty 151.80ns 80.2845 1.89 3198.00ns
error 180.65ns 136.125 1.33 3285.60ns
never 59.93ns 46.0152 1.30 1123.42ns

from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
from vector with int 190.69ns 168.407 1.13 2992.67ns

immediate scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 32.82ns 27.7438 1.18 601.12ns
re-schedule 10 times 179.49ns 122.467 1.47 572.68ns

just

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
just send int 111.79ns 87.1126 1.28 2772.60ns
just send variadic 165.42ns 120.064 1.38 3544.75ns

map

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
map construction from observable via dot + subscribe 118.69ns 102.717 1.16 1460.08ns
sending of values from observable via map to subscriber 4.40ns 3.34375 1.32 7.99ns

merge

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
merge 2918.26ns 1962.0 1.49 13466.70ns
merge_with 3287.18ns 2603.0 1.26 15901.00ns

observe_on

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
observe_on construction from observable via dot + subscribe 1057.66ns 827.333 1.28 13110.80ns
sending of values from observable via observe_on to subscriber 122.51ns 91.7323 1.34 1059.27ns

publish_subject callbacks

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
on_next 23.74ns 20.2012 1.18 37.29ns
on_error 3.21ns 3.47392 0.92 25.39ns
on_completed 2.86ns 2.69647 1.06 0.82ns

publish_subject routines

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
construct 431.28ns 354.333 1.22 787.20ns
get_observable 32.36ns 28.0813 1.15 208.44ns
get_subscriber 70.10ns 50.1725 1.40 120.61ns

repeat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
repeat construction from observable via dot + subscribe 8200.38ns 6135.4 1.34 15875.00ns

scan

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
scan construction from observable via dot + subscribe 238.56ns 205.48 1.16 1558.21ns
sending of values from observable via scan to subscriber 6.78ns 5.35336 1.27 12.13ns

skip

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
skip construction from observable via dot + subscribe 234.60ns 192.119 1.22 1894.15ns
sending of values from observable via skip to subscriber 5.80ns 3.68878 1.57 4.79ns

switch_on_next

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
switch_on_next construction from observable via dot + subscribe 3417.50ns 2970.0 1.15 15423.00ns
sending of values from observable via switch_on_next to subscriber 1051.44ns 793.939 1.32 3702.78ns

take

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
take construction from observable via dot + subscribe 341.47ns 263.34 1.30 2797.64ns
sending of values from observable via take to subscriber 6.95ns 5.44519 1.28 7.48ns

trampoline scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 53.25ns 42.4127 1.26 763.13ns
re-schedule 10 times 191.12ns 136.01 1.41 852.09ns
recursively schedule 10 times 3783.29ns 3146.2 1.20 22893.50ns

window

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
window 4030.93ns 2953.67 1.36 12587.70ns
sending of values from observable via window to subscriber 1102.43ns 840.355 1.31 2028.13ns

with_latest_from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
with_latest_from construction from observable via dot + subscribe 1486.49ns 1086.41 1.37 4883.67ns
sending of values from observable via with_latest_from to subscriber 36.57ns 29.0967 1.26 9.30ns

@github-actions
Copy link
Contributor

Choose a reason for hiding this comment

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

BENCHMARK RESULTS (AUTOGENERATED)

ci-ubuntu-clang

Observable construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable construction 0.33ns 0.401904 0.83 0.30ns
Dynamic observable construction 29.20ns 28.628 1.02 21.50ns
Specific observable construction + as_dynamic 29.21ns 28.6131 1.02 21.38ns

Observable lift

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable lift specific observer 130.29ns 126.362 1.03 255.80ns
Specific observable lift dynamic observer 149.56ns 154.797 0.97 269.76ns
Dynamic observable lift specific observer 204.78ns 203.975 1.00 296.19ns
Dynamic observable lift dynamic observer 206.81ns 217.89 0.95 283.79ns

Observable subscribe

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe specific observer 94.31ns 89.2524 1.06 255.27ns
Specific observable subscribe dynamic observer 103.10ns 102.764 1.00 271.04ns
Dynamic observable subscribe specific observer 164.08ns 158.464 1.04 292.17ns
Dynamic observable subscribe dynamic observer 155.38ns 156.992 0.99 276.92ns

Observable subscribe #2

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe lambda 101.13ns 88.4812 1.14 252.89ns
Dynamic observable subscribe lambda 159.24ns 155.067 1.03 290.16ns
Specific observable subscribe lambda without subscription 98.40ns 88.6609 1.11 252.24ns
Dynamic observable subscribe lambda without subscription 158.57ns 173.464 0.91 290.19ns
Specific observable subscribe specific subscriber 46.58ns 40.2158 1.16 197.44ns
Dynamic observable subscribe specific subscriber 108.78ns 107.928 1.01 236.13ns
Specific observable subscribe dynamic observer 44.61ns 42.561 1.05 215.01ns
Dynamic observable subscribe dynamic observer 95.34ns 96.4461 0.99 235.93ns

Observer construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer construction 0.34ns 0.402205 0.83 0.30ns
Dynamic observer construction 29.20ns 28.8463 1.01 18.69ns
Specific observer construction + as_dynamic 29.15ns 28.6264 1.02 18.15ns

OnNext

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer OnNext 0.67ns 0.44268 1.51 0.59ns
Dynamic observer OnNext 1.68ns 1.6082 1.04 2.07ns

Subscriber construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Make subsriber 48.15ns 48.9157 0.98 56.90ns
Make copy of subscriber 16.75ns 18.8603 0.89 4.14ns
Transform subsriber to dynamic 45.88ns 47.3621 0.97 23.70ns

Subscription

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
composite_subscription create 43.28ns 40.2406 1.08 47.45ns
composite_subscription add 49.72ns 51.4427 0.97 18.63ns
composite_subscription unsubscribe 12.56ns 15.0245 0.84 9.64ns

buffer

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
buffer 268.91ns 262.96 1.02 1662.58ns
sending of values from observable via buffer to subscriber 6.43ns 6.44335 1.00 23.81ns

chains creation test

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
long non-state chain creation + subscribe 273.57ns 297.511 0.92 438.02ns
long stateful chain creation + subscribe 397.28ns 424.979 0.93 705.84ns

combine_latest

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
combine_latest construction from observable via dot + subscribe 636.73ns 651.131 0.98 820.33ns
sending of values from observable via combine_latest to subscriber 18.06ns 22.4852 0.80 2.07ns

concat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
concat 1428.72ns 1477.03 0.97 2911.04ns
concat_with 1697.51ns 1780.15 0.95 3241.82ns

distinct_until_changed

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
distinct_until_changed construction from observable via dot + subscribe 127.93ns 130.737 0.98 221.05ns
sending of values from observable via distinct_until_changed to subscriber 2.68ns 2.41221 1.11 1.77ns

first

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
first construction from observable via dot + subscribe 145.31ns 153.325 0.95 531.29ns
sending of values from observable via first to subscriber 0.67ns 0.606713 1.10 0.60ns

foundamental sources

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
empty 85.42ns 84.5764 1.01 566.22ns
error 135.69ns 132.969 1.02 649.35ns
never 46.91ns 44.82 1.05 220.98ns

from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
from vector with int 99.28ns 97.8368 1.01 584.61ns

immediate scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 27.41ns 27.3389 1.00 99.95ns
re-schedule 10 times 33.20ns 35.883 0.93 125.77ns

just

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
just send int 86.74ns 85.1861 1.02 565.40ns
just send variadic 117.83ns 108.391 1.09 668.10ns

map

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
map construction from observable via dot + subscribe 89.38ns 96.5785 0.93 218.09ns
sending of values from observable via map to subscriber 1.01ns 1.20344 0.84 1.33ns

merge

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
merge 1372.55ns 1425.12 0.96 2913.74ns
merge_with 1632.96ns 1710.15 0.95 3161.49ns

observe_on

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
observe_on construction from observable via dot + subscribe 590.83ns 607.443 0.97 2391.30ns
sending of values from observable via observe_on to subscriber 90.44ns 92.3819 0.98 180.60ns

publish_subject callbacks

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
on_next 24.06ns 29.6047 0.81 8.38ns
on_error 0.51ns 0.607041 0.83 16.93ns
on_completed 0.51ns 0.606501 0.84 0.59ns

publish_subject routines

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
construct 195.04ns 207.357 0.94 159.63ns
get_observable 29.12ns 33.695 0.86 43.24ns
get_subscriber 57.67ns 67.6263 0.85 12.33ns

repeat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
repeat construction from observable via dot + subscribe 4050.03ns 4221.07 0.96 2653.26ns

scan

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
scan construction from observable via dot + subscribe 127.60ns 127.58 1.00 263.19ns
sending of values from observable via scan to subscriber 2.01ns 2.00882 1.00 1.78ns

skip

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
skip construction from observable via dot + subscribe 121.37ns 125.137 0.97 432.27ns
sending of values from observable via skip to subscriber 2.34ns 2.41156 0.97 1.56ns

switch_on_next

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
switch_on_next construction from observable via dot + subscribe 1885.01ns 1987.37 0.95 2504.36ns
sending of values from observable via switch_on_next to subscriber 527.38ns 558.01 0.95 575.07ns

take

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
take construction from observable via dot + subscribe 189.37ns 195.846 0.97 427.15ns
sending of values from observable via take to subscriber 2.35ns 2.52079 0.93 2.97ns

trampoline scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 37.54ns 35.9907 1.04 141.39ns
re-schedule 10 times 55.72ns 50.7147 1.10 167.38ns
recursively schedule 10 times 1448.87ns 1448.68 1.00 4927.73ns

window

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
window 2055.21ns 2214.11 0.93 2736.24ns
sending of values from observable via window to subscriber 555.37ns 593.215 0.94 322.54ns

with_latest_from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
with_latest_from construction from observable via dot + subscribe 649.81ns 669.227 0.97 1041.40ns
sending of values from observable via with_latest_from to subscriber 17.74ns 22.4891 0.79 2.74ns

ci-ubuntu-gcc

Observable construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable construction 0.37ns 0.402461 0.93 0.38ns
Dynamic observable construction 37.66ns 37.7728 1.00 24.88ns
Specific observable construction + as_dynamic 34.71ns 37.7353 0.92 24.20ns

Observable lift

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable lift specific observer 158.95ns 156.758 1.01 430.50ns
Specific observable lift dynamic observer 181.25ns 188.018 0.96 467.06ns
Dynamic observable lift specific observer 234.52ns 255.62 0.92 432.35ns
Dynamic observable lift dynamic observer 240.80ns 273.989 0.88 440.52ns

Observable subscribe

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe specific observer 113.81ns 106.726 1.07 367.15ns
Specific observable subscribe dynamic observer 102.96ns 124.711 0.83 404.78ns
Dynamic observable subscribe specific observer 164.40ns 192.698 0.85 459.26ns
Dynamic observable subscribe dynamic observer 166.08ns 194.769 0.85 436.47ns

Observable subscribe #2

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe lambda 107.82ns 106.72 1.01 388.70ns
Dynamic observable subscribe lambda 187.05ns 192.341 0.97 462.29ns
Specific observable subscribe lambda without subscription 102.07ns 106.902 0.95 364.85ns
Dynamic observable subscribe lambda without subscription 187.05ns 192.1 0.97 483.55ns
Specific observable subscribe specific subscriber 57.94ns 60.1422 0.96 296.54ns
Dynamic observable subscribe specific subscriber 136.07ns 139.594 0.97 351.59ns
Specific observable subscribe dynamic observer 59.89ns 60.076 1.00 303.98ns
Dynamic observable subscribe dynamic observer 118.59ns 128.854 0.92 351.94ns

Observer construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer construction 0.37ns 0.402192 0.93 0.34ns
Dynamic observer construction 32.11ns 37.7722 0.85 23.37ns
Specific observer construction + as_dynamic 32.95ns 37.7916 0.87 29.07ns

OnNext

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer OnNext 0.37ns 0.402348 0.92 0.38ns
Dynamic observer OnNext 2.24ns 2.0098 1.11 2.19ns

Subscriber construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Make subsriber 49.05ns 48.3208 1.02 60.78ns
Make copy of subscriber 17.80ns 20.0951 0.89 5.10ns
Transform subsriber to dynamic 50.46ns 53.2847 0.95 29.79ns

Subscription

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
composite_subscription create 47.13ns 44.254 1.06 69.25ns
composite_subscription add 48.52ns 56.4079 0.86 17.86ns
composite_subscription unsubscribe 15.87ns 16.1124 0.99 13.52ns

buffer

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
buffer 309.57ns 305.805 1.01 1929.08ns
sending of values from observable via buffer to subscriber 8.37ns 7.85561 1.07 36.81ns

chains creation test

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
long non-state chain creation + subscribe 360.70ns 361.267 1.00 865.15ns
long stateful chain creation + subscribe 542.83ns 520.683 1.04 1181.19ns

combine_latest

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
combine_latest construction from observable via dot + subscribe 689.67ns 781.452 0.88 1230.67ns
sending of values from observable via combine_latest to subscriber 20.12ns 22.1115 0.91 1.84ns

concat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
concat 1767.17ns 1725.16 1.02 4744.20ns
concat_with 2000.53ns 2091.14 0.96 5081.36ns

distinct_until_changed

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
distinct_until_changed construction from observable via dot + subscribe 161.64ns 163.892 0.99 425.26ns
sending of values from observable via distinct_until_changed to subscriber 3.36ns 4.02952 0.83 1.52ns

first

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
first construction from observable via dot + subscribe 185.31ns 193.893 0.96 821.20ns
sending of values from observable via first to subscriber 0.66ns 0.805602 0.82 0.55ns

foundamental sources

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
empty 101.12ns 105.754 0.96 1940.64ns
error 164.05ns 157.705 1.04 976.81ns
never 54.14ns 60.0271 0.90 394.96ns

from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
from vector with int 118.70ns 126.584 0.94 1029.21ns

immediate scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 31.80ns 35.3565 0.90 141.68ns
re-schedule 10 times 57.77ns 50.8758 1.14 213.47ns

just

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
just send int 95.33ns 108.37 0.88 959.80ns
just send variadic 149.02ns 153.097 0.97 991.91ns

map

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
map construction from observable via dot + subscribe 120.87ns 121.835 0.99 460.53ns
sending of values from observable via map to subscriber 0.93ns 1.60798 0.58 1.93ns

merge

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
merge 1674.12ns 1641.66 1.02 4628.19ns
merge_with 1839.27ns 2028.02 0.91 4795.62ns

observe_on

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
observe_on construction from observable via dot + subscribe 613.40ns 733.919 0.84 3406.34ns
sending of values from observable via observe_on to subscriber 91.91ns 107.838 0.85 302.16ns

publish_subject callbacks

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
on_next 28.29ns 27.3053 1.04 13.28ns
on_error 0.75ns 0.810282 0.93 18.71ns
on_completed 0.70ns 0.808486 0.86 0.74ns

publish_subject routines

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
construct 220.02ns 239.421 0.92 187.98ns
get_observable 31.08ns 35.3612 0.88 49.80ns
get_subscriber 54.36ns 69.3483 0.78 27.91ns

repeat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
repeat construction from observable via dot + subscribe 4981.35ns 4991.82 1.00 3776.49ns

scan

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
scan construction from observable via dot + subscribe 165.44ns 164.231 1.01 409.57ns
sending of values from observable via scan to subscriber 3.23ns 3.21964 1.00 1.77ns

skip

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
skip construction from observable via dot + subscribe 156.34ns 161.462 0.97 582.35ns
sending of values from observable via skip to subscriber 3.41ns 4.1481 0.82 2.07ns

switch_on_next

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
switch_on_next construction from observable via dot + subscribe 1968.75ns 2346.36 0.84 5103.07ns
sending of values from observable via switch_on_next to subscriber 635.52ns 651.427 0.98 1249.35ns

take

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
take construction from observable via dot + subscribe 208.78ns 231.761 0.90 708.60ns
sending of values from observable via take to subscriber 5.07ns 4.82996 1.05 3.77ns

trampoline scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 104.86ns 55.0718 1.90 230.85ns
re-schedule 10 times 70.57ns 82.4824 0.86 246.05ns
recursively schedule 10 times 1776.21ns 1788.67 0.99 6886.43ns

window

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
window 2292.41ns 2588.96 0.89 3683.53ns
sending of values from observable via window to subscriber 622.51ns 707.871 0.88 499.34ns

with_latest_from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
with_latest_from construction from observable via dot + subscribe 739.27ns 808.742 0.91 1710.50ns
sending of values from observable via with_latest_from to subscriber 34.13ns 21.2816 1.60 4.54ns

ci-windows

Observable construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable construction 1.50ns 2.17567 0.69 0.67ns
Dynamic observable construction 79.77ns 99.4265 0.80 123.42ns
Specific observable construction + as_dynamic 79.80ns 101.75 0.78 136.23ns

Observable lift

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable lift specific observer 181.00ns 233.02 0.78 1231.38ns
Specific observable lift dynamic observer 208.73ns 276.322 0.76 1260.67ns
Dynamic observable lift specific observer 307.22ns 388.0 0.79 1399.74ns
Dynamic observable lift dynamic observer 267.83ns 351.44 0.76 1302.65ns

Observable subscribe

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe specific observer 144.40ns 251.556 0.57 1180.59ns
Specific observable subscribe dynamic observer 157.43ns 224.905 0.70 1249.00ns
Dynamic observable subscribe specific observer 262.48ns 339.152 0.77 1344.37ns
Dynamic observable subscribe dynamic observer 207.68ns 241.603 0.86 1278.10ns

Observable subscribe #2

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe lambda 145.03ns 183.788 0.79 1172.41ns
Dynamic observable subscribe lambda 264.89ns 344.326 0.77 1358.74ns
Specific observable subscribe lambda without subscription 145.47ns 187.378 0.78 1173.23ns
Dynamic observable subscribe lambda without subscription 265.86ns 384.907 0.69 1340.42ns
Specific observable subscribe specific subscriber 47.87ns 61.3035 0.78 848.50ns
Dynamic observable subscribe specific subscriber 163.57ns 190.636 0.86 1023.60ns
Specific observable subscribe dynamic observer 50.85ns 68.3844 0.74 879.00ns
Dynamic observable subscribe dynamic observer 99.67ns 127.942 0.78 920.25ns

Observer construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer construction 1.50ns 2.28608 0.66 1.50ns
Dynamic observer construction 86.26ns 96.7238 0.89 115.18ns
Specific observer construction + as_dynamic 82.31ns 104.563 0.79 113.68ns

OnNext

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer OnNext 0.67ns 0.872895 0.77 0.67ns
Dynamic observer OnNext 1.67ns 2.42848 0.69 2.34ns

Subscriber construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Make subsriber 93.78ns 121.549 0.77 361.11ns
Make copy of subscriber 16.73ns 18.6111 0.90 31.42ns
Transform subsriber to dynamic 97.95ns 137.651 0.71 151.81ns

Subscription

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
composite_subscription create 91.49ns 117.117 0.78 347.41ns
composite_subscription add 85.63ns 125.965 0.68 63.65ns
composite_subscription unsubscribe 14.59ns 21.7893 0.67 23.38ns

buffer

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
buffer 481.79ns 454.955 1.06 4467.17ns
sending of values from observable via buffer to subscriber 6.54ns 10.2108 0.64 92.11ns

chains creation test

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
long non-state chain creation + subscribe 282.90ns 355.803 0.80 1725.36ns
long stateful chain creation + subscribe 778.83ns 851.197 0.91 3145.50ns

combine_latest

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
combine_latest construction from observable via dot + subscribe 1074.52ns 1348.36 0.80 2993.12ns
sending of values from observable via combine_latest to subscriber 35.76ns 44.2568 0.81 3.97ns

concat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
concat 2077.58ns 2754.33 0.75 10647.70ns
concat_with 2685.00ns 3731.71 0.72 11689.30ns

distinct_until_changed

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
distinct_until_changed construction from observable via dot + subscribe 200.04ns 247.643 0.81 1022.84ns
sending of values from observable via distinct_until_changed to subscriber 3.68ns 5.45564 0.67 3.73ns

first

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
first construction from observable via dot + subscribe 143.76ns 181.461 0.79 2608.70ns
sending of values from observable via first to subscriber 2.69ns 3.51146 0.76 1.70ns

foundamental sources

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
empty 80.08ns 151.798 0.53 2388.18ns
error 134.99ns 180.654 0.75 2475.80ns
never 49.38ns 59.9332 0.82 882.44ns

from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
from vector with int 165.46ns 190.691 0.87 2471.90ns

immediate scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 27.78ns 32.8209 0.85 412.08ns
re-schedule 10 times 127.00ns 179.491 0.71 440.95ns

just

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
just send int 86.63ns 111.786 0.77 2400.64ns
just send variadic 119.94ns 165.417 0.73 2485.20ns

map

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
map construction from observable via dot + subscribe 102.39ns 118.688 0.86 990.12ns
sending of values from observable via map to subscriber 3.34ns 4.40004 0.76 7.36ns

merge

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
merge 1954.77ns 2918.26 0.67 10893.00ns
merge_with 2607.20ns 3287.18 0.79 11711.70ns

observe_on

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
observe_on construction from observable via dot + subscribe 831.86ns 1057.66 0.79 5910.00ns
sending of values from observable via observe_on to subscriber 90.42ns 122.506 0.74 860.33ns

publish_subject callbacks

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
on_next 19.97ns 23.7404 0.84 32.51ns
on_error 3.54ns 3.21251 1.10 18.36ns
on_completed 2.71ns 2.8562 0.95 0.68ns

publish_subject routines

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
construct 356.38ns 431.277 0.83 588.18ns
get_observable 28.63ns 32.3637 0.88 163.41ns
get_subscriber 50.20ns 70.0951 0.72 93.83ns

repeat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
repeat construction from observable via dot + subscribe 6079.60ns 8200.38 0.74 11207.00ns

scan

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
scan construction from observable via dot + subscribe 205.30ns 238.56 0.86 1241.67ns
sending of values from observable via scan to subscriber 5.38ns 6.78445 0.79 8.86ns

skip

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
skip construction from observable via dot + subscribe 190.46ns 234.604 0.81 1545.13ns
sending of values from observable via skip to subscriber 3.68ns 5.79743 0.63 4.36ns

switch_on_next

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
switch_on_next construction from observable via dot + subscribe 2978.00ns 3417.5 0.87 12105.00ns
sending of values from observable via switch_on_next to subscriber 800.22ns 1051.44 0.76 3091.22ns

take

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
take construction from observable via dot + subscribe 243.82ns 341.471 0.71 2128.83ns
sending of values from observable via take to subscriber 5.38ns 6.95011 0.77 5.59ns

trampoline scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 42.44ns 53.2531 0.80 619.29ns
re-schedule 10 times 136.20ns 191.119 0.71 645.27ns
recursively schedule 10 times 2733.20ns 3783.29 0.72 19239.50ns

window

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
window 2949.44ns 4030.93 0.73 9636.67ns
sending of values from observable via window to subscriber 836.48ns 1102.43 0.76 1619.69ns

with_latest_from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
with_latest_from construction from observable via dot + subscribe 1215.64ns 1486.49 0.82 3744.50ns
sending of values from observable via with_latest_from to subscriber 29.15ns 36.5742 0.80 6.70ns

Please sign in to comment.