[lkml]   [2007]   [Dec]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: Major regression on hackbench with SLUB

    Hi Linus,

    > On Fri, 7 Dec 2007, Linus Torvalds wrote:
    > >
    > > Can you do one run with oprofile, and see exactly where the cost is? It
    > > should hopefully be pretty darn obvious, considering your timing.

    The results are here:

    > Anyway, it's unclear whether the reason it goes into the slow-path because
    > the freelist is just always empty, or whether it hits the
    > ... || !node_match(c, node)

    I did two things. First I tried making node_match always return true,
    the second was just commenting out the above check. They both had pretty
    much the exact same results. It slowed down by double! Instead of taking
    15 seconds to complete, both took 30 seconds to complete.

    Here's the oprofiles of those runs.

    node_match return 1:

    comment out node_match check:

    > [ The whole node match thing is likely totally bogus. I suspect we pay
    > *more* in trying to match nodes than we'd ever likely pay in just
    > returning the wrong node for an allocation, but that's neither here nor
    > there ]

    I don't think it's bogus by the result that removing it slowes it down
    by half.

    I'm wondering if there's not some other cache thrashing happening
    somewhere else in the slub code. I'll start adding some stats in the code
    to see where the congestion might lie. I'll look into this on Monday.

    Seems that both SLAB and SLUB run kernel compiles the same. Here's the
    results of my compile test. (make -j256 and chrt -f 10 make -j256)

    -- Steve

     \ /
      Last update: 2007-12-08 23:21    [W:0.044 / U:0.428 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site