Re: [PATCH] eventpoll : Suppress a short lived lock from struct file

Davide Libenzi
2005-07-11T14:02:45Z

[-- Attachment #1: Type: TEXT/PLAIN, Size: 1375 bytes --]

On Mon, 11 Jul 2005, Eric Dumazet wrote:

> Peter Zijlstra a écrit :
>> On Mon, 2005-07-11 at 09:18 +0200, Eric Dumazet wrote:
>>
>> Have you tested the impact of this change on big SMP/NUMA machines?
>> I hate to see an Altrix crashing to its knees :-)
>>
>
> I tested on a small NUMA machine (2 nodes), with a epoll enabled application,
> that use around 100 epoll ctl per second.
>
> Of course, one may write a special benchmark on a BIG SMP/NUMA machine that
> defeat these patch, using thousands of epoll ctl per second, but, a normal
> (well written ?)
> epoll application doesnt constantly add/remove epoll ctl.
>
> Should we waste 8 bytes per 'struct file' for a very unlikely micro benchmark
> ?

Eric, I can't really say I like this one. Not at least after extensive
tests run on top of it. You are asking to add a bottleneck to save 8 bytes
on an entity that taken alone in more than 120 bytes. Consider that when
you have a "struct file" allocated, the cost on the system is not only the
struct itself, but all the allocations associated with it. For example, if
you consider that a case where you might feel a "struct file" pressure is
when you have hundreds of thousands of network connections, the 8 bytes
saved compared to all the buffers associated with those sockets boils down
to basically nothing.

- Davide