So, I learned a few things since I put up the previous set of benchmarks: - The erratic behaviour from Linux is due to the glibc memory allocator. Using Google's tcmalloc, the problem disappears. - I missed a few things when porting jemalloc from FreeBSD. One of them was fairly major. Due to my mistake jemalloc on NetBSD was, basically, single threaded. That said it did show a noticable improvement over phkmalloc. - There was a nasty performance bug in NetBSD's pthread mutexes, which is now fixed. libpthread has also had a couple more tweaks for performance that have had a positive impact. - The memory allocator used has a significant effect on sysbench itself: it needs to be multithreaded. - Mindaugas has made more improvements to his scheduler and these are showing a really positive effect. So after making some changes to NetBSD, and changes to how I'm benchmarking the systems, I have rerun them. In contrast to the previous runs, this one is done locally: http://www.netbsd.org/~ad/sysbench2/4cpu.png Kris Kennaway has kindly offered to try NetBSD on an 8-way system. I expect that NetBSD will hit a fairly clear ceiling due to poll, fcntl and socket I/O causing contention on kernel_lock. It will be interesting to see. Thanks, Andrew
| Andrew Morton | Re: -mm merge plans for 2.6.23 -- sys_fallocate |
| david | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
| Linus Torvalds | Linux 2.6.27-rc5 |
| David Miller | Re: [PATCH] net: Fix the prototype of call_netdevice_notifiers |
git: | |
| Gerrit Renker | [PATCH 27/37] dccp: Integration of dynamic feature activation - part 2 (server side) |
| David Miller | Re: [GIT]: Networking |
| Jarek Poplawski | [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
