All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vladislav Bolkhovitin <vst@vlnb.net>
To: James Bottomley <James.Bottomley@SteelEye.com>
Cc: Mike Christie <michaelc@cs.wisc.edu>,
	johan@capvert.se, iscsitarget-devel@lists.sourceforge.net,
	mingz@ele.uri.edu, stgt <stgt-devel@lists.berlios.de>,
	Robert Whitehead <WRWHITEHEAD@novell.com>,
	scst-devel@lists.sourceforge.net, linux-scsi@vger.kernel.org,
	Christoph Hellwig <hch@infradead.org>
Subject: Re: [Scst-devel] Re: Ang: Re: [Stgt-devel] Re: [Iscsitarget-devel] stgt a new version of iscsi target?
Date: Fri, 09 Dec 2005 18:29:27 +0300	[thread overview]
Message-ID: <4399A2D7.2040402@vlnb.net> (raw)
In-Reply-To: <1134071268.3259.29.camel@mulgrave>

James Bottomley wrote:
> On Thu, 2005-12-08 at 21:46 +0300, Vladislav Bolkhovitin wrote:
> 
>>  - Scst has some performance advantages over stgt, at least, on 
>>hardware targets, because it allows internal handling in SIRQ context as 
>>well as doesn't need user space program, so it eliminates additional 
>>context switches (at least 3 per command for WRITEs and 2 per command 
>>for reads plus switches to user space daemon, probably, 2 per command). 
>>5 context switches per command looks too much for me, especially 
>>considering how little work is done on each context. It means ~15000 
>>CS/sec on regular 200Mb/sec link with 64K block size. Additionally, 
>>kernel only commands execution allows direct access to page cache, which 
>>is GREAT performance improvement, because in architecture with user 
>>space daemon the data should be copied several times between kernel and 
>>user space. Or, do I miimpss anything?
> 
> 
> I do have to say that I consider operation in interrupt context (or even
> kernel context) to be a disadvantage.  Compared with the response times
> that most arrays have to SCSI commands, the kernel context switch time
> isn't that significant.
> 
> Additionally, it's perfectly possible for all of this to be done zero
> copy on the data.  A user space target mmaps the data on its storage
> device and then does a SG_IO type scatter gather user virtual region
> pass to the underlying target infrastructure.  We already have this
> demonstrated in the SG_IO path, someone just needs to come up with the
> correct implementation for a target path.

I'm not completely understand how it will work. Consider, there are 
READ/WRITE commands with random data sizes arrive from an initiator. Are 
you going to do map/unmap for each command individually or alloc data 
buffers for commands from a premapped area and live with possible its 
fragmentation? If map/unmap individually, then I should say that those 
are very expensive operations.

> The great advantage of doing SCSI state machines in user space is that
> you can prototype anything you want, and user space has much better
> state machine implementation (and debugging) tools available than the
> kernel does.
> 
> James
> 
> 
> 
> 
> -------------------------------------------------------
> This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
> for problems?  Stop!  Download the new AJAX search engine that makes
> searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
> http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
> _______________________________________________
> Scst-devel mailing list
> Scst-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/scst-devel
> 


  parent reply	other threads:[~2005-12-09 15:29 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <OF6932015B.01CF53D9-ONC12570D0.00462028@capvert.ins>
     [not found] ` <43972C2D.9060500@cs.wisc.edu>
2005-12-08 18:46   ` Ang: Re: [Stgt-devel] Re: stgt a new version of iscsi target? Vladislav Bolkhovitin
2005-12-08 18:54     ` Ang: Re: [Stgt-devel] Re: [Iscsitarget-devel] " Mike Christie
2005-12-09 15:30       ` Ang: Re: [Stgt-devel] " Vladislav Bolkhovitin
2005-12-09 22:31         ` Ang: Re: [Stgt-devel] Re: [Iscsitarget-devel] " Mike Christie
2005-12-08 19:10     ` Mike Christie
2005-12-08 19:48       ` James Bottomley
2005-12-08 20:09         ` Mike Christie
2005-12-08 21:35           ` Dave C Boutcher
2005-12-08 21:56             ` Mike Christie
2005-12-09 15:29               ` Vladislav Bolkhovitin
2005-12-09 22:31                 ` Mike Christie
2005-12-10 15:31                   ` Vladislav Bolkhovitin
2005-12-10 18:19                     ` Mike Christie
2005-12-10  8:46                 ` FUJITA Tomonori
2005-12-09 15:30             ` Vladislav Bolkhovitin
2005-12-09 15:29           ` Vladislav Bolkhovitin
2005-12-21 23:53         ` FUJITA Tomonori
2005-12-22 10:38           ` Vladislav Bolkhovitin
2005-12-26 23:53         ` Ang: " FUJITA Tomonori
2005-12-28 16:32           ` James Bottomley
2005-12-31  3:27             ` Mike Christie
2005-12-31 15:33               ` James Bottomley
2005-12-09 15:28       ` Vladislav Bolkhovitin
2005-12-09 22:23         ` Mike Christie
2005-12-10  1:15           ` Ang: Re: [Stgt-devel] " Mike Christie
2005-12-10 15:30             ` Ang: Re: [Stgt-devel] Re: [Iscsitarget-devel] " Vladislav Bolkhovitin
2005-12-10 18:22               ` Mike Christie
2005-12-10  8:46         ` FUJITA Tomonori
2005-12-10 15:32           ` Ang: Re: [Stgt-devel] " Vladislav Bolkhovitin
2005-12-10 15:54             ` Ang: Re: [Stgt-devel] Re: [Iscsitarget-devel] " FUJITA Tomonori
2005-12-14 15:17               ` [Scst-devel] " Vladislav Bolkhovitin
2005-12-10 18:09             ` Mike Christie
2005-12-14 15:09               ` Ang: Re: [Stgt-devel] " Vladislav Bolkhovitin
2005-12-08 19:47     ` Ang: Re: [Stgt-devel] Re: [Iscsitarget-devel] " James Bottomley
2005-12-09  3:57       ` Mike Christie
2005-12-09 15:00         ` Ang: Re: [Stgt-devel] " Ming Zhang
2005-12-09 15:29       ` Vladislav Bolkhovitin [this message]
2005-12-09 15:48         ` [Scst-devel] Re: Ang: Re: [Stgt-devel] Re: [Iscsitarget-devel] " James Bottomley
2005-12-10 15:32           ` Vladislav Bolkhovitin
2005-12-10 18:07             ` Mike Christie
2005-12-14 15:06               ` Vladislav Bolkhovitin
2005-12-14 19:55                 ` Mike Christie
2005-12-15 18:53                   ` 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=4399A2D7.2040402@vlnb.net \
    --to=vst@vlnb.net \
    --cc=James.Bottomley@SteelEye.com \
    --cc=WRWHITEHEAD@novell.com \
    --cc=hch@infradead.org \
    --cc=iscsitarget-devel@lists.sourceforge.net \
    --cc=johan@capvert.se \
    --cc=linux-scsi@vger.kernel.org \
    --cc=michaelc@cs.wisc.edu \
    --cc=mingz@ele.uri.edu \
    --cc=scst-devel@lists.sourceforge.net \
    --cc=stgt-devel@lists.berlios.de \
    /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
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.