On Wed, 2009-04-01 at 08:20 -0400, Ross Walker wrote:On Apr 1, 2009, at 2:29 AM, Bart Van Assche <bart.vanassche@xxxxxxxxx> wrote:
On Tue, Mar 31, 2009 at 8:43 PM, Ross S. W. WalkerThank for the update. IET has used 8 threads per target for ages now, I don't think it is that.
<RWalker@xxxxxxxxxxxxx> wrote:
IET just needs to fix how it does it workload with CFQ whichI'm not familiar with the implementation details of CFQ, but I know
somehow SCST has overcome. Of course SCST tweaks the Linux kernel to
gain some extra speed.
that one of the changes between SCST 1.0.0 and SCST 1.0.1 is that the
default number of kernel threads of the scst_vdisk kernel module has
been increased to 5. Could this explain the performance difference
between SCST and IET for FILEIO and BLOCKIO ?
It may be how the I/O threads are forked in SCST that causes them to be in the same I/O context with each other.
I'm pretty sure implementing a version of the patch that was used for the dump command (found on the LKML) will fix this.
But thanks goes to Vlad for pointing this dificiency out so we can fix it to help make IET even better.
SCST explicitly fiddles with the io context to get this to happen. It
has a hack to block to export alloc_io_context:
http://marc.info/?t=122893564800003