lkml.org 
[lkml]   [2007]   [Apr]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: missing madvise functionality
    On Tue, 3 Apr 2007 14:49:48 -0700
    Andrew Morton <akpm@linux-foundation.org> wrote:

    > > int
    > > main (void)
    > > {
    > > pthread_t th[32];
    > > int i;
    > > for (i = 0; i < 32; i++)
    > > if (pthread_create (&th[i], NULL, tf, NULL))
    > > exit (4);
    > > for (i = 0; i < 32; i++)
    > > pthread_join (th[i], NULL);
    > > return 0;
    > > }
    > >
    >
    > whee. 135,000 context switches/sec on a slow 2-way. mmap_sem, most
    > likely. That is ungood.
    >
    > Did anyone monitor the context switch rate with the mysql test?
    >
    > Interestingly, your test app (with s/100000/1000) runs to completion in 13
    > seocnd on the slow 2-way. On a fast 8-way, it took 52 seconds and
    > sustained 40,000 context switches/sec. That's a bit unexpected.
    >
    > Both machines show ~8% idle time, too :(

    All of which indicates that if we can remove the down_write(mmap_sem) from
    this glibc operation, things should get a lot better - there will be no
    additional context switches at all.

    And we can surely do that if all we're doing is looking up pageframes,
    putting pages into fake-swapcache and moving them around on the page LRUs.

    Hugh? Sanity check?

    That difference between the 2-way and the 8-way sure is odd.
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2007-04-04 01:05    [W:0.053 / U:0.036 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site