Re: [Iscsitarget-devel] [Scst-devel] ISCSI-SCST performance (withalso IET and STGT data)

James Bottomley
2009-04-01T20:24:07Z

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@gmail.com>
> wrote:
>
> > On Tue, Mar 31, 2009 at 8:43 PM, Ross S. W. Walker
> > <RWalker@medallion.com> wrote:
> >> IET just needs to fix how it does it workload with CFQ which
> >> somehow SCST has overcome. Of course SCST tweaks the Linux kernel to
> >> gain some extra speed.
> >
> > I'm not familiar with the implementation details of CFQ, but I know
> > 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 ?
>
> Thank for the update. IET has used 8 threads per target for ages now,
> I don't think it is that.
>
> 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

James