Vladislav Bolkhovitin, on 04/02/2009 11:38 AM wrote:
James Bottomley, on 04/02/2009 12:23 AM wrote:
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. Walker
<RWalker@xxxxxxxxxxxxx> 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
Correct, although I wouldn't call it "fiddle", rather "grouping" ;)
But that's not the only reason for good performance. Particularly, it
can't explain Bart's tmpfs results from the previous message, where the
majority of I/O done to/from RAM without any I/O scheduler involved. (Or
does I/O scheduler also involved with tmpfs?) Bart has 4GB RAM, if I
remember correctly, i.e. the test data set was 25% of RAM.
To remove any suspicions that I'm playing dirty games here I should note
that in many cases I can't say what exactly is responsible for good SCST
performance. I can say only something like "good design and
implementation", but, I guess, it wouldn't be counted too much.
SCST/iSCSI-SCST from the very beginning were designed and made with the
best performance in mind and that has brought the result. Sorry, but at
the moment I can't afford doing any "why it's so good?" kinds of
investigations, because I have a lot more important things to do, like
SCST procfs -> sysfs interface conversion.
Thanks,
Vlad
--
To unsubscribe from this list: send the line "unsubscribe stgt" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html