Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 12 Nov 2014 18:54:49 -0500
From:      J David <j.david.lists@gmail.com>
To:        "K. Macy" <kmacy@freebsd.org>
Cc:        "freebsd-hackers@freebsd.org" <freebsd-hackers@freebsd.org>, "freebsd-questions@freebsd.org" <freebsd-questions@freebsd.org>
Subject:   Re: How thread-friendly is kevent?
Message-ID:  <CABXB=RQE5mh34xEnG%2B_MHKOCoykzKd%2B04Yd8DxE=CoVXyZnoxA@mail.gmail.com>
In-Reply-To: <CAHM0Q_OXUf5FDX485L0osdfsoYj7bgPCr==h0=_tuaq7RGnP7g@mail.gmail.com>
References:  <CABXB=RQWxu-d30raZ%2BFcrnrGsr5gG2Za_=cx8-jCnLSgJDSF=Q@mail.gmail.com> <20141110071353.GO24601@funkthat.com> <CABXB=RStLz6J9L3--KsM308-0h0N5ZeZZvw1GbDi%2BZvKO4U64g@mail.gmail.com> <20141112084909.GV24601@funkthat.com> <CAHM0Q_MJjH=Cq0AKTn64RkzgwPBMoKnDVu-GvcX6qBcFYDMpOg@mail.gmail.com> <CABXB=RTsktT7U1r5yzmwWVpJoiNFJBeT-in30r9rdo-tT-rfhQ@mail.gmail.com> <CAHM0Q_OXUf5FDX485L0osdfsoYj7bgPCr==h0=_tuaq7RGnP7g@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Nov 12, 2014 at 5:31 PM, K. Macy <kmacy@freebsd.org> wrote:
> Well, this was 8 cores with 45 or so processes.

Here's the bench test on a 16 (physical) core machine with 24 threads:

Server thread ends after 853093 events.
Server thread ends after 834169 events.
Server thread ends after 826117 events.
Server thread ends after 824130 events.
Server thread ends after 826998 events.
Server thread ends after 838043 events.
Server thread ends after 859163 events.
Server thread ends after 844742 events.
Server thread ends after 821916 events.
Server thread ends after 807776 events.
Server thread ends after 805819 events.
Server thread ends after 840685 events.
Server thread ends after 847173 events.
Server thread ends after 834560 events.
Server thread ends after 833862 events.
Server thread ends after 842143 events.
Server thread ends after 866425 events.
Server thread ends after 813094 events.
Server thread ends after 833364 events.
Server thread ends after 805277 events.
Server thread ends after 816654 events.
Server thread ends after 834174 events.
Server thread ends after 851322 events.
Server thread ends after 839701 events.

This particular test is CPU bound, so more threads don't make much
sense, but they also don't make much difference as far as balance.
The results are equally even with 128 threads, though the time wasted
in kqflxw and context switching is *enormously* larger, aptly
demonstrating what John-Mark was talking about.

So it seems fairly scalable, at least as of 9.3-STABLE.  Good work,
whoever it was!

Thanks!



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CABXB=RQE5mh34xEnG%2B_MHKOCoykzKd%2B04Yd8DxE=CoVXyZnoxA>