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

Ariel Weisberg commented on CASSANDRA-8714:
-------------------------------------------

Looking at the micro benchmark it isn't measuring the right thing. The same 
call site has to potentially contain direct and non-direct buffers. The JVM 
also does JVM wide class hierarchy analysis, but I don't know what it does for 
call site specific analysis. There are actually several potential direct and 
non-direct byte buffer classes. Take a look at the type hierarchy for 
ByteBuffer it's pretty long.

This would only be a factor for very small copies Say 4-16 bytes or similar. 
Say when serializing variable length fields that can be very small. You would 
end up calling this which is basically a memcpy equivalent, and that is where 
the overhead of starting the memcpy matters.

> row-cache: use preloaded jemalloc w/ Unsafe
> -------------------------------------------
>
>                 Key: CASSANDRA-8714
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-8714
>             Project: Cassandra
>          Issue Type: Sub-task
>            Reporter: Robert Stupp
>            Assignee: Robert Stupp
>             Fix For: 3.0
>
>         Attachments: 8714-2.txt, 8714-3.txt, 8714-4.txt, 8714.txt
>
>
> Using jemalloc via Java's {{Unsafe}} is a better alternative on Linux than 
> using jemalloc via JNA.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to