Re: Query regarding SPDK NVMe-oF TCP performance.
by Senthil Kumar Veluswamy
Thank you, Ziye Yang.
Any specific reason for not using io_uring for NVMe-oF TCP?
Is there any plan to do so in the future? Just to see whether that provides better performance than POSIX socket.
Regards,
Senthil Kumar V.
On 10/03/21, 1:30 PM, "Yang, Ziye" <ziye.yang(a)intel.com> wrote:
CAUTION: This email originated from outside of Western Digital. Do not click on links or open attachments unless you recognize the sender and know that the content is safe.
Hi Senthil,
This report used the POSIX socket but not the URING socket implementation in SPDK.
And in the test we use nvme bdev, the uring_bdev (which using the kernel devices) are not included in the test report.
Best Regards,
Ziye Yang
-----Original Message-----
From: Senthil Kumar Veluswamy <Senthil.Kumar.Veluswamy(a)wdc.com>
Sent: Wednesday, March 10, 2021 3:56 PM
To: Storage Performance Development Kit <spdk(a)lists.01.org>
Subject: [SPDK] Query regarding SPDK NVMe-oF TCP performance.
Hi,
I’m looking at NVMe-oF TCP performance report for SPDKv20.10 from URL https://ci.spdk.io/download/performance-reports/SPDK_tcp_perf_report_2010....
Would like to know whether it was measured by enabling io_uring support at bdev layer?
As per v19.04 change log, it looks like io_uring was supported from that version onwards.
io_uring
A bdev module that issues I/O to kernel block devices using the new io_uring Linux kernel API was added. This module requires liburing.
Regards,
Senthil Kumar V.
_______________________________________________
SPDK mailing list -- spdk(a)lists.01.org
To unsubscribe send an email to spdk-leave(a)lists.01.org
_______________________________________________
SPDK mailing list -- spdk(a)lists.01.org
To unsubscribe send an email to spdk-leave(a)lists.01.org
1 year, 2 months
how to export NBD block device SPDK from one VM to Another VM
by omchavan6699@gmail.com
please can anybody tell me how to export nbd device
i created malloc device and
started NBD disk using
modprobe nbd
rpc.py nbd_start_disk Malloc0 /dev/nbd0
i want to access that nbd0 device from another VM like
VM1->/dev/nbd0
i want to access from VM2
how it can do
need to install NBD client and server??
1 year, 2 months
bdev architecture
by Rodriguez, Edwin
I've been implementing the NVMeOf KV protocol and have a question about implementing the KV list operation. Currently, I've implemented it as returning the same array of packed keys expected by the KV protocol, but it strikes me as tying bdev too closely to the NVME protocol.
A simple solution is to return one key for each list operation, then iteratively increment the key and pass it back to bdev to search for the next key. Downside is that the bdev implementation could be expensive to search for a key and that would have to be done for each and every key.
Another solution is to return a list or array which the controller iterates over to fill in the NVME list of keys, however this requires the controller to estimate how many keys will be needed to fill in the results buffer. Since keys are variable length and packed together that will pose a challenge.
And another solution would be to create bdev operations to iterate over the keys in the bdev, but that requires at least 3 operations - open, next and close and requires maintaining state somewhere, probably in the bdev_io itself.
What would be in keeping with the design philosphy of bdev? Keep it as is, returning an nvme structure of packed keys or something more abstract?
1 year, 2 months
NBD for SPDK bdevs
by omchavan6699@gmail.com
can anyone please tell me how to export bdev using nbd
i executed following command
rpc.py nbd_start_disk Malloc0 /dev/nbd0 (malloc0 already created using rpc command)
for exporting it we need to install nbd server and client?
or
SPDK provide client and server??
what are the steps?
1 year, 2 months
Installation of Spdk and running bdev command
by omchavan6699@gmail.com
I installed Spdk
git clone https://github.com/spdk/spdk
cd spdk
git submodule update --init
sudo scripts/pkgdep.sh --all
./configure
make
/test/unit/unittest.sh
But not able to run
RPC.py bdev_aio_create /dev/sda aio
It is not running
scripts/rpc.py bdev_aio_create /dev/sda aio ev/sda Traceback (most recent call last): File "/root/spdk/scripts/rpc/client.py", line 71, in connect
device self.sock.connect ( (addr, port)) socket.gaierror: [Errno -2] Name or service not known
mp/fil, During handling of the above exception, another exception occurred:
e deviceTraceback (most recent call last): File "scripts/rpc.py", line 2693, in <module>
odev_aid conn_retries=args.conn_retries) File "7root/spdk/scripts/rpc/client.py", line 47, in init
ioe
self. connect (addr, port)
File "/root/spdk/scripts/rpc/client.py", line 76, in _connect. "Error details: %s" (addr, ex))
rpc.client..JSONRPCException: Error while connecting to /var/tmp/spdk.sock ev Error details: [Errno -2] Name or service not known [root@d1560g9-12-vm20 spdk] #
ased on Open CAS Framework - a high performance block storage cachina meta-librar
3/
1 year, 2 months
Question on ABORT
by Su Hua
hi, in the local nvme scenario, if we enable timeout and set the timeout
processing as ABORT operation, is there any problem with the current
processing logic? For example, if there is a timeout req that requires
ABORT, and ABORT is successful, will these req requests dropped by ABORT be
lost, because the code does not feed these ABORT reqs to higher-level
users; the ABORT operation is only through qpair and CID information A new
req is constructed and submitted to the bottom layer. If the ABORT fails,
the reset operation will be performed, but the upper layer will not
perceive it after success.
Thanks!
1 year, 2 months
how to detect vhost connection down
by sheng qiu
Hi,
We are using virtio blk connecting with vhost blk to exchange io to the devices.
If the vhost process is crash, is there a way for the virtio blk
client to detect the event?
Thanks,
Sheng
1 year, 2 months
Performance impact with "enable_zerocopy_send"
by Charlie Li
Hello,
In SPDK 20.10, "enable_zerocopy_send" is set to "false" by default.
I tried to set "enable_zerocopy_send" to true, but noticed the performance
dropped.
Is this as expected? My understanding is that setting
"enable_zerocopy_send" to true should improve performance.
Thanks,
Charlie
1 year, 2 months