From: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
To: linux-hotplug@vger.kernel.org
Subject: Re: Good news for threading!
Date: Mon, 25 May 2009 20:28:31 +0000 [thread overview]
Message-ID: <4A1AFF6F.5080306@tuffmail.co.uk> (raw)
In-Reply-To: <4A1AA131.7000202@tuffmail.co.uk>
Kay Sievers wrote:
> On Mon, May 25, 2009 at 15:46, Alan Jenkins <alan-jenkins@tuffmail.co.uk> wrote:
>
>> I solved one of the reservations that held me back on threaded udevd. I
>> still have some other concerns to work on, but I'm feeling much more
>> optimistic now.
>>
>> Replacing processes with threads reduced page faults (copy-on-write) by
>> 60-80%, but that _still_ left over 10% of udevd time in page fault overhead.
>>
>> I've discovered I can reduce this overhead much further by marking thread
>> stacks with MADV_DONTFORK. When a thread needs to fork an external program,
>> it can temporarily unmark its own thread stack.
>>
>> Disclaimer: I have no idea why this should reduce the number of page faults.
>> I could be getting something horribly wrong. But even if it's wrong, at
>> least it gives me a new angle on this problem.
>>
>
> Do you have numbers for the difference of threaded vs. non-threaded, for:
> time (udevadm trigger; udevadm settle)
> when no rules are active?
>
> On my box it's ~0.6 seconds for the non-threaded udevd and ~460
> devices, when I move all rules out of the way.
>
> Thanks,
> Kay
>
Interesting question. I stop HAL first, it tends to slow my tests down
and doesn't represent normal bootup.
Test machine is eeepc 701; trigger -n shows 382 devices.
no threading: ~0.5s
threading: ~0.25s
This is based on an a slightly out of date tree. Your latest HEAD is
still ~0.5s, but perhaps slightly lower, 0.46-0.48 as opposed to 0.48-0.5.
Alan
next prev parent reply other threads:[~2009-05-25 20:28 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-05-25 13:46 Good news for threading! Alan Jenkins
2009-05-25 19:09 ` Kay Sievers
2009-05-25 20:28 ` Alan Jenkins [this message]
2009-05-25 23:52 ` Kay Sievers
2009-05-26 7:03 ` Scott James Remnant
2009-05-26 9:32 ` Alan Jenkins
2009-05-26 9:36 ` Alan Jenkins
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4A1AFF6F.5080306@tuffmail.co.uk \
--to=alan-jenkins@tuffmail.co.uk \
--cc=linux-hotplug@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.