[ 
https://issues.apache.org/jira/browse/CASSANDRA-17240?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17490045#comment-17490045
 ] 

Branimir Lambov commented on CASSANDRA-17240:
---------------------------------------------

The test also includes latency stages. Because of the incomplete compaction 
this patch's latency results (which can be found in 
[^density_test_with_sharding.html.gz]) can be misleading, thus I'm only showing 
details and two graphs from the DataStax branch (full data in 
[^density_SG.html.gz]):
{code:java}
     SG-density-1TB-100byte 9fe6f629 2021-12-15 16:44:11 Note: 
Trie/big/UCS-30threads-F16...latency_1_1:latency_1_1.result-success
---------------------------------------
Total Operations           : 499999994
Op Rate                    : 107119 op/sec
Min Latency                : 0.143 ms
Avg Latency                : 1.930 ms
Median Latency             : 0.996 ms
95th Latency               : 4.281 ms
99th Latency               : 10.438 ms
99.9th Latency             : 227.140 ms
Max Latency                : 524.632 ms

     SG-density-1TB-100byte b90ea1ad 2021-12-15 16:15:56 Note: 
SkipList/big/UCS-30threads-F16...latency_1_1.result-success
---------------------------------------
Total Operations           : 499999994
Op Rate                    : 105537 op/sec
Min Latency                : 0.152 ms
Avg Latency                : 2.738 ms
Median Latency             : 1.370 ms
95th Latency               : 6.302 ms
99th Latency               : 14.265 ms
99.9th Latency             : 293.650 ms
Max Latency                : 567.837 ms
{code}
!latency-1_1-95.png!
{code:java}
     SG-density-1TB-100byte 9fe6f629 2021-12-15 16:44:11 Note: 
Trie/big/UCS-30threads-F16...latency_9_1:latency_9_1.result-success
---------------------------------------
Total Operations           : 499999940
Op Rate                    : 107616 op/sec
Min Latency                : 0.138 ms
Avg Latency                : 1.430 ms
Median Latency             : 0.715 ms
95th Latency               : 2.224 ms
99th Latency               : 7.820 ms
99.9th Latency             : 270.483 ms
Max Latency                : 515.391 ms

     SG-density-1TB-100byte b90ea1ad 2021-12-15 16:15:56 Note: 
SkipList/big/UCS-30threads-F16...latency_9_1:latency_9_1.result-success
---------------------------------------
Total Operations           : 499999940
Op Rate                    : 105789 op/sec
Min Latency                : 0.148 ms
Avg Latency                : 2.399 ms
Median Latency             : 1.007 ms
95th Latency               : 5.244 ms
99th Latency               : 11.947 ms
99.9th Latency             : 328.532 ms
Max Latency                : 639.730 ms
{code}
!latency-9_1-95.png!
{code:java}
     SG-density-1TB-100byte 9fe6f629 2021-12-15 16:44:11 Note: 
Trie/big/UCS-30threads-F16...throughput:throughput.result-success
---------------------------------------
Total Operations           : 9999999910
Op Rate                    : 245111 op/sec
Min Latency                : 0.229 ms
Avg Latency                : 8.854 ms
Median Latency             : 7.139 ms
95th Latency               : 17.499 ms
99th Latency               : 28.672 ms
99.9th Latency             : 274.366 ms
Max Latency                : 1187.840 ms
     
     SG-density-1TB-100byte b90ea1ad 2021-12-15 16:15:56 Note: 
SkipList/big/UCS-30threads-F16...throughput:throughput.result-success
---------------------------------------
Total Operations           : 9999997880
Op Rate                    : 107947 op/sec
Min Latency                : 0.372 ms
Avg Latency                : 20.273 ms
Median Latency             : 16.723 ms
95th Latency               : 31.178 ms
99th Latency               : 105.595 ms
99.9th Latency             : 337.592 ms
Max Latency                : 18652.070 ms
{code}
Additionally, below are some JMH microbenchmarks of performing database reads 
off the memtable:
{code:java}
SkipListMemtable in heap_buffers mode: 10000000 ops written in 89.949s, 
5.700GiB (97%) on-heap, 0.000KiB (0%) off-heap
TrieMemtable     in heap_buffers mode: 10000000 ops written in 35.515s, 
4.568GiB (78%) on-heap, 0.000KiB (0%) off-heap

Benchmark                                   (BATCH)   (count)  (flush)   
(memtableClass)  (threadCount)  (useNet)  Mode  Cnt  Score   Error  Units
ReadTestSmallPartitions.readFixed              1000  10000000    INMEM  
SkipListMemtable              1     false  avgt   10  3.610 ± 0.046  ms/op
ReadTestSmallPartitions.readFixed              1000  10000000    INMEM      
TrieMemtable              1     false  avgt   10  3.625 ± 0.061  ms/op
ReadTestSmallPartitions.readOutside            1000  10000000    INMEM  
SkipListMemtable              1     false  avgt   10  2.754 ± 0.027  ms/op
ReadTestSmallPartitions.readOutside            1000  10000000    INMEM      
TrieMemtable              1     false  avgt   10  2.306 ± 0.042  ms/op
ReadTestSmallPartitions.readRandomInside       1000  10000000    INMEM  
SkipListMemtable              1     false  avgt   10  8.332 ± 0.254  ms/op
ReadTestSmallPartitions.readRandomInside       1000  10000000    INMEM      
TrieMemtable              1     false  avgt   10  4.657 ± 0.094  ms/op
ReadTestSmallPartitions.readRandomWOutside     1000  10000000    INMEM  
SkipListMemtable              1     false  avgt   10  8.052 ± 0.058  ms/op
ReadTestSmallPartitions.readRandomWOutside     1000  10000000    INMEM      
TrieMemtable              1     false  avgt   10  4.690 ± 0.059  ms/op

SkipListMemtable in offheap_objects mode: 10000000 ops written in 91.642s, 
3.688GiB (63%) on-heap, 534.058MiB (13%) off-heap
TrieMemtable     in offheap_objects mode: 10000000 ops written in 36.363s, 
2.719GiB (46%) on-heap, 862.752MiB (21%) off-heap

Benchmark                                   (BATCH)   (count)  (flush)   
(memtableClass)  (threadCount)  (useNet)  Mode  Cnt  Score   Error  Units
ReadTestSmallPartitions.readFixed              1000  10000000    INMEM  
SkipListMemtable              1     false  avgt   10  4.631 ± 0.063  ms/op
ReadTestSmallPartitions.readFixed              1000  10000000    INMEM      
TrieMemtable              1     false  avgt   10  4.078 ± 0.044  ms/op
ReadTestSmallPartitions.readOutside            1000  10000000    INMEM  
SkipListMemtable              1     false  avgt   10  2.489 ± 0.009  ms/op
ReadTestSmallPartitions.readOutside            1000  10000000    INMEM      
TrieMemtable              1     false  avgt   10  2.368 ± 0.025  ms/op
ReadTestSmallPartitions.readRandomInside       1000  10000000    INMEM  
SkipListMemtable              1     false  avgt   10  8.921 ± 0.053  ms/op
ReadTestSmallPartitions.readRandomInside       1000  10000000    INMEM      
TrieMemtable              1     false  avgt   10  4.991 ± 0.066  ms/op
ReadTestSmallPartitions.readRandomWOutside     1000  10000000    INMEM  
SkipListMemtable              1     false  avgt   10  8.333 ± 0.046  ms/op
ReadTestSmallPartitions.readRandomWOutside     1000  10000000    INMEM      
TrieMemtable              1     false  avgt   10  4.953 ± 0.070  ms/op
{code}

> CEP-19: Trie memtable implementation
> ------------------------------------
>
>                 Key: CASSANDRA-17240
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-17240
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Local/Memtable
>            Reporter: Branimir Lambov
>            Priority: Normal
>         Attachments: SkipListMemtable-OSS.png, TrieMemtable-OSS.png, 
> density_SG.html.gz, density_test_with_sharding.html.gz, latency-1_1-95.png, 
> latency-9_1-95.png, throughput_SG.png, throughput_apache.png
>
>
> Trie-based memtable implementation as described in CEP-19, built on top of 
> CASSANDRA-17034 and CASSANDRA-6936.
> The implementation is available in this 
> [branch|https://github.com/blambov/cassandra/tree/CASSANDRA-17240].



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to