softwaremill / jox

Fast and Scalable Channels in Java
Apache License 2.0
251 stars 8 forks source link

Implement source views #34

Closed adamw closed 9 months ago

adamw commented 9 months ago

Closes #6

github-actions[bot] commented 9 months ago
Benchmark results ``` Java: (capacity) (chainLength) Mode Cnt Score Error Units BufferedBenchmark.arrayBlockingQueue 1 N/A avgt 5 1037.300 ± 114.002 ns/op BufferedBenchmark.arrayBlockingQueue 10 N/A avgt 5 191.594 ± 18.717 ns/op BufferedBenchmark.arrayBlockingQueue 100 N/A avgt 5 116.139 ± 4.669 ns/op BufferedBenchmark.channel 1 N/A avgt 5 216.940 ± 32.889 ns/op BufferedBenchmark.channel 10 N/A avgt 5 195.584 ± 44.607 ns/op BufferedBenchmark.channel 100 N/A avgt 5 155.167 ± 21.228 ns/op ChainedBenchmark.channelChain 0 100 avgt 5 1008.659 ± 2.818 ns/op ChainedBenchmark.channelChain 0 1000 avgt 5 1014.824 ± 12.108 ns/op ChainedBenchmark.channelChain 0 10000 avgt 5 1049.734 ± 32.343 ns/op ChainedBenchmark.channelChain 100 100 avgt 5 31.436 ± 0.265 ns/op ChainedBenchmark.channelChain 100 1000 avgt 5 30.396 ± 1.734 ns/op ChainedBenchmark.channelChain 100 10000 avgt 5 32.633 ± 2.930 ns/op ChainedBenchmark.queueChain 0 100 avgt 5 139.925 ± 19.076 ns/op ChainedBenchmark.queueChain 0 1000 avgt 5 112.650 ± 10.304 ns/op ChainedBenchmark.queueChain 0 10000 avgt 5 134.190 ± 36.590 ns/op ChainedBenchmark.queueChain 100 100 avgt 5 11.354 ± 0.418 ns/op ChainedBenchmark.queueChain 100 1000 avgt 5 10.768 ± 0.392 ns/op ChainedBenchmark.queueChain 100 10000 avgt 5 9.865 ± 0.354 ns/op RendezvousBenchmark.channel N/A N/A avgt 5 169.323 ± 24.891 ns/op RendezvousBenchmark.exchanger N/A N/A avgt 5 92.257 ± 8.634 ns/op RendezvousBenchmark.synchronousQueue N/A N/A avgt 5 658.667 ± 163.730 ns/op SelectBenchmark.selectWithSingleClause N/A N/A avgt 5 220.681 ± 46.928 ns/op SelectBenchmark.selectWithTwoClauses N/A N/A avgt 5 208.780 ± 15.294 ns/op Kotlin: (capacity) (chainLength) Mode Cnt Score Error Units BufferedKotlinBenchmark.channel_defaultDispatcher 1 N/A avgt 5 110.345 ± 0.514 ns/op BufferedKotlinBenchmark.channel_defaultDispatcher 10 N/A avgt 5 51.885 ± 1.026 ns/op BufferedKotlinBenchmark.channel_defaultDispatcher 100 N/A avgt 5 32.599 ± 2.213 ns/op ChainedKotlinBenchmark.channelChain_defaultDispatcher 0 100 avgt 5 70.472 ± 3.953 ns/op ChainedKotlinBenchmark.channelChain_defaultDispatcher 0 1000 avgt 5 54.370 ± 2.780 ns/op ChainedKotlinBenchmark.channelChain_defaultDispatcher 0 10000 avgt 5 59.164 ± 2.131 ns/op ChainedKotlinBenchmark.channelChain_defaultDispatcher 100 100 avgt 5 13.716 ± 0.435 ns/op ChainedKotlinBenchmark.channelChain_defaultDispatcher 100 1000 avgt 5 12.431 ± 1.133 ns/op ChainedKotlinBenchmark.channelChain_defaultDispatcher 100 10000 avgt 5 15.542 ± 0.340 ns/op ChainedKotlinBenchmark.channelChain_eventLoop 0 100 avgt 5 102.014 ± 5.391 ns/op ChainedKotlinBenchmark.channelChain_eventLoop 0 1000 avgt 5 139.251 ± 22.746 ns/op ChainedKotlinBenchmark.channelChain_eventLoop 0 10000 avgt 5 95.427 ± 2.137 ns/op ChainedKotlinBenchmark.channelChain_eventLoop 100 100 avgt 5 30.004 ± 0.292 ns/op ChainedKotlinBenchmark.channelChain_eventLoop 100 1000 avgt 5 29.082 ± 0.490 ns/op ChainedKotlinBenchmark.channelChain_eventLoop 100 10000 avgt 5 31.758 ± 1.243 ns/op RendezvousKotlinBenchmark.channel_defaultDispatcher N/A N/A avgt 5 149.193 ± 4.100 ns/op SelectKotlinBenchmark.selectWithSingleClause_defaultDispatcher N/A N/A avgt 5 256.317 ± 19.324 ns/op SelectKotlinBenchmark.selectWithTwoClauses_defaultDispatcher N/A N/A avgt 5 360.417 ± 8.896 ns/op ```