Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@mijicd
Copy link
Member

@mijicd mijicd commented Apr 11, 2020

Summary

  • Added toList combinator to TArray.
  • Improved performance of TMap.transform and TMap.transformM.
  • Aligned behaviour of map with scala's map, e.g. List("a" -> 1, "a" -> 2).toMap results in Map("a" -> 2).

Results

Before change:

Benchmark                     (size)   Mode  Cnt       Score      Error  Units
TMapOpsBenchmarks.transform        0  thrpt   15  130167.494 ± 2935.334  ops/s
TMapOpsBenchmarks.transform       10  thrpt   15   83186.545 ± 1943.449  ops/s
TMapOpsBenchmarks.transform      100  thrpt   15    7968.935 ±  224.860  ops/s
TMapOpsBenchmarks.transform     1000  thrpt   15     721.115 ±   50.640  ops/s
TMapOpsBenchmarks.transform    10000  thrpt   15      30.418 ±    1.403  ops/s
TMapOpsBenchmarks.transform   100000  thrpt   15       2.165 ±    0.082  ops/s
TMapOpsBenchmarks.transformM       0  thrpt   15  131919.275 ± 2508.328  ops/s
TMapOpsBenchmarks.transformM      10  thrpt   15   75953.533 ±  885.021  ops/s
TMapOpsBenchmarks.transformM     100  thrpt   15    7719.947 ±   89.299  ops/s
TMapOpsBenchmarks.transformM    1000  thrpt   15     673.047 ±   10.175  ops/s
TMapOpsBenchmarks.transformM   10000  thrpt   15      31.354 ±    0.195  ops/s
TMapOpsBenchmarks.transformM  100000  thrpt   15       2.113 ±    0.051  ops/s

After change:


Benchmark                     (size)   Mode  Cnt       Score      Error  Units
TMapOpsBenchmarks.transform        0  thrpt   15  145808.297 ± 2894.169  ops/s
TMapOpsBenchmarks.transform       10  thrpt   15  114747.115 ± 2945.949  ops/s
TMapOpsBenchmarks.transform      100  thrpt   15   15172.078 ±  198.040  ops/s
TMapOpsBenchmarks.transform     1000  thrpt   15    1806.293 ±   18.680  ops/s
TMapOpsBenchmarks.transform    10000  thrpt   15      94.207 ±    0.607  ops/s
TMapOpsBenchmarks.transform   100000  thrpt   15       6.240 ±    0.113  ops/s
TMapOpsBenchmarks.transformM       0  thrpt   15  142934.548 ± 3049.818  ops/s
TMapOpsBenchmarks.transformM      10  thrpt   15   95933.273 ± 2993.504  ops/s
TMapOpsBenchmarks.transformM     100  thrpt   15   11296.784 ±   62.835  ops/s
TMapOpsBenchmarks.transformM    1000  thrpt   15    1211.265 ±    3.142  ops/s
TMapOpsBenchmarks.transformM   10000  thrpt   15      72.563 ±    2.014  ops/s
TMapOpsBenchmarks.transformM  100000  thrpt   15       4.923 ±    0.054  ops/s

@mijicd mijicd requested a review from jdegoes April 11, 2020 18:18
@jdegoes
Copy link
Member

jdegoes commented Apr 11, 2020

@mijicd Nice to see the doubling of performance!

@jdegoes jdegoes merged commit 8bf1964 into zio:master Apr 12, 2020
@mijicd mijicd deleted the optimize-tmap-transform branch April 12, 2020 13:47
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.

2 participants