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

Pavel Yaskevich commented on CASSANDRA-6890:
--------------------------------------------

Just mine 2 cents here.

To archive those results did you use stress in the mixed mode and/or were reads 
happening simultaneously with writes. This regression could be caused by 
contention on the vm_area_struct access inside mm_struct. Can you do 'perf 
record' on the Cassandra process while stress is running and share the results?

bq. It's somewhat interesting to note that buffered I/O uses roughly 35% more 
privileged cpu-time than memory-mapped, whereas user, interrupt, and all other 
processor counters show comparable load between the two configurations.

This is expected because buffered i/o actually does syscall per read and has to 
copy data over from page cache to the user buffer. 

> Remove mmap'ed i/o from read path
> ---------------------------------
>
>                 Key: CASSANDRA-6890
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-6890
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Joshua McKenzie
>            Assignee: Joshua McKenzie
>            Priority: Minor
>             Fix For: 3.0
>
>         Attachments: mmap_gc.jpg, mmap_jstat.txt, mmap_perf.txt, 
> nommap_gc.jpg, nommap_jstat.txt
>
>
> Since we actively unmap unreferenced SSTR's and also copy data out of those 
> readers on the read path, the current memory mapped i/o is a lot of 
> complexity for very little payoff.  Clean out the mmapp'ed i/o on the read 
> path.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to