[ https://issues.apache.org/jira/browse/IGNITE-22835?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18017696#comment-18017696 ]
Alexey Scherbakov commented on IGNITE-22835: -------------------------------------------- I've conducted new tests on a branch ignite-22825 (rev 5e1a391410920995650e2a73b9e019cee15352d9) The scenario involves bare metal server and client. Defaults {noformat} Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 1 avgt 20 201.786 ± 9.149 us/op Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 4 avgt 20 217.094 ± 18.183 us/op Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 4 thrpt 20 19254.515 ± 795.112 ops/s Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 4 thrpt 20 18977.851 ± 937.815 ops/s Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 16 thrpt 20 56347.211 ± 3210.683 ops/s Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 16 thrpt 20 55183.843 ± 2335.803 ops/s Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 32 thrpt 20 86504.146 ± 6469.353 ops/s Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 64 thrpt 20 111756.265 ± 10197.576 ops/s Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 128 thrpt 20 116758.187 ± 12526.985 ops/s{noformat} Shared event loop {noformat} Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 1 avgt 20 185.268 ± 10.259 us/op Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 4 thrpt 20 19664.990 ± 890.717 ops/s Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 16 thrpt 20 58425.282 ± 2904.932 ops/s Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 32 thrpt 20 85003.399 ± 6795.118 ops/s Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 64 thrpt 20 99424.795 ± 8263.485 ops/s Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 64 thrpt 20 98579.741 ± 8528.646 ops/s Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 128 thrpt 20 112725.852 ± 12242.326 ops/s{noformat} Logit {noformat} Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 4 thrpt 20 20590.542 ± 1135.181 ops/s Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 16 thrpt 20 58533.771 ± 4342.358 ops/s Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 32 thrpt 20 94998.876 ± 7756.843 ops/s Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 64 thrpt 20 117384.260 ± 10187.656 ops/s Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 128 thrpt 20 125908.100 ± 12779.266 ops/s{noformat} Shared event loop + Logit {noformat} Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 4 thrpt 20 22632.517 ± 985.868 ops/s Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 16 thrpt 20 64362.742 ± 4222.572 ops/s Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 32 thrpt 20 99072.524 ± 7338.908 ops/s Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 64 thrpt 20 127911.652 ± 13472.827 ops/s Benchmark (fsync) (offset) (partitionCount) (remote) (threads) Mode Cnt Score Error Units ClientKvPutBenchmark.upsert false 0 32 true 128 thrpt 20 127059.057 ± 16563.789 ops/s{noformat} > Latency penalty for using disruptor threads > ------------------------------------------- > > Key: IGNITE-22835 > URL: https://issues.apache.org/jira/browse/IGNITE-22835 > Project: Ignite > Issue Type: Improvement > Reporter: Vladislav Pyatkov > Assignee: Alexey Scherbakov > Priority: Major > Labels: ignite-3 > Time Spent: 10m > Remaining Estimate: 0h > > h3. Motivation > All three disruptors are part of the RAFT implementation. Each time a command > has to be replicated, all the disruptors are used. This leads to a bad impact > on the entire operation's latency. > {noformat} > onBeforeApplyCmd:%node_3344%JRaft-Request-Processor-3 0.2 5415400 5415600 > Here is hidden 6.1 us > RaftNodeOnEvent:%node_3344%JRaft-NodeImpl-Disruptor_stripe_2-0 0.0 5421700 > 5421700 > -- > RaftNodeOnEvent:%node_3344%JRaft-NodeImpl-Disruptor_stripe_2-0 0.0 5421700 > 5421700 > Here is hidden 2.8 us > LogManagerOnEvent:%node_3344%JRaft-LogManager-Disruptor_stripe_2-0 0.1 > 5424500 5424600 > -- > flushLog:%node_3344%JRaft-LogManager-Disruptor_stripe_2-0 18.7 5426400 5445100 > Here is hidden 2.9 us > FSMCallerOnEvent:%node_3344%JRaft-FSMCaller-Disruptor_stripe_1-0 0.1 5448000 > 5448100 > {noformat} > h3. Definition of done > * We can try to use the disruptor wait policy, depending on the case. > * Maybe we can reduce a number of the dusruptor queues. -- This message was sent by Atlassian Jira (v8.20.10#820010)