On Fri, 14 May 2010 12:53:48 +0900 FUJITA Tomonori <fujita.tomonori at lab.ntt.co.jp> wrote: > There was some discussion on the scalability problem of tgt. > > We have the feature to run multiple tgt processes on the single host > to for it. However, it has some disadvantages such as you can't share > portals, you need to use tgtadm against each tgtd daemon, etc. > > We discussed converting tgt to use {process|pthread} per > {target|nexus|etc} to improve the performance. > > This patch converts tgt to use pthread per target. It's a hacky patch > and there are tons of more things to fix. And I've not tested it much. > > But I want to see how it could improve the performance. Ok, I confirmed that this improves the performance. One target box exports four Intel SSD drivers as four logical units to one initiator boxes with 10GbE. The initiator runs disktest against each logical unit. The initiator gets about 500 MB/s in total. Running four tgt process (with "-C" option) produces about 850 MB/s in total. This patch also gives about 850MB/s. Seems that one process can handle 10GbE I/Os, however, it's not enough to handle 10GbE _and_ signalfd load generated by fast disk I/Os. I plan to clean up and merge this. -- 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 |