I am using a terabyte RAID5 with ext3 and created using mdadm, to store jpeg files on a rehdat 7.3 system. I need to write files to the RAID5 at the rate of 800 files per second, and each file is about 10-20 KB in size. I have tried using data-writeback and the noatime options while mounting, and I am also using a stipe-size of 4MB (since 4MB was the max that mdadm would allow me), and i have passed -R stride=1024, and -b 4096 to mkfs.ext3 while formatting the RAID5. Still, I keep getting "hiccups" every few seconds while writing the files.. mostly, these hiccups are at 5-second intervals, so it may suggest that the ext3 default commit interval is the culprit, and the effect has diminished after i changed the commit interval to 1 second in the kernel code, under linux/fs/jbd/journal.c, the line changed was: journal->j_commit_interval = (HZ * 1); // originally HZ * 5. I have some questions at this point: 1. Is there any other way of modifying the commit interval? If possible I would like to take the commit interval modification out of the kernel and put it back in user level code.. 2. Are there other things that I should try to optimize the write performance? Thanks a lot in advance!!! --------------------------------- Do you Yahoo!? New Yahoo! Photos - easier uploading and sharing
Hi, On Wed, 2003-12-17 at 15:06, M K wrote:> Still, I keep getting "hiccups" every few seconds while writing the > files.. mostly, these hiccups are at 5-second intervals, so it may > suggest that the ext3 default commit interval is the culprit, and the > effect has diminished after i changed the commit interval to 1 second > in the kernel code, under > linux/fs/jbd/journal.c, the line changed was: > journal->j_commit_interval = (HZ * 1); // originally HZ * 5.> I have some questions at this point: > 1. Is there any other way of modifying the commit interval? If > possible I would like to take the commit interval modification out of > the kernel and put it back in user level code..Yes, you can mount with "-o commit=1" (or put "commit=1" in the options field in /etc/fstab) as long as you've got a moderately recent kernel. The 2.4.20-20.* Red Hat Linux kernels should include that.> 2. Are there other things that I should try to optimize the write > performance?There are various things you could try. In general, avoiding dependencies between different IOs is a good thing. That can mean splitting up files amongst more directories (htree will help to avoid the cost of large dirs, of course); or even splitting the storage into multiple different filesystems, or splitting the raid array into multiple arrays. Really, though, it's so application-dependent that it's hard to be any more specific than this. Cheers, Stephen
Reasonably Related Threads
- Large File Copy to Large ext3 RAID5 Array Often Stalls
- Ext3, Raid5, and Quotas on 2.4.14?
- 2.4.20: ext3/raid5 - allocating block in system zone/multiple 1 requests for sector]
- Re: 2.4.20: ext3/raid5 - allocating block in system zone/multiple 1 requests for sector
- [amr] raid config went from RAID5 to RAID0 ?