Skip to content

start_with - #181

Merged
AlexInLog merged 5 commits into
mainfrom
start_with
Jul 19, 2022
Merged

start_with#181
AlexInLog merged 5 commits into
mainfrom
start_with

Conversation

@AlexInLog

Copy link
Copy Markdown
Owner

No description provided.

@codecov

codecov Bot commented Jul 19, 2022

Copy link
Copy Markdown

Codecov Report

Merging #181 (13574f8) into main (28d7797) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main     #181   +/-   ##
=======================================
  Coverage   99.69%   99.69%           
=======================================
  Files          72       74    +2     
  Lines         975      983    +8     
=======================================
+ Hits          972      980    +8     
  Misses          3        3           
Impacted Files Coverage Δ
src/rpp/rpp/observables/interface_observable.hpp 100.00% <ø> (ø)
src/rpp/rpp/operators/fwd/start_with.hpp 100.00% <100.00%> (ø)
src/rpp/rpp/operators/start_with.hpp 100.00% <100.00%> (ø)

@github-actions

github-actions Bot commented Jul 19, 2022

Copy link
Copy Markdown
Contributor

Linux CLANG

Observable construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable construction 0.40ns 0.401957 1.00 0.40ns
Dynamic observable construction 28.57ns 28.5589 1.00 25.38ns
Specific observable construction + as_dynamic 28.68ns 28.6948 1.00 25.40ns

Observable lift

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable lift specific observer 78.01ns 77.9644 1.00 289.33ns
Specific observable lift dynamic observer 105.09ns 105.46 1.00 313.39ns
Dynamic observable lift specific observer 160.77ns 161.928 0.99 358.25ns
Dynamic observable lift dynamic observer 177.54ns 178.154 1.00 330.10ns

Observable subscribe

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe specific observer 48.67ns 48.7619 1.00 289.61ns
Specific observable subscribe dynamic observer 61.40ns 61.8805 0.99 299.48ns
Dynamic observable subscribe specific observer 111.04ns 110.446 1.01 337.31ns
Dynamic observable subscribe dynamic observer 115.83ns 115.718 1.00 320.46ns

Observable subscribe #2

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe lambda 48.69ns 48.5709 1.00 293.29ns
Dynamic observable subscribe lambda 110.73ns 110.424 1.00 333.83ns
Specific observable subscribe lambda without subscription 48.78ns 48.7024 1.00 285.05ns
Dynamic observable subscribe lambda without subscription 111.19ns 110.404 1.01 332.08ns
Specific observable subscribe specific subscriber 16.06ns 16.0727 1.00 225.89ns
Dynamic observable subscribe specific subscriber 77.53ns 77.8285 1.00 269.49ns
Specific observable subscribe dynamic observer 16.06ns 16.061 1.00 236.11ns
Dynamic observable subscribe dynamic observer 68.50ns 68.3686 1.00 258.26ns

Observer construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer construction 0.40ns 0.401854 1.00 0.40ns
Dynamic observer construction 28.73ns 31.3812 0.92 19.67ns
Specific observer construction + as_dynamic 28.55ns 28.5963 1.00 19.71ns

OnNext

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer OnNext 0.44ns 0.442572 1.00 0.44ns
Dynamic observer OnNext 1.61ns 1.60786 1.00 1.61ns

Operators

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
map construction from observable via dot + subscribe 75.93ns 75.9208 1.00 240.39ns

Subscriber construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Make subsriber 32.76ns 32.5465 1.01 66.86ns
Make copy of subscriber 16.09ns 16.0483 1.00 5.19ns
Transform subsriber to dynamic 46.95ns 47.3831 0.99 24.67ns

Subscription

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
composite_subscription create 32.56ns 33.6424 0.97 48.95ns
composite_subscription add 48.46ns 48.4624 1.00 21.02ns
composite_subscription unsubscribe 8.02ns 8.03283 1.00 13.66ns

foundamental sources

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
empty 16.07ns 16.0791 1.00 31.16ns
error 48.76ns 48.6754 1.00 73.72ns
never 16.07ns 16.0367 1.00 235.27ns

from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
from vector with int 26.22ns 26.1237 1.00 54.09ns

just

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
just send int 16.10ns 16.085 1.00 31.28ns
just send variadic 18.95ns 18.916 1.00 38.54ns

merge

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
merge 16.79ns 16.7754 1.00 123.74ns
merge_with 79.62ns 76.7675 1.04 293.23ns

publish_subject callbacks

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
on_next 29.48ns 30.785 0.96 8.86ns
on_error 2.02ns 2.02158 1.00 19.02ns
on_completed 1.67ns 1.65026 1.01 0.81ns

publish_subject routines

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
construct 172.01ns 171.999 1.00 153.22ns
get_observable 33.75ns 33.7087 1.00 45.37ns
get_subscriber 67.20ns 67.1092 1.00 13.21ns

Linux GCC

Observable construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable construction 0.30ns 0.354142 0.84 0.30ns
Dynamic observable construction 16.38ns 21.724 0.75 20.47ns
Specific observable construction + as_dynamic 16.51ns 18.4919 0.89 20.31ns

Observable lift

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable lift specific observer 24.90ns 31.1311 0.80 303.22ns
Specific observable lift dynamic observer 27.99ns 33.303 0.84 318.74ns
Dynamic observable lift specific observer 65.47ns 81.4191 0.80 353.63ns
Dynamic observable lift dynamic observer 60.82ns 76.0578 0.80 336.04ns

Observable subscribe

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe specific observer 21.21ns 26.1365 0.81 295.35ns
Specific observable subscribe dynamic observer 21.32ns 23.2962 0.92 300.63ns
Dynamic observable subscribe specific observer 46.47ns 53.3177 0.87 341.36ns
Dynamic observable subscribe dynamic observer 34.45ns 35.5554 0.97 319.26ns

Observable subscribe #2

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe lambda 20.61ns 21.6418 0.95 292.76ns
Dynamic observable subscribe lambda 51.04ns 62.3341 0.82 352.09ns
Specific observable subscribe lambda without subscription 20.45ns 22.3472 0.91 294.77ns
Dynamic observable subscribe lambda without subscription 45.88ns 56.0172 0.82 359.94ns
Specific observable subscribe specific subscriber 3.28ns 4.94089 0.66 246.46ns
Dynamic observable subscribe specific subscriber 27.59ns 28.5397 0.97 287.54ns
Specific observable subscribe dynamic observer 3.20ns 4.23767 0.75 249.86ns
Dynamic observable subscribe dynamic observer 13.51ns 16.6466 0.81 269.12ns

Observer construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer construction 0.30ns 0.321821 0.92 0.30ns
Dynamic observer construction 16.82ns 20.985 0.80 18.34ns
Specific observer construction + as_dynamic 17.13ns 20.8135 0.82 18.35ns

OnNext

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer OnNext 0.30ns 0.299761 0.99 0.30ns
Dynamic observer OnNext 1.48ns 1.8059 0.82 1.54ns

Operators

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
map construction from observable via dot + subscribe 13.11ns 20.3204 0.64 307.10ns

Subscriber construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Make subsriber 18.85ns 21.2671 0.89 51.41ns
Make copy of subscriber 3.28ns 4.82952 0.68 3.97ns
Transform subsriber to dynamic 19.24ns 24.0789 0.80 25.56ns

Subscription

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
composite_subscription create 18.87ns 25.709 0.73 48.05ns
composite_subscription add 19.53ns 28.8888 0.68 15.10ns
composite_subscription unsubscribe 7.39ns 6.08723 1.21 8.85ns

foundamental sources

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
empty 3.06ns 5.04027 0.61 41.31ns
error 31.64ns 38.7449 0.82 72.76ns
never 3.15ns 4.05615 0.78 249.44ns

from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
from vector with int 19.84ns 22.2195 0.89 61.97ns

just

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
just send int 3.21ns 4.63773 0.69 44.80ns
just send variadic 3.59ns 4.90459 0.73 41.65ns

merge

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
merge 3.47ns 4.06312 0.86 133.49ns
merge_with 37.76ns 46.1461 0.82 316.01ns

publish_subject callbacks

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
on_next 15.07ns 20.3991 0.74 10.33ns
on_error 1.19ns 0.842917 1.41 14.85ns
on_completed 1.18ns 1.12805 1.05 1.19ns

publish_subject routines

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
construct 103.47ns 120.38 0.86 151.99ns
get_observable 5.05ns 7.01668 0.72 40.98ns
get_subscriber 10.26ns 11.5182 0.89 19.77ns

Windows MSVC

Observable construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable construction 1.51ns 1.50654 1.00 0.67ns
Dynamic observable construction 81.52ns 81.5884 1.00 123.23ns
Specific observable construction + as_dynamic 72.01ns 81.6084 0.88 123.60ns

Observable lift

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable lift specific observer 141.99ns 137.128 1.04 1211.73ns
Specific observable lift dynamic observer 168.69ns 167.579 1.01 1247.14ns
Dynamic observable lift specific observer 267.76ns 264.842 1.01 1399.16ns
Dynamic observable lift dynamic observer 224.01ns 221.748 1.01 1307.20ns

Observable subscribe

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe specific observer 93.56ns 104.086 0.90 1177.95ns
Specific observable subscribe dynamic observer 119.69ns 117.333 1.02 1207.95ns
Dynamic observable subscribe specific observer 193.59ns 216.761 0.89 1358.15ns
Dynamic observable subscribe dynamic observer 145.95ns 161.077 0.91 1098.71ns

Observable subscribe #2

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observable subscribe lambda 93.28ns 104.704 0.89 1172.00ns
Dynamic observable subscribe lambda 218.46ns 214.664 1.02 1351.53ns
Specific observable subscribe lambda without subscription 102.61ns 104.448 0.98 1172.50ns
Dynamic observable subscribe lambda without subscription 195.18ns 215.678 0.90 1355.84ns
Specific observable subscribe specific subscriber 16.76ns 16.7927 1.00 842.10ns
Dynamic observable subscribe specific subscriber 131.73ns 130.932 1.01 1022.88ns
Specific observable subscribe dynamic observer 16.77ns 16.7675 1.00 878.76ns
Dynamic observable subscribe dynamic observer 64.98ns 74.0101 0.88 910.11ns

Observer construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer construction 0.67ns 0.669913 1.00 1.34ns
Dynamic observer construction 72.00ns 81.2662 0.89 115.25ns
Specific observer construction + as_dynamic 71.94ns 81.623 0.88 101.95ns

OnNext

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Specific observer OnNext 0.64ns 0.670004 0.96 0.67ns
Dynamic observer OnNext 1.63ns 1.6762 0.97 2.33ns

Operators

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
map construction from observable via dot + subscribe 76.44ns 76.4407 1.00 997.15ns

Subscriber construction

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
Make subsriber 78.54ns 87.0727 0.90 346.77ns
Make copy of subscriber 14.78ns 16.7389 0.88 31.72ns
Transform subsriber to dynamic 85.46ns 97.1521 0.88 153.46ns

Subscription

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
composite_subscription create 88.66ns 86.6868 1.02 340.08ns
composite_subscription add 64.30ns 62.9694 1.02 63.60ns
composite_subscription unsubscribe 8.39ns 8.36964 1.00 23.37ns

foundamental sources

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
empty 16.84ns 16.8073 1.00 192.74ns
error 47.33ns 47.3807 1.00 207.24ns
never 16.74ns 16.747 1.00 846.07ns

from

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
from vector with int 82.85ns 83.9703 0.99 264.83ns

just

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
just send int 19.89ns 19.9117 1.00 191.38ns
just send variadic 20.54ns 20.9703 0.98 194.41ns

merge

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
merge 34.88ns 34.9566 1.00 675.04ns
merge_with 297.97ns 299.589 0.99 1423.96ns

publish_subject callbacks

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
on_next 20.26ns 20.2413 1.00 32.63ns
on_error 2.55ns 2.37242 1.07 17.36ns
on_completed 2.61ns 2.38875 1.09 1.20ns

publish_subject routines

Table
Test Name Current, ns Prev, ns Ratio RxCpp current, ns
construct 298.81ns 289.0 1.03 588.72ns
get_observable 26.06ns 25.7967 1.01 159.12ns
get_subscriber 54.36ns 50.3313 1.08 107.28ns

@sonarqubecloud

Copy link
Copy Markdown

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

0.0% 0.0% Coverage
0.0% 0.0% Duplication

@AlexInLog
AlexInLog merged commit 724ba8a into main Jul 19, 2022
@AlexInLog
AlexInLog deleted the start_with branch July 19, 2022 21:10
@AlexInLog
AlexInLog restored the start_with branch July 20, 2022 11:48
@AlexInLog
AlexInLog deleted the start_with branch July 20, 2022 11:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant