LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: James Bottomley <James.Bottomley@HansenPartnership.com>
To: Bart Van Assche <bart.vanassche@gmail.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
Andrew Morton <akpm@linux-foundation.org>,
Vladislav Bolkhovitin <vst@vlnb.net>,
FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>,
linux-scsi@vger.kernel.org, scst-devel@lists.sourceforge.net,
linux-kernel@vger.kernel.org
Subject: Re: Integration of SCST in the mainstream Linux kernel
Date: Tue, 29 Jan 2008 15:42:11 -0500 [thread overview]
Message-ID: <1201639331.3069.58.camel@localhost.localdomain> (raw)
In-Reply-To: <e2e108260801230622x42045058v926e84c60f2be7f4@mail.gmail.com>
On Wed, 2008-01-23 at 15:22 +0100, Bart Van Assche wrote:
> As you probably know there is a trend in enterprise computing towards
> networked storage. This is illustrated by the emergence during the
> past few years of standards like SRP (SCSI RDMA Protocol), iSCSI
> (Internet SCSI) and iSER (iSCSI Extensions for RDMA). Two different
> pieces of software are necessary to make networked storage possible:
> initiator software and target software. As far as I know there exist
> three different SCSI target implementations for Linux:
> - The iSCSI Enterprise Target Daemon (IETD,
> http://iscsitarget.sourceforge.net/);
> - The Linux SCSI Target Framework (STGT, http://stgt.berlios.de/);
> - The Generic SCSI Target Middle Level for Linux project (SCST,
> http://scst.sourceforge.net/).
> Since I was wondering which SCSI target software would be best suited
> for an InfiniBand network, I started evaluating the STGT and SCST SCSI
> target implementations. Apparently the performance difference between
> STGT and SCST is small on 100 Mbit/s and 1 Gbit/s Ethernet networks,
> but the SCST target software outperforms the STGT software on an
> InfiniBand network. See also the following thread for the details:
> http://sourceforge.net/mailarchive/forum.php?thread_name=e2e108260801170127w2937b2afg9bef324efa945e43%40mail.gmail.com&forum_name=scst-devel.
That doesn't seem to pull up a thread. However, I assume it's these
figures:
.............................................................................................
. . STGT read SCST read . STGT read SCST read .
. . performance performance . performance performance .
. . (0.5K, MB/s) (0.5K, MB/s) . (1 MB, MB/s) (1 MB, MB/s) .
.............................................................................................
. Ethernet (1 Gb/s network) . 77 78 . 77 89 .
. IPoIB (8 Gb/s network) . 163 185 . 201 239 .
. iSER (8 Gb/s network) . 250 N/A . 360 N/A .
. SRP (8 Gb/s network) . N/A 421 . N/A 683 .
.............................................................................................
On the comparable figures, which only seem to be IPoIB they're showing a
13-18% variance, aren't they? Which isn't an incredible difference.
> About the design of the SCST software: while one of the goals of the
> STGT project was to keep the in-kernel code minimal, the SCST project
> implements the whole SCSI target in kernel space. SCST is implemented
> as a set of new kernel modules, only minimal changes to the existing
> kernel are necessary before the SCST kernel modules can be used. This
> is the same approach that will be followed in the very near future in
> the OpenSolaris kernel (see also
> http://opensolaris.org/os/project/comstar/). More information about
> the design of SCST can be found here:
> http://scst.sourceforge.net/doc/scst_pg.html.
>
> My impression is that both the STGT and SCST projects are well
> designed, well maintained and have a considerable user base. According
> to the SCST maintainer (Vladislav Bolkhovitin), SCST is superior to
> STGT with respect to features, performance, maturity, stability, and
> number of existing target drivers. Unfortunately the SCST kernel code
> lives outside the kernel tree, which makes SCST harder to use than
> STGT.
>
> As an SCST user, I would like to see the SCST kernel code integrated
> in the mainstream kernel because of its excellent performance on an
> InfiniBand network. Since the SCST project comprises about 14 KLOC,
> reviewing the SCST code will take considerable time. Who will do this
> reviewing work ? And with regard to the comments made by the
> reviewers: Vladislav, do you have the time to carry out the
> modifications requested by the reviewers ? I expect a.o. that
> reviewers will ask to move SCST's configuration pseudofiles from
> procfs to sysfs.
The two target architectures perform essentially identical functions, so
there's only really room for one in the kernel. Right at the moment,
it's STGT. Problems in STGT come from the user<->kernel boundary which
can be mitigated in a variety of ways. The fact that the figures are
pretty much comparable on non IB networks shows this.
I really need a whole lot more evidence than at worst a 20% performance
difference on IB to pull one implementation out and replace it with
another. Particularly as there's no real evidence that STGT can't be
tweaked to recover the 20% even on IB.
James
next prev parent reply other threads:[~2008-01-29 20:54 UTC|newest]
Thread overview: 147+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-01-23 14:22 Bart Van Assche
2008-01-23 17:11 ` Vladislav Bolkhovitin
2008-01-29 20:42 ` James Bottomley [this message]
2008-01-29 21:31 ` Roland Dreier
2008-01-29 23:32 ` FUJITA Tomonori
2008-01-30 1:15 ` [Scst-devel] " Vu Pham
2008-01-30 8:38 ` Bart Van Assche
2008-01-30 10:56 ` FUJITA Tomonori
2008-01-30 11:40 ` Vladislav Bolkhovitin
2008-01-30 13:10 ` Bart Van Assche
2008-01-30 13:54 ` FUJITA Tomonori
2008-01-31 7:48 ` Bart Van Assche
2008-01-31 13:25 ` Nicholas A. Bellinger
2008-01-31 14:34 ` Bart Van Assche
2008-01-31 14:44 ` Nicholas A. Bellinger
2008-01-31 15:50 ` Vladislav Bolkhovitin
2008-01-31 16:25 ` [Scst-devel] " Joe Landman
2008-01-31 17:08 ` Bart Van Assche
2008-01-31 17:13 ` Joe Landman
2008-01-31 18:12 ` David Dillow
2008-02-01 11:50 ` Vladislav Bolkhovitin
2008-02-01 11:50 ` Vladislav Bolkhovitin
2008-02-01 12:25 ` Vladislav Bolkhovitin
2008-01-31 17:14 ` Nicholas A. Bellinger
2008-01-31 17:40 ` Bart Van Assche
2008-01-31 18:15 ` Nicholas A. Bellinger
2008-02-01 9:08 ` Bart Van Assche
2008-02-01 8:11 ` Bart Van Assche
2008-02-01 10:39 ` Nicholas A. Bellinger
2008-02-01 11:04 ` Bart Van Assche
2008-02-01 12:05 ` Nicholas A. Bellinger
2008-02-01 13:25 ` Bart Van Assche
2008-02-01 14:36 ` Nicholas A. Bellinger
2008-01-30 16:34 ` James Bottomley
2008-01-30 16:50 ` Bart Van Assche
2008-02-02 15:32 ` Pete Wyckoff
2008-02-05 17:01 ` Erez Zilber
2008-02-06 12:16 ` Bart Van Assche
2008-02-06 16:45 ` Benny Halevy
2008-02-06 17:06 ` Roland Dreier
2008-02-18 9:43 ` Erez Zilber
2008-02-18 11:01 ` Bart Van Assche
2008-02-20 7:34 ` Erez Zilber
2008-02-20 8:41 ` Bart Van Assche
2008-01-30 11:18 ` Vladislav Bolkhovitin
2008-01-30 8:29 ` Bart Van Assche
2008-01-30 16:22 ` James Bottomley
2008-01-30 17:03 ` Bart Van Assche
2008-02-05 7:14 ` [Scst-devel] " Tomasz Chmielewski
2008-02-05 13:38 ` FUJITA Tomonori
2008-02-05 16:07 ` Tomasz Chmielewski
2008-02-05 16:21 ` Ming Zhang
2008-02-05 16:43 ` FUJITA Tomonori
2008-02-05 17:09 ` Matteo Tescione
2008-02-06 1:29 ` FUJITA Tomonori
2008-02-06 2:01 ` Nicholas A. Bellinger
2008-01-30 11:17 ` Vladislav Bolkhovitin
2008-02-04 12:27 ` Vladislav Bolkhovitin
2008-02-04 13:53 ` Bart Van Assche
2008-02-04 17:00 ` David Dillow
2008-02-04 17:08 ` Vladislav Bolkhovitin
2008-02-05 16:25 ` Bart Van Assche
2008-02-05 18:18 ` Linus Torvalds
2008-02-04 15:30 ` James Bottomley
2008-02-04 16:25 ` Vladislav Bolkhovitin
2008-02-04 17:06 ` James Bottomley
2008-02-04 17:16 ` Vladislav Bolkhovitin
2008-02-04 17:25 ` James Bottomley
2008-02-04 17:56 ` Vladislav Bolkhovitin
2008-02-04 18:22 ` James Bottomley
2008-02-04 18:38 ` Vladislav Bolkhovitin
2008-02-04 18:54 ` James Bottomley
2008-02-05 18:59 ` Vladislav Bolkhovitin
2008-02-05 19:13 ` James Bottomley
2008-02-06 18:07 ` Vladislav Bolkhovitin
2008-02-07 13:13 ` [Scst-devel] " Bart Van Assche
2008-02-07 13:45 ` Vladislav Bolkhovitin
2008-02-07 22:51 ` david
2008-02-08 10:37 ` Vladislav Bolkhovitin
2008-02-09 7:40 ` david
2008-02-08 11:33 ` Nicholas A. Bellinger
2008-02-08 14:36 ` Vladislav Bolkhovitin
2008-02-08 23:53 ` Nicholas A. Bellinger
2008-02-15 15:02 ` Bart Van Assche
2008-02-07 15:38 ` [Scst-devel] " Nicholas A. Bellinger
2008-02-07 20:37 ` Luben Tuikov
2008-02-08 10:32 ` Vladislav Bolkhovitin
2008-02-09 7:32 ` Luben Tuikov
2008-02-11 10:02 ` Vladislav Bolkhovitin
2008-02-08 11:53 ` [Scst-devel] " Nicholas A. Bellinger
2008-02-08 14:42 ` Vladislav Bolkhovitin
2008-02-09 0:00 ` Nicholas A. Bellinger
2008-02-04 18:29 ` Linus Torvalds
2008-02-04 18:49 ` James Bottomley
2008-02-04 19:06 ` Nicholas A. Bellinger
2008-02-04 19:19 ` Nicholas A. Bellinger
2008-02-04 19:44 ` Linus Torvalds
2008-02-04 20:06 ` [Scst-devel] " 4news
2008-02-04 20:24 ` Nicholas A. Bellinger
2008-02-04 21:01 ` J. Bruce Fields
2008-02-04 21:24 ` Linus Torvalds
2008-02-04 22:00 ` Nicholas A. Bellinger
2008-02-04 22:57 ` Jeff Garzik
2008-02-04 23:45 ` Linus Torvalds
2008-02-05 0:08 ` Jeff Garzik
2008-02-05 1:20 ` Linus Torvalds
2008-02-05 8:38 ` Bart Van Assche
2008-02-05 17:50 ` Jeff Garzik
2008-02-06 10:22 ` Bart Van Assche
2008-02-06 14:21 ` Jeff Garzik
2008-02-05 13:05 ` Olivier Galibert
2008-02-05 18:08 ` Jeff Garzik
2008-02-05 19:01 ` Vladislav Bolkhovitin
2008-02-04 22:43 ` Alan Cox
2008-02-04 17:30 ` Douglas Gilbert
2008-02-05 2:07 ` [Scst-devel] " Chris Weiss
2008-02-05 14:19 ` FUJITA Tomonori
2008-02-04 22:59 ` Nicholas A. Bellinger
2008-02-04 23:00 ` James Bottomley
2008-02-04 23:12 ` Nicholas A. Bellinger
2008-02-04 23:16 ` Nicholas A. Bellinger
2008-02-05 18:37 ` James Bottomley
2008-02-04 23:04 ` Jeff Garzik
2008-02-04 23:27 ` Linus Torvalds
2008-02-05 19:01 ` Vladislav Bolkhovitin
2008-02-05 19:12 ` Jeff Garzik
2008-02-05 19:21 ` Vladislav Bolkhovitin
2008-02-06 0:11 ` Nicholas A. Bellinger
2008-02-06 1:43 ` Nicholas A. Bellinger
2008-02-12 16:05 ` [Scst-devel] " Bart Van Assche
2008-02-13 3:44 ` Nicholas A. Bellinger
2008-02-13 6:18 ` CONFIG_SLUB and reproducable general protection faults on 2.6.2x Nicholas A. Bellinger
2008-02-13 16:37 ` Nicholas A. Bellinger
2008-02-06 0:17 ` Integration of SCST in the mainstream Linux kernel Nicholas A. Bellinger
2008-02-06 0:48 ` Nicholas A. Bellinger
2008-02-06 0:51 ` Nicholas A. Bellinger
2008-02-05 0:07 ` Matt Mackall
2008-02-05 0:24 ` Linus Torvalds
2008-02-05 0:42 ` Jeff Garzik
2008-02-05 0:45 ` Matt Mackall
2008-02-05 4:43 ` [Scst-devel] " Matteo Tescione
2008-02-05 5:07 ` James Bottomley
2008-02-05 13:38 ` FUJITA Tomonori
2008-02-05 19:00 ` Vladislav Bolkhovitin
2008-02-05 17:10 ` Erez Zilber
2008-02-05 19:02 ` Bart Van Assche
2008-02-05 19:02 ` Vladislav Bolkhovitin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1201639331.3069.58.camel@localhost.localdomain \
--to=james.bottomley@hansenpartnership.com \
--cc=akpm@linux-foundation.org \
--cc=bart.vanassche@gmail.com \
--cc=fujita.tomonori@lab.ntt.co.jp \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=scst-devel@lists.sourceforge.net \
--cc=torvalds@linux-foundation.org \
--cc=vst@vlnb.net \
--subject='Re: Integration of SCST in the mainstream Linux kernel' \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).