Re: Problem identified: WAPL/RAIDframe performance problems
"J. Hannken-Illjes" <[email protected]> Wed, 28 Nov 2012 18:41:28 +0100
| Newsgroups | gmane.os.netbsd.devel.kernel,gmane.os.netbsd.devel.performance |
|---|---|
| Message-ID | <[email protected]> |
On Nov 28, 2012, at 6:02 PM, Greg Troxel <[email protected]> wrote: >=20 > Edgar Fu=DF <[email protected]> writes: >=20 >>> I seem to be facing two problems: >>>=20 >>> 1. A certain svn update command is ridicously slow on my to-be file = server. >>> 2. During the svn update, the machine partially locks up and fails = to respond=20 >>> to NFS requests. >> Thanks to very kind help by hannken@, I now at least know what the = problem is. >>=20 >> Short form: WAPBL is currently completely unusable on RAIDframe (I = always=20 >> suspected something like that), at least on non-Level 0 sets. >>=20 >> The problem turned out to be wapbl_flush() writing non-fsbsize chunks = on non- >> fsbsize boundaries. So RAIDframe is nearly sure to RMW. >> That makes the log being written to disc at about 1MB/s with the = write lock=20 >> on the log being held. So everything else on that fs tstiles on the = log's=20 >> read lock. >=20 > Do you see this on RAID-1 too? >=20 > I wonder if it's possible (easily) to make the log only use fsbize > boundaries, (maybe forcing it to be bigger as a side effect.) Sure -- add fsbsize sized buffer to struct wapbl and teach wapbl_write() to collect data until the buffers start or end touches a fsbsize = boundary. As long as the writes don't cross the logs end they already come = ordered. -- J. Hannken-Illjes - [email protected] - TU Braunschweig (Germany)