Hi Li, But the acceptor is only running on the core 0, right? Yes. But if what you see is in acceptor.c, it may be the acceptor dedicated to check start of communication by initiator. Regardless of this, you are correct and each iSCSI connection is handled by single CPU core because SPDK is highly efficient and lockless. By increasing number of iSCSI connections, all CPU cores will be used. The following by Ziye Yang is not maintained now but it will be helpful if you read. https://review.gerrithub.io/#/c/spdk/spdk/+/392733/18/doc/iscsi_pg.md Thanks, Shuhei ________________________________ 差出人: SPDK が Li Feng の代理で送信 送信日�: 2018年7月31日 14:32 宛先: Storage Performance Development Kit 件名: [!][SPDK] How to utilize multiple threads? Hi experts, When I'm digging into SPDK iscsi source codes, I have some doubt about the threads/reactors. Look at this example. Start iscsi target on core 0-7: ``` app/iscsi_tgt/iscsi_tgt -L all -d 1 -m 0xff ``` I can see 8 threads which are polling. But the acceptor is only running on the core 0, right? This means all IOs are processed on core 0, no matter how many bdevs are connecting ? I can see sending NOP IN is a poller running on all reactors. But this is not about read/write. So how to utilize the other threads to maximum the iops and throughput? Thanks in advance. The SmartX email address is only for business purpose. Any sent message that is not related to the business is not authorized or permitted by SmartX. 本邮箱为北京志凌海纳科技有限公司(SmartX)工作邮箱. 如本邮箱发出的邮件与工作无关,该邮件未得到本公司任何的明示或默示的授权.