cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "graham sanderson (JIRA)" <>
Subject [jira] [Commented] (CASSANDRA-6890) Standardize on a single read path
Date Wed, 22 Oct 2014 00:55:35 GMT


graham sanderson commented on CASSANDRA-6890:

I haven't followed this entire thread - I just happened across it - so this may be moot at
this point, but I thought I'd throw it out there.

&bq. mmap is better for the number of reasons but mostly because we have to do less syscalls
and less copies (especially cross mode boundary). So I would, as well, vote to leave it and
remove buffered I/O instead.

We just observed this in the wild on similar high end machines to that on which we run C*
(40 cores, lots of high perf disks, RAM etc). With a large number of reader threads (in this
cased doing random pread64 I/O against a single fd) we were seeing a *significant* cliff where
performance dropped off alarmingly quickly (very high user and kernel CPU, with little to
no actual disk I/O). In this case the data files fit in the page cache which obviously makes
the problem more visible. Anyway.

> Standardize on a single read path
> ---------------------------------
>                 Key: CASSANDRA-6890
>                 URL:
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Joshua McKenzie
>            Assignee: Joshua McKenzie
>              Labels: performance
>             Fix For: 3.0
>         Attachments: 6890_v1.txt, mmap_gc.jpg, mmap_jstat.txt, mmap_perf.txt, nommap_gc.jpg,
> 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

View raw message