[ltt-dev] [PATCH] Poll : introduce poll_wait_exclusive() new function

KOSAKI Motohiro kosaki.motohiro at jp.fujitsu.com
Thu Nov 27 07:50:16 EST 2008


> > One of the key design rule of LTTng is to do not depend on such
> > system-wide data structures, or entity (e.g. single manager thread).
> > Everything is per-cpu, and it does scale very well.
> > 
> > I wonder how badly the approach you propose can scale on large NUMA
> > systems, where having to synchronize everything through a single thread
> > might become an important point of contention, just due to the cacheline
> > bouncing and extra scheduler activity involved.
> 
> I dunno the LTT architecture, so I'm staying out of that discussion.
> But, if the patch you're trying to push is to avoid thundering herd of so 
> many threads waiting on the single file*, you've got the same problem 
> right there. You've got at least the spinlock protecting the queue 
> where these threads are focusing, whose cacheline is bounced gets bounced 
> all over the CPUs.
> Do you have any measure of the improvements that such poll_wait_exclusive()
> will eventually lead to?

Also my lttng knowledge isn't perfect.
Then, I'd like to talk about another aspect.

This patch was originally written for memory shortage notification to userland patch.
Currently, many application has own various cache (e.g. almost GUI app
has image cache, the VM of the langueage with GC feature has droppable
garbege memory)

However, To wake up all process makes thundering herd easily.
because it wake up almost process in system.
In addision, any process independent on each other. then, I couldn't 
choice your proposed workaround at that time.

Currently, we and container folks restart to discuss cgroup 
oom notification again.
I think this patch can provide its infrastructure too.

if possible, Could you please don't only review description,
but also the code?







More information about the lttng-dev mailing list