[Stgt-devel] More threads for device server
fujita.tomonori at lab.ntt.co.jp
Mon Sep 5 04:14:49 CEST 2005
From: Mike Christie <michaelc at cs.wisc.edu>
Subject: Re: [Stgt-devel] More threads for device server
Date: Sun, 04 Sep 2005 21:05:12 -0500
> > The current code uses work queue for performing SCSI commands (or
> > block target's tasks). Work queue is simple and good enough for
> > debugging, however, a single thread per CPU is not good enough (from
> > the performance perspective).
> > I thought about creating multiple kernel threads by hand. Are there
> > handy APIs?
> you can create a single threaded workqueue per target or session?
The vfs APIs work synchronously. So we need multiple threads per
target (or session) to perform several SCSI commands simultaneously.
If we always use asynchronous block I/O APIs (like AIO vfs,
submit_bio, etc), a single threaded workqueue would be fine.
More information about the stgt