[stgt] iscsi load generator and benchmark tool

Boaz Harrosh bharrosh at panasas.com
Mon Oct 12 18:58:46 CEST 2009

On 09/26/2009 12:10 AM, ronnie sahlberg wrote:
> On Fri, Sep 25, 2009 at 9:57 PM, FUJITA Tomonori
> <fujita.tomonori at lab.ntt.co.jp> wrote:
>> On Fri, 25 Sep 2009 14:39:59 +1000
>> ronnie sahlberg <ronniesahlberg at gmail.com> wrote:
>>> You might find this tool useful.
>>> I recently added very simple iscsi support to DBENCH ( http://dbench.samba.org )
>>> so that dbench has a minimal iscsi initiator built in.
>>> This is sometimes useful since it allows to bypass any iscsi initiator
>>> layer, like open-iscsi, on the host and to get full control of exactly
>>> what commands will be issued to the target and accurate measures since
>>> one can know that the data was served across the network and not from
>>> a local cache.
>> Sounds interesting but you need to put the iscsi initiator feature
>> into dbench?
>> I mean that if dbench issues SCSI commands via sg from a load file,
>> can you can achieve similar things?
> In theory yes. In practice no.
> I could never reach very high workloads using the sg interface 

sg is stupidly slow because it does an head-of-queue insert of all commands.
(What are you using write() or SG_IO?). head-of-queue inserts mean the queues
are effectively flushed every time.

bsg with the sg.flags = BSG_FLAG_Q_AT_TAIL and asynchronous operations should keep
your queues full and saturate your network. (Without going through any cache)

> but
> using the iscsi backend to dbench I could easily generate 100s of
> thousands of i/o per second.
> I guess the queueing and i/o scheduling of the kernel comes in the way
> and interferes.

Yes, stupid sg driver see above


> Using a tiny initiator built into dbench I avoid all interference from
> the kernel.
> (dbench can also generate I/O directly to a sd device)
>> btw, I got the latest code from the git tree, but seems that there is
>> no iscsi support yet.
> Oh, sorry about that. the webpage had a regression.
> The correct git tree is :
>  git+ssh://git.samba.org/data/git/sahlberg/dbench.git
> Please try this tree.
To unsubscribe from this list: send the line "unsubscribe stgt" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

More information about the stgt mailing list