Thread (65 messages) flat view 65 messages, 11 authors, 2017-10-24

Re: [RFC PATCH 3/3] mm/map_contig: Add mmap(MAP_CONTIG) support

From: Christopher Lameter <hidden>
Date: 2017-10-16 17:53:48
Also in: linux-mm, lkml

On Mon, 16 Oct 2017, Michal Hocko wrote:
On Mon 16-10-17 11:02:24, Cristopher Lameter wrote:
quoted
On Mon, 16 Oct 2017, Michal Hocko wrote:
quoted
quoted
So I mmap(MAP_CONTIG) 1GB working of working memory, prefer some data
structures there, maybe recieve from network, then decide to write
some and not write some other.
Why would you want this?
Because we are receiving a 1GB block of data and then wan to write it to
disk. Maybe we want to modify things a bit and may not write all that we
received.
And why do you need that in a single contiguous numbers? If performance,
do you have any numbers that would clearly tell the difference?
Again we have that in the presentation. Why keep asking the same question
if you already have the answer multiple times?

1G of data requires 250000 page structs to handle if the memory is not
contiguous. This is more than most controllers can support and thus the
overhead will dominate I/O. Also the scatter gather lists will cover lots
of linked 4k pages even to manage.

And in practice we already have multiple gigabytes per requests which
makes it even more severe. You cannot do a "cp" operation anymore. Instead
you need to have special code that allocates huge pages, does direct I/O
etc etc,
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help