Re: [PATCH 05/14] vrange: Add new vrange(2) system call

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Oct 08, 2013 at 12:35:33AM -0400, KOSAKI Motohiro wrote:
> (10/7/13 11:07 PM), Minchan Kim wrote:
> >Hi KOSAKI,
> >
> >On Mon, Oct 07, 2013 at 10:51:18PM -0400, KOSAKI Motohiro wrote:
> >>>Maybe, int madvise5(addr, length, MADV_DONTNEED|MADV_LAZY|MADV_SIGBUS,
> >>>         &purged, &ret);
> >>>
> >>>Another reason to make it hard is that madvise(2) is tight coupled with
> >>>with vmas split/merge. It needs mmap_sem's write-side lock and it hurt
> >>>anon-vrange test performance much heavily and userland might want to
> >>>make volatile range with small unit like "page size" so it's undesireable
> >>>to make it with vma. Then, we should filter out to avoid vma split/merge
> >>>in implementation if only MADV_LAZY case? Doable but it could make code
> >>>complicated and lost consistency with other variant of madvise.
> >>
> >>I haven't seen your performance test result. Could please point out URLs?
> >
> >https://lkml.org/lkml/2013/3/12/105
> 
> It's not comparison with and without vma merge. I'm interest how much benefit
> vmas operation avoiding have.

I had an number but lost it so I should set up it in my KVM machine :(
And I needed old kernel 3.7.0 for testing vma-based approach.

DRAM:2G, CPU : 12 

kernel 3.7.0

jemalloc: 20527 records/s
jemalloc vma based approach : 5360 records/s

vrange call made worse because every thread stuck with mmap_sem.

kernel 3.11.0

jemalloc: 21176 records/s
jemalloc vroot tree approach: 103637 records/s

It could enhance 5 times.

-- 
Kind regards,
Minchan Kim

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]