Skip to content

Instantly share code, notes, and snippets.

@ffloyd
Created September 30, 2017 09:10
Show Gist options
  • Save ffloyd/90da5f4bfec27b363a02b52a0a7183d6 to your computer and use it in GitHub Desktop.
Save ffloyd/90da5f4bfec27b363a02b52a0a7183d6 to your computer and use it in GitHub Desktop.
#####################################################################################
####### Benchmarking infrastructure (no significant busuness logic involved) #######
#####################################################################################
####### Naive PORO realization
Warming up --------------------------------------
NativeNaive [prepared]
138.615k i/100ms
NativeNaive [recreating]
126.388k i/100ms
Calculating -------------------------------------
NativeNaive [prepared]
2.220M (± 4.1%) i/s - 11.089M in 5.004143s
NativeNaive [recreating]
1.889M (± 4.8%) i/s - 9.479M in 5.032405s
####### Dry::Transaction without using Either
Warming up --------------------------------------
Dry::Transaction [prepared]
3.965k i/100ms
Dry::Transaction [recreating]
1.299k i/100ms
Calculating -------------------------------------
Dry::Transaction [prepared]
42.328k (± 4.0%) i/s - 214.110k in 5.068320s
Dry::Transaction [recreating]
13.489k (± 6.0%) i/s - 67.548k in 5.029987s
####### Flows::Executor executing a schema
Warming up --------------------------------------
Flows::Executor [proc]
58.889k i/100ms
Flows::Executor [lambda]
58.889k i/100ms
Flows::Executor [method]
55.835k i/100ms
Calculating -------------------------------------
Flows::Executor [proc]
707.083k (± 3.5%) i/s - 3.533M in 5.004286s
Flows::Executor [lambda]
709.786k (± 3.8%) i/s - 3.592M in 5.069491s
Flows::Executor [method]
652.641k (± 3.7%) i/s - 3.294M in 5.054973s
####################################################################################
####### Benchmarking "real case" (some relatively expensive logic involved) #######
####################################################################################
####### Naive PORO realization
Warming up --------------------------------------
NativeNaive [prepared]
15.373k i/100ms
NativeNaive [recreating]
20.610k i/100ms
Calculating -------------------------------------
NativeNaive [prepared]
225.791k (±14.5%) i/s - 1.091M in 5.010656s
NativeNaive [recreating]
218.417k (±12.1%) i/s - 1.072M in 5.019651s
####### Dry::Transaction without using Either
Warming up --------------------------------------
Dry::Transaction [prepared]
3.877k i/100ms
Dry::Transaction [recreating]
1.228k i/100ms
Calculating -------------------------------------
Dry::Transaction [prepared]
41.532k (± 4.3%) i/s - 209.358k in 5.052730s
Dry::Transaction [recreating]
12.563k (± 4.9%) i/s - 63.856k in 5.096689s
####### Flows::Executor executing a schema
Warming up --------------------------------------
Flows::Executor [proc]
16.651k i/100ms
Flows::Executor [lambda]
15.442k i/100ms
Flows::Executor [method]
15.813k i/100ms
Calculating -------------------------------------
Flows::Executor [proc]
170.852k (±13.6%) i/s - 832.550k in 5.001688s
Flows::Executor [lambda]
175.685k (±11.1%) i/s - 864.752k in 5.007752s
Flows::Executor [method]
180.766k (± 9.6%) i/s - 901.341k in 5.062227s
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment