Skip to content

Commit

Permalink
Update sonarcloud_build.yml
Browse files Browse the repository at this point in the history
  • Loading branch information
victimsnino authored Aug 29, 2022
1 parent ff0b1a1 commit bcc5131
Showing 1 changed file with 12 additions and 0 deletions.
12 changes: 12 additions & 0 deletions .github/workflows/sonarcloud_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,11 @@ on:
- main
paths-ignore:
- '**.md'

env:
CATCH2_VERSION: v3.1.0
Catch2_DIR: ~/Catch2_BIN

jobs:
build_and_collect_data:
runs-on: ubuntu-latest
Expand All @@ -22,6 +27,13 @@ jobs:
submodules: true
token: ${{ secrets.GITHUB_TOKEN }}
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis

- name: Restore Catch2
uses: actions/cache@v3
id: cache-catch2
with:
path: ${{env.Catch2_DIR}}
key: catch2-${{env.CATCH2_VERSION}}-ubuntu-latest

- name: Cache SonarCloud packages
uses: actions/cache@v3
Expand Down

2 comments on commit bcc5131

@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.

ci-ubuntu-clang

Observable construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable construction 0.39ns 0.410809 0.95 0.38ns
Dynamic observable construction 30.53ns 33.6631 0.91 29.87ns
Specific observable construction + as_dynamic 34.99ns 37.5156 0.93 30.02ns

Observable lift

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable lift specific observer 145.66ns 161.039 0.90 343.89ns
Specific observable lift dynamic observer 176.05ns 211.375 0.83 333.51ns
Dynamic observable lift specific observer 246.54ns 242.464 1.02 386.33ns
Dynamic observable lift dynamic observer 231.94ns 268.831 0.86 372.51ns

Observable subscribe

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe specific observer 105.68ns 172.335 0.61 315.53ns
Specific observable subscribe dynamic observer 124.27ns 138.32 0.90 338.74ns
Dynamic observable subscribe specific observer 193.44ns 199.745 0.97 370.98ns
Dynamic observable subscribe dynamic observer 186.42ns 251.239 0.74 365.85ns

Observable subscribe #2

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe lambda 111.74ns 119.254 0.94 329.96ns
Dynamic observable subscribe lambda 176.83ns 196.893 0.90 387.05ns
Specific observable subscribe lambda without subscription 110.59ns 119.923 0.92 334.66ns
Dynamic observable subscribe lambda without subscription 187.07ns 197.207 0.95 375.87ns
Specific observable subscribe specific subscriber 51.10ns 55.6122 0.92 265.91ns
Dynamic observable subscribe specific subscriber 128.19ns 137.362 0.93 300.56ns
Specific observable subscribe dynamic observer 52.08ns 57.1448 0.91 285.40ns
Dynamic observable subscribe dynamic observer 111.37ns 120.217 0.93 296.09ns

Observer construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer construction 0.40ns 0.398578 1.01 0.39ns
Dynamic observer construction 34.89ns 35.3156 0.99 25.67ns
Specific observer construction + as_dynamic 35.22ns 36.3886 0.97 24.98ns

OnNext

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer OnNext 0.79ns 0.801268 0.99 0.72ns
Dynamic observer OnNext 1.93ns 2.37164 0.81 2.69ns

Subscriber construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Make subsriber 54.47ns 59.1324 0.92 78.60ns
Make copy of subscriber 20.03ns 20.1023 1.00 5.62ns
Transform subsriber to dynamic 55.07ns 50.0132 1.10 32.55ns

Subscription

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
composite_subscription create 49.95ns 47.3579 1.05 62.63ns
composite_subscription add 59.05ns 76.8834 0.77 25.29ns
composite_subscription unsubscribe 14.85ns 15.8285 0.94 12.76ns

buffer

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
buffer 311.37ns 346.088 0.90 2237.70ns
sending of values from observable via buffer to subscriber 7.71ns 7.7202 1.00 30.14ns

chains creation test

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
long non-state chain creation + subscribe 327.87ns 329.122 1.00 588.19ns
long stateful chain creation + subscribe 476.26ns 491.556 0.97 847.73ns

combine_latest

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
combine_latest construction from observable via dot + subscribe 750.68ns 749.812 1.00 1023.23ns
sending of values from observable via combine_latest to subscriber 20.21ns 25.1613 0.80 2.69ns

concat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
concat 1691.56ns 1729.53 0.98 3646.92ns
concat_with 2001.95ns 2199.5 0.91 4049.25ns

distinct_until_changed

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
distinct_until_changed construction from observable via dot + subscribe 151.34ns 156.611 0.97 298.05ns
sending of values from observable via distinct_until_changed to subscriber 3.22ns 3.67557 0.88 2.35ns

first

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
first construction from observable via dot + subscribe 170.32ns 173.937 0.98 655.30ns
sending of values from observable via first to subscriber 0.80ns 0.599156 1.34 0.81ns

foundamental sources

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
empty 101.74ns 117.154 0.87 747.70ns
error 157.40ns 167.071 0.94 867.45ns
never 54.64ns 61.3105 0.89 299.76ns

from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
from vector with int 120.15ns 136.687 0.88 731.82ns

immediate scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 32.98ns 29.8047 1.11 133.42ns
re-schedule 10 times 39.84ns 50.6398 0.79 168.48ns

just

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
just send int 103.89ns 110.758 0.94 746.98ns
just send variadic 139.10ns 145.248 0.96 894.88ns

map

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
map construction from observable via dot + subscribe 107.23ns 114.76 0.93 281.06ns
sending of values from observable via map to subscriber 1.14ns 1.02533 1.11 1.81ns

merge

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
merge 1645.83ns 1769.1 0.93 3547.62ns
merge_with 1976.86ns 2633.07 0.75 3865.53ns

observe_on

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
observe_on construction from observable via dot + subscribe 668.17ns 740.781 0.90 3042.00ns
sending of values from observable via observe_on to subscriber 109.27ns 112.997 0.97 241.91ns

publish_subject callbacks

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
on_next 28.94ns 31.9583 0.91 10.91ns
on_error 0.61ns 0.595581 1.02 22.25ns
on_completed 0.61ns 0.610226 0.99 0.73ns

publish_subject routines

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
construct 197.44ns 185.805 1.06 219.19ns
get_observable 34.97ns 34.8494 1.00 58.75ns
get_subscriber 69.71ns 67.7183 1.03 16.53ns

repeat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
repeat construction from observable via dot + subscribe 4700.16ns 4958.58 0.95 3138.44ns

scan

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
scan construction from observable via dot + subscribe 142.63ns 152.319 0.94 356.50ns
sending of values from observable via scan to subscriber 2.40ns 2.39581 1.00 2.38ns

skip

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
skip construction from observable via dot + subscribe 143.52ns 173.138 0.83 535.83ns
sending of values from observable via skip to subscriber 2.68ns 3.24029 0.83 1.90ns

switch_on_next

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
switch_on_next construction from observable via dot + subscribe 2288.14ns 5736.01 0.40 3362.54ns
sending of values from observable via switch_on_next to subscriber 637.09ns 655.79 0.97 769.86ns

take

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
take construction from observable via dot + subscribe 222.84ns 306.493 0.73 563.62ns
sending of values from observable via take to subscriber 2.83ns 3.17653 0.89 4.04ns

trampoline scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 45.03ns 42.8039 1.05 194.69ns
re-schedule 10 times 66.73ns 62.9265 1.06 216.72ns
recursively schedule 10 times 1772.52ns 1867.67 0.95 6637.57ns

window

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
window 2378.27ns 2394.7 0.99 3800.93ns
sending of values from observable via window to subscriber 641.53ns 650.701 0.99 441.21ns

with_latest_from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
with_latest_from construction from observable via dot + subscribe 752.93ns 819.765 0.92 1112.56ns
sending of values from observable via with_latest_from to subscriber 20.09ns 22.224 0.90 3.37ns

ci-ubuntu-gcc

Observable construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable construction 0.38ns 0.403119 0.94 0.37ns
Dynamic observable construction 34.05ns 32.4224 1.05 25.00ns
Specific observable construction + as_dynamic 34.01ns 35.2946 0.96 26.62ns

Observable lift

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable lift specific observer 145.44ns 148.697 0.98 398.11ns
Specific observable lift dynamic observer 168.16ns 170.024 0.99 425.18ns
Dynamic observable lift specific observer 241.93ns 240.641 1.01 424.73ns
Dynamic observable lift dynamic observer 229.53ns 245.933 0.93 439.83ns

Observable subscribe

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe specific observer 98.52ns 88.9893 1.11 373.18ns
Specific observable subscribe dynamic observer 109.08ns 104.798 1.04 350.46ns
Dynamic observable subscribe specific observer 178.51ns 157.187 1.14 457.42ns
Dynamic observable subscribe dynamic observer 173.55ns 162.793 1.07 415.79ns

Observable subscribe #2

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe lambda 101.59ns 99.4618 1.02 410.43ns
Dynamic observable subscribe lambda 184.28ns 180.363 1.02 405.47ns
Specific observable subscribe lambda without subscription 96.41ns 104.62 0.92 365.67ns
Dynamic observable subscribe lambda without subscription 171.29ns 166.292 1.03 425.63ns
Specific observable subscribe specific subscriber 58.10ns 44.8664 1.29 328.68ns
Dynamic observable subscribe specific subscriber 123.31ns 115.989 1.06 352.70ns
Specific observable subscribe dynamic observer 56.12ns 56.3913 1.00 318.92ns
Dynamic observable subscribe dynamic observer 106.78ns 103.406 1.03 490.86ns

Observer construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer construction 0.42ns 0.395679 1.05 0.35ns
Dynamic observer construction 32.89ns 35.0638 0.94 23.07ns
Specific observer construction + as_dynamic 44.92ns 35.4095 1.27 22.48ns

OnNext

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer OnNext 0.37ns 0.38702 0.96 0.38ns
Dynamic observer OnNext 2.22ns 2.27066 0.98 2.08ns

Subscriber construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Make subsriber 41.36ns 41.4833 1.00 67.69ns
Make copy of subscriber 17.11ns 15.151 1.13 5.54ns
Transform subsriber to dynamic 47.11ns 37.4595 1.26 28.35ns

Subscription

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
composite_subscription create 37.60ns 33.743 1.11 58.88ns
composite_subscription add 50.46ns 58.6805 0.86 18.08ns
composite_subscription unsubscribe 14.30ns 14.8483 0.96 13.13ns

buffer

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
buffer 285.16ns 284.734 1.00 2303.27ns
sending of values from observable via buffer to subscriber 7.72ns 7.27475 1.06 35.30ns

chains creation test

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
long non-state chain creation + subscribe 334.76ns 365.484 0.92 840.72ns
long stateful chain creation + subscribe 480.44ns 507.256 0.95 1163.78ns

combine_latest

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
combine_latest construction from observable via dot + subscribe 784.96ns 706.237 1.11 2281.26ns
sending of values from observable via combine_latest to subscriber 21.75ns 20.7967 1.05 1.91ns

concat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
concat 1712.87ns 1672.31 1.02 3799.77ns
concat_with 1858.71ns 1923.6 0.97 4397.35ns

distinct_until_changed

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
distinct_until_changed construction from observable via dot + subscribe 159.68ns 127.764 1.25 409.40ns
sending of values from observable via distinct_until_changed to subscriber 4.16ns 4.59886 0.90 1.33ns

first

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
first construction from observable via dot + subscribe 183.45ns 182.537 1.00 873.51ns
sending of values from observable via first to subscriber 0.75ns 1.42341 0.53 0.59ns

foundamental sources

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
empty 106.89ns 99.5596 1.07 823.18ns
error 157.08ns 152.454 1.03 962.73ns
never 56.50ns 52.4582 1.08 322.70ns

from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
from vector with int 119.30ns 117.113 1.02 904.07ns

immediate scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 29.03ns 32.8512 0.88 136.44ns
re-schedule 10 times 49.54ns 52.6386 0.94 192.30ns

just

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
just send int 107.93ns 104.451 1.03 934.35ns
just send variadic 164.67ns 147.184 1.12 1013.91ns

map

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
map construction from observable via dot + subscribe 119.88ns 92.8814 1.29 399.48ns
sending of values from observable via map to subscriber 1.19ns 0.864903 1.37 1.72ns

merge

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
merge 1530.86ns 1412.11 1.08 4598.21ns
merge_with 2235.21ns 1672.41 1.34 5346.22ns

observe_on

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
observe_on construction from observable via dot + subscribe 698.47ns 748.34 0.93 3270.60ns
sending of values from observable via observe_on to subscriber 101.38ns 100.897 1.00 290.30ns

publish_subject callbacks

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
on_next 26.46ns 27.3293 0.97 12.12ns
on_error 0.76ns 0.717389 1.07 18.19ns
on_completed 0.73ns 0.634752 1.15 0.73ns

publish_subject routines

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
construct 186.19ns 191.485 0.97 200.21ns
get_observable 28.95ns 31.019 0.93 54.35ns
get_subscriber 61.50ns 57.9091 1.06 26.10ns

repeat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
repeat construction from observable via dot + subscribe 4585.92ns 4363.49 1.05 3476.72ns

scan

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
scan construction from observable via dot + subscribe 150.96ns 162.646 0.93 439.18ns
sending of values from observable via scan to subscriber 3.61ns 3.07365 1.17 1.80ns

skip

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
skip construction from observable via dot + subscribe 146.55ns 151.142 0.97 623.37ns
sending of values from observable via skip to subscriber 4.06ns 3.49798 1.16 2.31ns

switch_on_next

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
switch_on_next construction from observable via dot + subscribe 2583.04ns 2229.36 1.16 5205.58ns
sending of values from observable via switch_on_next to subscriber 604.44ns 465.566 1.30 1251.93ns

take

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
take construction from observable via dot + subscribe 236.41ns 192.779 1.23 723.10ns
sending of values from observable via take to subscriber 4.84ns 3.8565 1.25 3.60ns

trampoline scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 48.24ns 48.6322 0.99 205.73ns
re-schedule 10 times 76.53ns 73.8515 1.04 248.15ns
recursively schedule 10 times 1751.08ns 1592.83 1.10 7839.86ns

window

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
window 2313.27ns 2457.09 0.94 4155.31ns
sending of values from observable via window to subscriber 561.40ns 624.7 0.90 500.06ns

with_latest_from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
with_latest_from construction from observable via dot + subscribe 700.23ns 787.476 0.89 1723.10ns
sending of values from observable via with_latest_from to subscriber 26.33ns 20.0933 1.31 4.35ns

ci-windows

Observable construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable construction 1.51ns 1.50329 1.00 0.67ns
Dynamic observable construction 80.21ns 79.9778 1.00 123.38ns
Specific observable construction + as_dynamic 80.07ns 79.8449 1.00 123.24ns

Observable lift

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable lift specific observer 180.38ns 182.75 0.99 1953.71ns
Specific observable lift dynamic observer 208.20ns 209.508 0.99 1993.38ns
Dynamic observable lift specific observer 304.75ns 307.771 0.99 2098.00ns
Dynamic observable lift dynamic observer 301.50ns 268.347 1.12 2037.69ns

Observable subscribe

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe specific observer 143.76ns 146.006 0.98 1891.93ns
Specific observable subscribe dynamic observer 154.39ns 156.564 0.99 1956.21ns
Dynamic observable subscribe specific observer 262.12ns 263.794 0.99 2036.54ns
Dynamic observable subscribe dynamic observer 207.30ns 209.672 0.99 1927.79ns

Observable subscribe #2

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe lambda 144.48ns 145.832 0.99 1918.86ns
Dynamic observable subscribe lambda 264.64ns 264.485 1.00 2065.62ns
Specific observable subscribe lambda without subscription 143.86ns 144.955 0.99 1920.07ns
Dynamic observable subscribe lambda without subscription 261.84ns 263.804 0.99 2045.08ns
Specific observable subscribe specific subscriber 50.12ns 48.1482 1.04 853.20ns
Dynamic observable subscribe specific subscriber 163.05ns 162.471 1.00 1049.80ns
Specific observable subscribe dynamic observer 51.36ns 50.8398 1.01 875.03ns
Dynamic observable subscribe dynamic observer 99.60ns 98.6836 1.01 909.68ns

Observer construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer construction 1.50ns 1.50451 1.00 1.51ns
Dynamic observer construction 81.86ns 81.7244 1.00 111.80ns
Specific observer construction + as_dynamic 82.55ns 81.8494 1.01 111.80ns

OnNext

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer OnNext 0.67ns 0.668985 1.01 0.67ns
Dynamic observer OnNext 1.79ns 1.78543 1.00 2.35ns

Subscriber construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Make subsriber 91.85ns 93.4301 0.98 1050.58ns
Make copy of subscriber 16.71ns 16.7085 1.00 31.42ns
Transform subsriber to dynamic 96.38ns 95.7594 1.01 150.05ns

Subscription

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
composite_subscription create 90.74ns 92.6123 0.98 998.70ns
composite_subscription add 90.70ns 83.1896 1.09 63.35ns
composite_subscription unsubscribe 14.72ns 14.6707 1.00 23.38ns

buffer

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
buffer 379.50ns 384.131 0.99 4519.00ns
sending of values from observable via buffer to subscriber 6.71ns 6.70356 1.00 91.91ns

chains creation test

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
long non-state chain creation + subscribe 285.08ns 312.25 0.91 1857.29ns
long stateful chain creation + subscribe 678.86ns 673.25 1.01 3187.57ns

combine_latest

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
combine_latest construction from observable via dot + subscribe 1093.67ns 1206.5 0.91 2992.75ns
sending of values from observable via combine_latest to subscriber 35.80ns 35.8099 1.00 4.04ns

concat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
concat 2075.92ns 2089.92 0.99 10597.30ns
concat_with 2695.50ns 2796.0 0.96 11648.30ns

distinct_until_changed

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
distinct_until_changed construction from observable via dot + subscribe 198.41ns 198.31 1.00 1026.16ns
sending of values from observable via distinct_until_changed to subscriber 3.72ns 3.73455 0.99 3.69ns

first

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
first construction from observable via dot + subscribe 165.82ns 143.676 1.15 2629.30ns
sending of values from observable via first to subscriber 2.35ns 2.34549 1.00 1.70ns

foundamental sources

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
empty 79.84ns 79.9198 1.00 2410.55ns
error 136.11ns 135.89 1.00 2509.00ns
never 46.63ns 46.7958 1.00 886.84ns

from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
from vector with int 155.20ns 163.984 0.95 2472.60ns

immediate scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 27.77ns 27.7978 1.00 412.48ns
re-schedule 10 times 189.90ns 122.35 1.55 443.05ns

just

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
just send int 86.30ns 86.3682 1.00 2406.82ns
just send variadic 124.04ns 123.917 1.00 2476.90ns

map

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
map construction from observable via dot + subscribe 102.08ns 102.435 1.00 992.73ns
sending of values from observable via map to subscriber 3.34ns 3.34604 1.00 7.21ns

merge

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
merge 1960.69ns 1964.38 1.00 10914.00ns
merge_with 2593.50ns 2598.5 1.00 11662.30ns

observe_on

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
observe_on construction from observable via dot + subscribe 833.03ns 832.933 1.00 6447.20ns
sending of values from observable via observe_on to subscriber 91.72ns 91.9784 1.00 845.70ns

publish_subject callbacks

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
on_next 20.29ns 19.7171 1.03 32.55ns
on_error 3.48ns 3.51615 0.99 18.49ns
on_completed 2.70ns 2.6957 1.00 0.68ns

publish_subject routines

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
construct 291.88ns 288.794 1.01 592.79ns
get_observable 28.09ns 28.1344 1.00 164.30ns
get_subscriber 50.21ns 50.2106 1.00 94.56ns

repeat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
repeat construction from observable via dot + subscribe 6116.40ns 6832.4 0.90 11276.30ns

scan

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
scan construction from observable via dot + subscribe 202.82ns 203.016 1.00 1251.43ns
sending of values from observable via scan to subscriber 5.61ns 5.54884 1.01 8.87ns

skip

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
skip construction from observable via dot + subscribe 190.53ns 191.654 0.99 1541.00ns
sending of values from observable via skip to subscriber 4.94ns 4.30667 1.15 4.42ns

switch_on_next

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
switch_on_next construction from observable via dot + subscribe 2955.67ns 2949.67 1.00 12126.00ns
sending of values from observable via switch_on_next to subscriber 793.69ns 790.242 1.00 3069.89ns

take

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
take construction from observable via dot + subscribe 245.23ns 246.637 0.99 2146.50ns
sending of values from observable via take to subscriber 5.36ns 5.32655 1.01 5.55ns

trampoline scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 43.12ns 42.1741 1.02 623.24ns
re-schedule 10 times 136.15ns 136.011 1.00 657.82ns
recursively schedule 10 times 3456.62ns 3457.62 1.00 19111.50ns

window

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
window 2897.22ns 2909.78 1.00 9727.33ns
sending of values from observable via window to subscriber 819.29ns 820.29 1.00 1629.19ns

with_latest_from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
with_latest_from construction from observable via dot + subscribe 1069.86ns 1195.91 0.89 3738.83ns
sending of values from observable via with_latest_from to subscriber 29.61ns 29.4274 1.01 6.71ns

@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.

ci-ubuntu-clang

Observable construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable construction 0.39ns 0.410809 0.95 0.38ns
Dynamic observable construction 30.53ns 33.6631 0.91 29.87ns
Specific observable construction + as_dynamic 34.99ns 37.5156 0.93 30.02ns
Specific observable construction 0.33ns 0.410809 0.80 0.38ns
Dynamic observable construction 33.59ns 33.6631 1.00 29.87ns
Specific observable construction + as_dynamic 31.06ns 37.5156 0.83 30.02ns

Observable lift

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable lift specific observer 145.66ns 161.039 0.90 343.89ns
Specific observable lift dynamic observer 176.05ns 211.375 0.83 333.51ns
Dynamic observable lift specific observer 246.54ns 242.464 1.02 386.33ns
Dynamic observable lift dynamic observer 231.94ns 268.831 0.86 372.51ns
Specific observable lift specific observer 127.07ns 161.039 0.79 343.89ns
Specific observable lift dynamic observer 149.44ns 211.375 0.71 333.51ns
Dynamic observable lift specific observer 203.44ns 242.464 0.84 386.33ns
Dynamic observable lift dynamic observer 171.60ns 268.831 0.64 372.51ns

Observable subscribe

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe specific observer 105.68ns 172.335 0.61 315.53ns
Specific observable subscribe dynamic observer 124.27ns 138.32 0.90 338.74ns
Dynamic observable subscribe specific observer 193.44ns 199.745 0.97 370.98ns
Dynamic observable subscribe dynamic observer 186.42ns 251.239 0.74 365.85ns
Specific observable subscribe specific observer 105.89ns 172.335 0.61 315.53ns
Specific observable subscribe dynamic observer 118.75ns 138.32 0.86 338.74ns
Dynamic observable subscribe specific observer 160.96ns 199.745 0.81 370.98ns
Dynamic observable subscribe dynamic observer 141.89ns 251.239 0.56 365.85ns

Observable subscribe #2

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe lambda 111.74ns 119.254 0.94 329.96ns
Dynamic observable subscribe lambda 176.83ns 196.893 0.90 387.05ns
Specific observable subscribe lambda without subscription 110.59ns 119.923 0.92 334.66ns
Dynamic observable subscribe lambda without subscription 187.07ns 197.207 0.95 375.87ns
Specific observable subscribe specific subscriber 51.10ns 55.6122 0.92 265.91ns
Dynamic observable subscribe specific subscriber 128.19ns 137.362 0.93 300.56ns
Specific observable subscribe dynamic observer 52.08ns 57.1448 0.91 285.40ns
Dynamic observable subscribe dynamic observer 111.37ns 120.217 0.93 296.09ns
Specific observable subscribe lambda 103.69ns 119.254 0.87 329.96ns
Dynamic observable subscribe lambda 156.11ns 196.893 0.79 387.05ns
Specific observable subscribe lambda without subscription 112.00ns 119.923 0.93 334.66ns
Dynamic observable subscribe lambda without subscription 177.51ns 197.207 0.90 375.87ns
Specific observable subscribe specific subscriber 43.51ns 55.6122 0.78 265.91ns
Dynamic observable subscribe specific subscriber 118.19ns 137.362 0.86 300.56ns
Specific observable subscribe dynamic observer 43.71ns 57.1448 0.76 285.40ns
Dynamic observable subscribe dynamic observer 82.96ns 120.217 0.69 296.09ns

Observer construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer construction 0.40ns 0.398578 1.01 0.39ns
Dynamic observer construction 34.89ns 35.3156 0.99 25.67ns
Specific observer construction + as_dynamic 35.22ns 36.3886 0.97 24.98ns
Specific observer construction 0.38ns 0.398578 0.96 0.39ns
Dynamic observer construction 34.08ns 35.3156 0.97 25.67ns
Specific observer construction + as_dynamic 33.59ns 36.3886 0.92 24.98ns

OnNext

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer OnNext 0.79ns 0.801268 0.99 0.72ns
Dynamic observer OnNext 1.93ns 2.37164 0.81 2.69ns
Specific observer OnNext 0.76ns 0.801268 0.95 0.72ns
Dynamic observer OnNext 2.38ns 2.37164 1.00 2.69ns

Subscriber construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Make subsriber 54.47ns 59.1324 0.92 78.60ns
Make copy of subscriber 20.03ns 20.1023 1.00 5.62ns
Transform subsriber to dynamic 55.07ns 50.0132 1.10 32.55ns
Make subsriber 46.75ns 59.1324 0.79 78.60ns
Make copy of subscriber 22.27ns 20.1023 1.11 5.62ns
Transform subsriber to dynamic 45.70ns 50.0132 0.91 32.55ns

Subscription

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
composite_subscription create 49.95ns 47.3579 1.05 62.63ns
composite_subscription add 59.05ns 76.8834 0.77 25.29ns
composite_subscription unsubscribe 14.85ns 15.8285 0.94 12.76ns
composite_subscription create 45.02ns 47.3579 0.95 62.63ns
composite_subscription add 58.97ns 76.8834 0.77 25.29ns
composite_subscription unsubscribe 13.00ns 15.8285 0.82 12.76ns

buffer

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
buffer 311.37ns 346.088 0.90 2237.70ns
sending of values from observable via buffer to subscriber 7.71ns 7.7202 1.00 30.14ns
buffer 266.86ns 346.088 0.77 2237.70ns
sending of values from observable via buffer to subscriber 6.04ns 7.7202 0.78 30.14ns

chains creation test

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
long non-state chain creation + subscribe 327.87ns 329.122 1.00 588.19ns
long stateful chain creation + subscribe 476.26ns 491.556 0.97 847.73ns
long non-state chain creation + subscribe 273.81ns 329.122 0.83 588.19ns
long stateful chain creation + subscribe 381.82ns 491.556 0.78 847.73ns

combine_latest

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
combine_latest construction from observable via dot + subscribe 750.68ns 749.812 1.00 1023.23ns
sending of values from observable via combine_latest to subscriber 20.21ns 25.1613 0.80 2.69ns
combine_latest construction from observable via dot + subscribe 673.81ns 749.812 0.90 1023.23ns
sending of values from observable via combine_latest to subscriber 16.82ns 25.1613 0.67 2.69ns

concat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
concat 1691.56ns 1729.53 0.98 3646.92ns
concat_with 2001.95ns 2199.5 0.91 4049.25ns
concat 1440.37ns 1729.53 0.83 3646.92ns
concat_with 1684.16ns 2199.5 0.77 4049.25ns

distinct_until_changed

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
distinct_until_changed construction from observable via dot + subscribe 151.34ns 156.611 0.97 298.05ns
sending of values from observable via distinct_until_changed to subscriber 3.22ns 3.67557 0.88 2.35ns
distinct_until_changed construction from observable via dot + subscribe 153.67ns 156.611 0.98 298.05ns
sending of values from observable via distinct_until_changed to subscriber 3.16ns 3.67557 0.86 2.35ns

first

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
first construction from observable via dot + subscribe 170.32ns 173.937 0.98 655.30ns
sending of values from observable via first to subscriber 0.80ns 0.599156 1.34 0.81ns
first construction from observable via dot + subscribe 156.61ns 173.937 0.90 655.30ns
sending of values from observable via first to subscriber 0.73ns 0.599156 1.23 0.81ns

foundamental sources

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
empty 101.74ns 117.154 0.87 747.70ns
error 157.40ns 167.071 0.94 867.45ns
never 54.64ns 61.3105 0.89 299.76ns
empty 102.35ns 117.154 0.87 747.70ns
error 167.63ns 167.071 1.00 867.45ns
never 56.13ns 61.3105 0.92 299.76ns

from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
from vector with int 120.15ns 136.687 0.88 731.82ns
from vector with int 99.59ns 136.687 0.73 731.82ns

immediate scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 32.98ns 29.8047 1.11 133.42ns
re-schedule 10 times 39.84ns 50.6398 0.79 168.48ns
no any re-schedule 22.86ns 29.8047 0.77 133.42ns
re-schedule 10 times 35.47ns 50.6398 0.70 168.48ns

just

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
just send int 103.89ns 110.758 0.94 746.98ns
just send variadic 139.10ns 145.248 0.96 894.88ns
just send int 87.43ns 110.758 0.79 746.98ns
just send variadic 125.04ns 145.248 0.86 894.88ns

map

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
map construction from observable via dot + subscribe 107.23ns 114.76 0.93 281.06ns
sending of values from observable via map to subscriber 1.14ns 1.02533 1.11 1.81ns
map construction from observable via dot + subscribe 104.33ns 114.76 0.91 281.06ns
sending of values from observable via map to subscriber 1.18ns 1.02533 1.15 1.81ns

merge

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
merge 1645.83ns 1769.1 0.93 3547.62ns
merge_with 1976.86ns 2633.07 0.75 3865.53ns
merge 1515.38ns 1769.1 0.86 3547.62ns
merge_with 1655.89ns 2633.07 0.63 3865.53ns

observe_on

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
observe_on construction from observable via dot + subscribe 668.17ns 740.781 0.90 3042.00ns
sending of values from observable via observe_on to subscriber 109.27ns 112.997 0.97 241.91ns
observe_on construction from observable via dot + subscribe 669.36ns 740.781 0.90 3042.00ns
sending of values from observable via observe_on to subscriber 75.59ns 112.997 0.67 241.91ns

publish_subject callbacks

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
on_next 28.94ns 31.9583 0.91 10.91ns
on_error 0.61ns 0.595581 1.02 22.25ns
on_completed 0.61ns 0.610226 0.99 0.73ns
on_next 21.44ns 31.9583 0.67 10.91ns
on_error 0.42ns 0.595581 0.71 22.25ns
on_completed 0.53ns 0.610226 0.87 0.73ns

publish_subject routines

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
construct 197.44ns 185.805 1.06 219.19ns
get_observable 34.97ns 34.8494 1.00 58.75ns
get_subscriber 69.71ns 67.7183 1.03 16.53ns
construct 175.54ns 185.805 0.94 219.19ns
get_observable 31.28ns 34.8494 0.90 58.75ns
get_subscriber 69.58ns 67.7183 1.03 16.53ns

repeat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
repeat construction from observable via dot + subscribe 4700.16ns 4958.58 0.95 3138.44ns
repeat construction from observable via dot + subscribe 3741.84ns 4958.58 0.75 3138.44ns

scan

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
scan construction from observable via dot + subscribe 142.63ns 152.319 0.94 356.50ns
sending of values from observable via scan to subscriber 2.40ns 2.39581 1.00 2.38ns
scan construction from observable via dot + subscribe 150.15ns 152.319 0.99 356.50ns
sending of values from observable via scan to subscriber 2.41ns 2.39581 1.01 2.38ns

skip

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
skip construction from observable via dot + subscribe 143.52ns 173.138 0.83 535.83ns
sending of values from observable via skip to subscriber 2.68ns 3.24029 0.83 1.90ns
skip construction from observable via dot + subscribe 119.81ns 173.138 0.69 535.83ns
sending of values from observable via skip to subscriber 2.66ns 3.24029 0.82 1.90ns

switch_on_next

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
switch_on_next construction from observable via dot + subscribe 2288.14ns 5736.01 0.40 3362.54ns
sending of values from observable via switch_on_next to subscriber 637.09ns 655.79 0.97 769.86ns
switch_on_next construction from observable via dot + subscribe 2243.14ns 5736.01 0.39 3362.54ns
sending of values from observable via switch_on_next to subscriber 567.70ns 655.79 0.87 769.86ns

take

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
take construction from observable via dot + subscribe 222.84ns 306.493 0.73 563.62ns
sending of values from observable via take to subscriber 2.83ns 3.17653 0.89 4.04ns
take construction from observable via dot + subscribe 199.37ns 306.493 0.65 563.62ns
sending of values from observable via take to subscriber 2.25ns 3.17653 0.71 4.04ns

trampoline scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 45.03ns 42.8039 1.05 194.69ns
re-schedule 10 times 66.73ns 62.9265 1.06 216.72ns
recursively schedule 10 times 1772.52ns 1867.67 0.95 6637.57ns
no any re-schedule 33.84ns 42.8039 0.79 194.69ns
re-schedule 10 times 66.82ns 62.9265 1.06 216.72ns
recursively schedule 10 times 1609.74ns 1867.67 0.86 6637.57ns

window

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
window 2378.27ns 2394.7 0.99 3800.93ns
sending of values from observable via window to subscriber 641.53ns 650.701 0.99 441.21ns
window 2006.12ns 2394.7 0.84 3800.93ns
sending of values from observable via window to subscriber 519.45ns 650.701 0.80 441.21ns

with_latest_from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
with_latest_from construction from observable via dot + subscribe 752.93ns 819.765 0.92 1112.56ns
sending of values from observable via with_latest_from to subscriber 20.09ns 22.224 0.90 3.37ns
with_latest_from construction from observable via dot + subscribe 633.46ns 819.765 0.77 1112.56ns
sending of values from observable via with_latest_from to subscriber 16.44ns 22.224 0.74 3.37ns

ci-ubuntu-gcc

Observable construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable construction 0.38ns 0.403119 0.94 0.37ns
Dynamic observable construction 34.05ns 32.4224 1.05 25.00ns
Specific observable construction + as_dynamic 34.01ns 35.2946 0.96 26.62ns
Specific observable construction 0.40ns 0.403119 1.00 0.37ns
Dynamic observable construction 28.79ns 32.4224 0.89 25.00ns
Specific observable construction + as_dynamic 28.67ns 35.2946 0.81 26.62ns

Observable lift

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable lift specific observer 145.44ns 148.697 0.98 398.11ns
Specific observable lift dynamic observer 168.16ns 170.024 0.99 425.18ns
Dynamic observable lift specific observer 241.93ns 240.641 1.01 424.73ns
Dynamic observable lift dynamic observer 229.53ns 245.933 0.93 439.83ns
Specific observable lift specific observer 120.93ns 148.697 0.81 398.11ns
Specific observable lift dynamic observer 150.75ns 170.024 0.89 425.18ns
Dynamic observable lift specific observer 207.21ns 240.641 0.86 424.73ns
Dynamic observable lift dynamic observer 221.04ns 245.933 0.90 439.83ns

Observable subscribe

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe specific observer 98.52ns 88.9893 1.11 373.18ns
Specific observable subscribe dynamic observer 109.08ns 104.798 1.04 350.46ns
Dynamic observable subscribe specific observer 178.51ns 157.187 1.14 457.42ns
Dynamic observable subscribe dynamic observer 173.55ns 162.793 1.07 415.79ns
Specific observable subscribe specific observer 83.09ns 88.9893 0.93 373.18ns
Specific observable subscribe dynamic observer 99.70ns 104.798 0.95 350.46ns
Dynamic observable subscribe specific observer 152.90ns 157.187 0.97 457.42ns
Dynamic observable subscribe dynamic observer 154.93ns 162.793 0.95 415.79ns

Observable subscribe #2

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe lambda 101.59ns 99.4618 1.02 410.43ns
Dynamic observable subscribe lambda 184.28ns 180.363 1.02 405.47ns
Specific observable subscribe lambda without subscription 96.41ns 104.62 0.92 365.67ns
Dynamic observable subscribe lambda without subscription 171.29ns 166.292 1.03 425.63ns
Specific observable subscribe specific subscriber 58.10ns 44.8664 1.29 328.68ns
Dynamic observable subscribe specific subscriber 123.31ns 115.989 1.06 352.70ns
Specific observable subscribe dynamic observer 56.12ns 56.3913 1.00 318.92ns
Dynamic observable subscribe dynamic observer 106.78ns 103.406 1.03 490.86ns
Specific observable subscribe lambda 84.19ns 99.4618 0.85 410.43ns
Dynamic observable subscribe lambda 152.83ns 180.363 0.85 405.47ns
Specific observable subscribe lambda without subscription 84.47ns 104.62 0.81 365.67ns
Dynamic observable subscribe lambda without subscription 153.23ns 166.292 0.92 425.63ns
Specific observable subscribe specific subscriber 49.48ns 44.8664 1.10 328.68ns
Dynamic observable subscribe specific subscriber 119.00ns 115.989 1.03 352.70ns
Specific observable subscribe dynamic observer 49.19ns 56.3913 0.87 318.92ns
Dynamic observable subscribe dynamic observer 104.60ns 103.406 1.01 490.86ns

Observer construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer construction 0.42ns 0.395679 1.05 0.35ns
Dynamic observer construction 32.89ns 35.0638 0.94 23.07ns
Specific observer construction + as_dynamic 44.92ns 35.4095 1.27 22.48ns
Specific observer construction 0.40ns 0.395679 1.02 0.35ns
Dynamic observer construction 28.86ns 35.0638 0.82 23.07ns
Specific observer construction + as_dynamic 29.32ns 35.4095 0.83 22.48ns

OnNext

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer OnNext 0.37ns 0.38702 0.96 0.38ns
Dynamic observer OnNext 2.22ns 2.27066 0.98 2.08ns
Specific observer OnNext 0.43ns 0.38702 1.11 0.38ns
Dynamic observer OnNext 2.01ns 2.27066 0.88 2.08ns

Subscriber construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Make subsriber 41.36ns 41.4833 1.00 67.69ns
Make copy of subscriber 17.11ns 15.151 1.13 5.54ns
Transform subsriber to dynamic 47.11ns 37.4595 1.26 28.35ns
Make subsriber 37.37ns 41.4833 0.90 67.69ns
Make copy of subscriber 16.08ns 15.151 1.06 5.54ns
Transform subsriber to dynamic 47.84ns 37.4595 1.28 28.35ns

Subscription

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
composite_subscription create 37.60ns 33.743 1.11 58.88ns
composite_subscription add 50.46ns 58.6805 0.86 18.08ns
composite_subscription unsubscribe 14.30ns 14.8483 0.96 13.13ns
composite_subscription create 34.61ns 33.743 1.03 58.88ns
composite_subscription add 48.89ns 58.6805 0.83 18.08ns
composite_subscription unsubscribe 15.48ns 14.8483 1.04 13.13ns

buffer

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
buffer 285.16ns 284.734 1.00 2303.27ns
sending of values from observable via buffer to subscriber 7.72ns 7.27475 1.06 35.30ns
buffer 255.92ns 284.734 0.90 2303.27ns
sending of values from observable via buffer to subscriber 6.14ns 7.27475 0.84 35.30ns

chains creation test

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
long non-state chain creation + subscribe 334.76ns 365.484 0.92 840.72ns
long stateful chain creation + subscribe 480.44ns 507.256 0.95 1163.78ns
long non-state chain creation + subscribe 331.77ns 365.484 0.91 840.72ns
long stateful chain creation + subscribe 462.00ns 507.256 0.91 1163.78ns

combine_latest

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
combine_latest construction from observable via dot + subscribe 784.96ns 706.237 1.11 2281.26ns
sending of values from observable via combine_latest to subscriber 21.75ns 20.7967 1.05 1.91ns
combine_latest construction from observable via dot + subscribe 678.78ns 706.237 0.96 2281.26ns
sending of values from observable via combine_latest to subscriber 22.49ns 20.7967 1.08 1.91ns

concat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
concat 1712.87ns 1672.31 1.02 3799.77ns
concat_with 1858.71ns 1923.6 0.97 4397.35ns
concat 1512.05ns 1672.31 0.90 3799.77ns
concat_with 1831.43ns 1923.6 0.95 4397.35ns

distinct_until_changed

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
distinct_until_changed construction from observable via dot + subscribe 159.68ns 127.764 1.25 409.40ns
sending of values from observable via distinct_until_changed to subscriber 4.16ns 4.59886 0.90 1.33ns
distinct_until_changed construction from observable via dot + subscribe 140.73ns 127.764 1.10 409.40ns
sending of values from observable via distinct_until_changed to subscriber 3.61ns 4.59886 0.79 1.33ns

first

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
first construction from observable via dot + subscribe 183.45ns 182.537 1.00 873.51ns
sending of values from observable via first to subscriber 0.75ns 1.42341 0.53 0.59ns
first construction from observable via dot + subscribe 168.59ns 182.537 0.92 873.51ns
sending of values from observable via first to subscriber 1.61ns 1.42341 1.13 0.59ns

foundamental sources

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
empty 106.89ns 99.5596 1.07 823.18ns
error 157.08ns 152.454 1.03 962.73ns
never 56.50ns 52.4582 1.08 322.70ns
empty 88.06ns 99.5596 0.88 823.18ns
error 136.24ns 152.454 0.89 962.73ns
never 47.38ns 52.4582 0.90 322.70ns

from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
from vector with int 119.30ns 117.113 1.02 904.07ns
from vector with int 102.11ns 117.113 0.87 904.07ns

immediate scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 29.03ns 32.8512 0.88 136.44ns
re-schedule 10 times 49.54ns 52.6386 0.94 192.30ns
no any re-schedule 28.88ns 32.8512 0.88 136.44ns
re-schedule 10 times 47.86ns 52.6386 0.91 192.30ns

just

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
just send int 107.93ns 104.451 1.03 934.35ns
just send variadic 164.67ns 147.184 1.12 1013.91ns
just send int 90.04ns 104.451 0.86 934.35ns
just send variadic 114.27ns 147.184 0.78 1013.91ns

map

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
map construction from observable via dot + subscribe 119.88ns 92.8814 1.29 399.48ns
sending of values from observable via map to subscriber 1.19ns 0.864903 1.37 1.72ns
map construction from observable via dot + subscribe 110.85ns 92.8814 1.19 399.48ns
sending of values from observable via map to subscriber 1.00ns 0.864903 1.16 1.72ns

merge

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
merge 1530.86ns 1412.11 1.08 4598.21ns
merge_with 2235.21ns 1672.41 1.34 5346.22ns
merge 1465.85ns 1412.11 1.04 4598.21ns
merge_with 1770.59ns 1672.41 1.06 5346.22ns

observe_on

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
observe_on construction from observable via dot + subscribe 698.47ns 748.34 0.93 3270.60ns
sending of values from observable via observe_on to subscriber 101.38ns 100.897 1.00 290.30ns
observe_on construction from observable via dot + subscribe 665.02ns 748.34 0.89 3270.60ns
sending of values from observable via observe_on to subscriber 95.38ns 100.897 0.95 290.30ns

publish_subject callbacks

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
on_next 26.46ns 27.3293 0.97 12.12ns
on_error 0.76ns 0.717389 1.07 18.19ns
on_completed 0.73ns 0.634752 1.15 0.73ns
on_next 29.79ns 27.3293 1.09 12.12ns
on_error 0.81ns 0.717389 1.13 18.19ns
on_completed 0.81ns 0.634752 1.27 0.73ns

publish_subject routines

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
construct 186.19ns 191.485 0.97 200.21ns
get_observable 28.95ns 31.019 0.93 54.35ns
get_subscriber 61.50ns 57.9091 1.06 26.10ns
construct 174.33ns 191.485 0.91 200.21ns
get_observable 33.38ns 31.019 1.08 54.35ns
get_subscriber 63.67ns 57.9091 1.10 26.10ns

repeat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
repeat construction from observable via dot + subscribe 4585.92ns 4363.49 1.05 3476.72ns
repeat construction from observable via dot + subscribe 4400.99ns 4363.49 1.01 3476.72ns

scan

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
scan construction from observable via dot + subscribe 150.96ns 162.646 0.93 439.18ns
sending of values from observable via scan to subscriber 3.61ns 3.07365 1.17 1.80ns
scan construction from observable via dot + subscribe 138.40ns 162.646 0.85 439.18ns
sending of values from observable via scan to subscriber 3.21ns 3.07365 1.05 1.80ns

skip

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
skip construction from observable via dot + subscribe 146.55ns 151.142 0.97 623.37ns
sending of values from observable via skip to subscriber 4.06ns 3.49798 1.16 2.31ns
skip construction from observable via dot + subscribe 135.46ns 151.142 0.90 623.37ns
sending of values from observable via skip to subscriber 3.21ns 3.49798 0.92 2.31ns

switch_on_next

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
switch_on_next construction from observable via dot + subscribe 2583.04ns 2229.36 1.16 5205.58ns
sending of values from observable via switch_on_next to subscriber 604.44ns 465.566 1.30 1251.93ns
switch_on_next construction from observable via dot + subscribe 2126.66ns 2229.36 0.95 5205.58ns
sending of values from observable via switch_on_next to subscriber 584.06ns 465.566 1.25 1251.93ns

take

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
take construction from observable via dot + subscribe 236.41ns 192.779 1.23 723.10ns
sending of values from observable via take to subscriber 4.84ns 3.8565 1.25 3.60ns
take construction from observable via dot + subscribe 195.15ns 192.779 1.01 723.10ns
sending of values from observable via take to subscriber 3.72ns 3.8565 0.96 3.60ns

trampoline scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 48.24ns 48.6322 0.99 205.73ns
re-schedule 10 times 76.53ns 73.8515 1.04 248.15ns
recursively schedule 10 times 1751.08ns 1592.83 1.10 7839.86ns
no any re-schedule 42.74ns 48.6322 0.88 205.73ns
re-schedule 10 times 68.98ns 73.8515 0.93 248.15ns
recursively schedule 10 times 1474.26ns 1592.83 0.93 7839.86ns

window

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
window 2313.27ns 2457.09 0.94 4155.31ns
sending of values from observable via window to subscriber 561.40ns 624.7 0.90 500.06ns
window 2192.35ns 2457.09 0.89 4155.31ns
sending of values from observable via window to subscriber 598.12ns 624.7 0.96 500.06ns

with_latest_from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
with_latest_from construction from observable via dot + subscribe 700.23ns 787.476 0.89 1723.10ns
sending of values from observable via with_latest_from to subscriber 26.33ns 20.0933 1.31 4.35ns
with_latest_from construction from observable via dot + subscribe 705.42ns 787.476 0.90 1723.10ns
sending of values from observable via with_latest_from to subscriber 22.47ns 20.0933 1.12 4.35ns

ci-windows

Observable construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable construction 1.51ns 1.50329 1.00 0.67ns
Dynamic observable construction 80.21ns 79.9778 1.00 123.38ns
Specific observable construction + as_dynamic 80.07ns 79.8449 1.00 123.24ns
Specific observable construction 1.50ns 1.50329 1.00 0.67ns
Dynamic observable construction 94.58ns 79.9778 1.18 123.38ns
Specific observable construction + as_dynamic 80.14ns 79.8449 1.00 123.24ns

Observable lift

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable lift specific observer 180.38ns 182.75 0.99 1953.71ns
Specific observable lift dynamic observer 208.20ns 209.508 0.99 1993.38ns
Dynamic observable lift specific observer 304.75ns 307.771 0.99 2098.00ns
Dynamic observable lift dynamic observer 301.50ns 268.347 1.12 2037.69ns
Specific observable lift specific observer 180.06ns 182.75 0.99 1953.71ns
Specific observable lift dynamic observer 221.13ns 209.508 1.06 1993.38ns
Dynamic observable lift specific observer 311.37ns 307.771 1.01 2098.00ns
Dynamic observable lift dynamic observer 267.02ns 268.347 1.00 2037.69ns

Observable subscribe

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe specific observer 143.76ns 146.006 0.98 1891.93ns
Specific observable subscribe dynamic observer 154.39ns 156.564 0.99 1956.21ns
Dynamic observable subscribe specific observer 262.12ns 263.794 0.99 2036.54ns
Dynamic observable subscribe dynamic observer 207.30ns 209.672 0.99 1927.79ns
Specific observable subscribe specific observer 143.93ns 146.006 0.99 1891.93ns
Specific observable subscribe dynamic observer 153.13ns 156.564 0.98 1956.21ns
Dynamic observable subscribe specific observer 261.24ns 263.794 0.99 2036.54ns
Dynamic observable subscribe dynamic observer 207.10ns 209.672 0.99 1927.79ns

Observable subscribe #2

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe lambda 144.48ns 145.832 0.99 1918.86ns
Dynamic observable subscribe lambda 264.64ns 264.485 1.00 2065.62ns
Specific observable subscribe lambda without subscription 143.86ns 144.955 0.99 1920.07ns
Dynamic observable subscribe lambda without subscription 261.84ns 263.804 0.99 2045.08ns
Specific observable subscribe specific subscriber 50.12ns 48.1482 1.04 853.20ns
Dynamic observable subscribe specific subscriber 163.05ns 162.471 1.00 1049.80ns
Specific observable subscribe dynamic observer 51.36ns 50.8398 1.01 875.03ns
Dynamic observable subscribe dynamic observer 99.60ns 98.6836 1.01 909.68ns
Specific observable subscribe lambda 144.56ns 145.832 0.99 1918.86ns
Dynamic observable subscribe lambda 261.99ns 264.485 0.99 2065.62ns
Specific observable subscribe lambda without subscription 145.48ns 144.955 1.00 1920.07ns
Dynamic observable subscribe lambda without subscription 391.05ns 263.804 1.48 2045.08ns
Specific observable subscribe specific subscriber 47.84ns 48.1482 0.99 853.20ns
Dynamic observable subscribe specific subscriber 163.21ns 162.471 1.00 1049.80ns
Specific observable subscribe dynamic observer 51.00ns 50.8398 1.00 875.03ns
Dynamic observable subscribe dynamic observer 98.76ns 98.6836 1.00 909.68ns

Observer construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer construction 1.50ns 1.50451 1.00 1.51ns
Dynamic observer construction 81.86ns 81.7244 1.00 111.80ns
Specific observer construction + as_dynamic 82.55ns 81.8494 1.01 111.80ns
Specific observer construction 1.53ns 1.50451 1.02 1.51ns
Dynamic observer construction 81.85ns 81.7244 1.00 111.80ns
Specific observer construction + as_dynamic 82.30ns 81.8494 1.01 111.80ns

OnNext

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer OnNext 0.67ns 0.668985 1.01 0.67ns
Dynamic observer OnNext 1.79ns 1.78543 1.00 2.35ns
Specific observer OnNext 0.67ns 0.668985 1.00 0.67ns
Dynamic observer OnNext 1.79ns 1.78543 1.00 2.35ns

Subscriber construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Make subsriber 91.85ns 93.4301 0.98 1050.58ns
Make copy of subscriber 16.71ns 16.7085 1.00 31.42ns
Transform subsriber to dynamic 96.38ns 95.7594 1.01 150.05ns
Make subsriber 91.51ns 93.4301 0.98 1050.58ns
Make copy of subscriber 16.71ns 16.7085 1.00 31.42ns
Transform subsriber to dynamic 96.79ns 95.7594 1.01 150.05ns

Subscription

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
composite_subscription create 90.74ns 92.6123 0.98 998.70ns
composite_subscription add 90.70ns 83.1896 1.09 63.35ns
composite_subscription unsubscribe 14.72ns 14.6707 1.00 23.38ns
composite_subscription create 90.32ns 92.6123 0.98 998.70ns
composite_subscription add 86.26ns 83.1896 1.04 63.35ns
composite_subscription unsubscribe 14.57ns 14.6707 0.99 23.38ns

buffer

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
buffer 379.50ns 384.131 0.99 4519.00ns
sending of values from observable via buffer to subscriber 6.71ns 6.70356 1.00 91.91ns
buffer 375.44ns 384.131 0.98 4519.00ns
sending of values from observable via buffer to subscriber 6.71ns 6.70356 1.00 91.91ns

chains creation test

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
long non-state chain creation + subscribe 285.08ns 312.25 0.91 1857.29ns
long stateful chain creation + subscribe 678.86ns 673.25 1.01 3187.57ns
long non-state chain creation + subscribe 284.21ns 312.25 0.91 1857.29ns
long stateful chain creation + subscribe 671.38ns 673.25 1.00 3187.57ns

combine_latest

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
combine_latest construction from observable via dot + subscribe 1093.67ns 1206.5 0.91 2992.75ns
sending of values from observable via combine_latest to subscriber 35.80ns 35.8099 1.00 4.04ns
combine_latest construction from observable via dot + subscribe 1080.55ns 1206.5 0.90 2992.75ns
sending of values from observable via combine_latest to subscriber 35.94ns 35.8099 1.00 4.04ns

concat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
concat 2075.92ns 2089.92 0.99 10597.30ns
concat_with 2695.50ns 2796.0 0.96 11648.30ns
concat 2084.33ns 2089.92 1.00 10597.30ns
concat_with 2685.80ns 2796.0 0.96 11648.30ns

distinct_until_changed

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
distinct_until_changed construction from observable via dot + subscribe 198.41ns 198.31 1.00 1026.16ns
sending of values from observable via distinct_until_changed to subscriber 3.72ns 3.73455 0.99 3.69ns
distinct_until_changed construction from observable via dot + subscribe 198.85ns 198.31 1.00 1026.16ns
sending of values from observable via distinct_until_changed to subscriber 3.72ns 3.73455 1.00 3.69ns

first

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
first construction from observable via dot + subscribe 165.82ns 143.676 1.15 2629.30ns
sending of values from observable via first to subscriber 2.35ns 2.34549 1.00 1.70ns
first construction from observable via dot + subscribe 143.78ns 143.676 1.00 2629.30ns
sending of values from observable via first to subscriber 2.35ns 2.34549 1.00 1.70ns

foundamental sources

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
empty 79.84ns 79.9198 1.00 2410.55ns
error 136.11ns 135.89 1.00 2509.00ns
never 46.63ns 46.7958 1.00 886.84ns
empty 79.76ns 79.9198 1.00 2410.55ns
error 135.99ns 135.89 1.00 2509.00ns
never 46.93ns 46.7958 1.00 886.84ns

from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
from vector with int 155.20ns 163.984 0.95 2472.60ns
from vector with int 155.07ns 163.984 0.95 2472.60ns

immediate scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 27.77ns 27.7978 1.00 412.48ns
re-schedule 10 times 189.90ns 122.35 1.55 443.05ns
no any re-schedule 27.82ns 27.7978 1.00 412.48ns
re-schedule 10 times 131.86ns 122.35 1.08 443.05ns

just

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
just send int 86.30ns 86.3682 1.00 2406.82ns
just send variadic 124.04ns 123.917 1.00 2476.90ns
just send int 86.47ns 86.3682 1.00 2406.82ns
just send variadic 123.91ns 123.917 1.00 2476.90ns

map

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
map construction from observable via dot + subscribe 102.08ns 102.435 1.00 992.73ns
sending of values from observable via map to subscriber 3.34ns 3.34604 1.00 7.21ns
map construction from observable via dot + subscribe 102.74ns 102.435 1.00 992.73ns
sending of values from observable via map to subscriber 3.35ns 3.34604 1.00 7.21ns

merge

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
merge 1960.69ns 1964.38 1.00 10914.00ns
merge_with 2593.50ns 2598.5 1.00 11662.30ns
merge 1968.77ns 1964.38 1.00 10914.00ns
merge_with 2598.80ns 2598.5 1.00 11662.30ns

observe_on

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
observe_on construction from observable via dot + subscribe 833.03ns 832.933 1.00 6447.20ns
sending of values from observable via observe_on to subscriber 91.72ns 91.9784 1.00 845.70ns
observe_on construction from observable via dot + subscribe 831.07ns 832.933 1.00 6447.20ns
sending of values from observable via observe_on to subscriber 92.06ns 91.9784 1.00 845.70ns

publish_subject callbacks

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
on_next 20.29ns 19.7171 1.03 32.55ns
on_error 3.48ns 3.51615 0.99 18.49ns
on_completed 2.70ns 2.6957 1.00 0.68ns
on_next 22.81ns 19.7171 1.16 32.55ns
on_error 3.50ns 3.51615 1.00 18.49ns
on_completed 2.70ns 2.6957 1.00 0.68ns

publish_subject routines

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
construct 291.88ns 288.794 1.01 592.79ns
get_observable 28.09ns 28.1344 1.00 164.30ns
get_subscriber 50.21ns 50.2106 1.00 94.56ns
construct 286.52ns 288.794 0.99 592.79ns
get_observable 28.07ns 28.1344 1.00 164.30ns
get_subscriber 50.48ns 50.2106 1.01 94.56ns

repeat

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
repeat construction from observable via dot + subscribe 6116.40ns 6832.4 0.90 11276.30ns
repeat construction from observable via dot + subscribe 6178.00ns 6832.4 0.90 11276.30ns

scan

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
scan construction from observable via dot + subscribe 202.82ns 203.016 1.00 1251.43ns
sending of values from observable via scan to subscriber 5.61ns 5.54884 1.01 8.87ns
scan construction from observable via dot + subscribe 203.73ns 203.016 1.00 1251.43ns
sending of values from observable via scan to subscriber 5.57ns 5.54884 1.00 8.87ns

skip

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
skip construction from observable via dot + subscribe 190.53ns 191.654 0.99 1541.00ns
sending of values from observable via skip to subscriber 4.94ns 4.30667 1.15 4.42ns
skip construction from observable via dot + subscribe 193.61ns 191.654 1.01 1541.00ns
sending of values from observable via skip to subscriber 4.29ns 4.30667 1.00 4.42ns

switch_on_next

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
switch_on_next construction from observable via dot + subscribe 2955.67ns 2949.67 1.00 12126.00ns
sending of values from observable via switch_on_next to subscriber 793.69ns 790.242 1.00 3069.89ns
switch_on_next construction from observable via dot + subscribe 2942.67ns 2949.67 1.00 12126.00ns
sending of values from observable via switch_on_next to subscriber 793.91ns 790.242 1.00 3069.89ns

take

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
take construction from observable via dot + subscribe 245.23ns 246.637 0.99 2146.50ns
sending of values from observable via take to subscriber 5.36ns 5.32655 1.01 5.55ns
take construction from observable via dot + subscribe 243.43ns 246.637 0.99 2146.50ns
sending of values from observable via take to subscriber 5.36ns 5.32655 1.01 5.55ns

trampoline scheduler

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
no any re-schedule 43.12ns 42.1741 1.02 623.24ns
re-schedule 10 times 136.15ns 136.011 1.00 657.82ns
recursively schedule 10 times 3456.62ns 3457.62 1.00 19111.50ns
no any re-schedule 42.24ns 42.1741 1.00 623.24ns
re-schedule 10 times 139.30ns 136.011 1.02 657.82ns
recursively schedule 10 times 3514.50ns 3457.62 1.02 19111.50ns

window

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
window 2897.22ns 2909.78 1.00 9727.33ns
sending of values from observable via window to subscriber 819.29ns 820.29 1.00 1629.19ns
window 4556.22ns 2909.78 1.57 9727.33ns
sending of values from observable via window to subscriber 823.97ns 820.29 1.00 1629.19ns

with_latest_from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
with_latest_from construction from observable via dot + subscribe 1069.86ns 1195.91 0.89 3738.83ns
sending of values from observable via with_latest_from to subscriber 29.61ns 29.4274 1.01 6.71ns
with_latest_from construction from observable via dot + subscribe 1072.30ns 1195.91 0.90 3738.83ns
sending of values from observable via with_latest_from to subscriber 29.48ns 29.4274 1.00 6.71ns

Please sign in to comment.