Messages in this thread | | | Date | Tue, 27 Apr 1999 02:18:22 +0200 (CEST) | From | Andrea Arcangeli <> | Subject | 2.2.6_andrea3.bz2 (fixed an interesting (harmless) bug) [Re: [big performances boost for DataBases] Re: cache killer memory death test - 2.0 vs 2.2 vs arca - programs ]inside |
| |
On 26 Apr 1999, Harvey J. Stein wrote:
>Without gdbm_sync (interactive test): > > user sys elapsed worst 2nd > 88.50 24.90 17:38.55 97.38 74.78 > >It didn't have big pauses while the test was running, but it ran much >slower! The system *was* sluggish and did have lots of annoying
I think the problem is that the buffer cache couldn't grow too much (some VM not buffer related thing). I think now it should work better and here with 32mbyte of RAM I must continue to avoid to fsync to get performances. Maybe because I have a slower I/O...
I also killed bdflush (I left it there just in the case somebody want to send him a signal and in order to handle sync/unmount from sysrq keys). We need kswapd because we can reclaim pages from irq (where we can't sleep) but in the buffer cache when we mark a buffer dirty we can always sleep. And syncing pages slowly in background is far better than generating stream of I/O request that will stall the system for long times.
I also discovered an interesting bug in my page-mapping handling in 2.2.6_andrea2 (I simply forgot to increase the map_count of the page at fork time... ;). The bug can't lead to corruption/crash or any kind of other harm because I designed the map_count handling in a safe way, but the bug was obviously harming performances :(. So if 2.2.6_andrea2 was fast 2.2.6_andrea3 can be an order of magnitude faster in shrink_mmap.
So I would be glad if you could try out 2.2.6_andrea3.bz2 and tell me if something changed in better or worse.
ftp://e-mind.com/pub/andrea/kernel/2.2.6_andrea3.bz2
Thanks!
Andrea Arcangeli
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |