lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Fri, 25 Aug 2006 09:48:15 +0400
From:	Evgeniy Polyakov <johnpol@....mipt.ru>
To:	Christoph Hellwig <hch@...radead.org>
Cc:	lkml <linux-kernel@...r.kernel.org>,
	David Miller <davem@...emloft.net>,
	Ulrich Drepper <drepper@...hat.com>,
	Andrew Morton <akpm@...l.org>, netdev <netdev@...r.kernel.org>,
	Zach Brown <zach.brown@...cle.com>
Subject: Re: [take13 1/3] kevent: Core files.

On Thu, Aug 24, 2006 at 09:03:22PM +0100, Christoph Hellwig (hch@...radead.org) wrote:
> One question on the implementation of kevent_user_ctl_modify/
> kevent_user_ctl_remove/kevent_user_ctl_add:  What benchmarks did you
> do to add the separate 'fastpath' with the single onstack ukevent
> structure if there are three or less events?  I can't believe this
> actually helps in practice for various reasons:
> 
>  - you add quite a lot of icache footprint by duplicating all this code
>  - kmalloc is really fast
>  - two or three small copy_from/to_user calls are quite a bit slower
>    than one that covers the size of all of them.

kmalloc is really slow actually - it always shows somewhere on top 
in profiles and brings noticeble overhead (as was shown in network tree 
allocator project, although there were used bigger allocations).
I chose 3 ukevents, since they fit exactly one cache line (on my test
machine). In general I try to avoid allocation as much as possible, and
more generic usage case (for various servers) to accept one client and
add it, instead of waiting for several of them and commit them at once.

-- 
	Evgeniy Polyakov
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ