From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============4460036366271525593==" MIME-Version: 1.0 From: Zhengyu Zhang Subject: Re: [SPDK] Problem with Blobstore when write 65MB continously Date: Wed, 10 Jan 2018 23:59:54 +0800 Message-ID: In-Reply-To: 82C9F782B054C94B9FC04A331649C77A9D492567@fmsmsx104.amr.corp.intel.com List-ID: To: spdk@lists.01.org --===============4460036366271525593== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Hi Paul Thanks for your reply! On 1/10/18 11:18 PM, Luse, Paul E wrote: > So what=E2=80=99s happening here is internally within Blobstore when > _spdk_blob_request_submit_op() tries to get a channel->req via > spdk_bs_batch_open() for a write (bear the end) it doesn=E2=80=99t have a= ny > available so returns NULL which results in a callback error of =E2=80=93E= NOMEM > to the hello_blob callback.=C2=A0 The default number of channel reqs is 5= 12 > and the hello_blob app doesn=E2=80=99t change that and uses a single chan= nel for > submitting the 520 back to back write requests that you are issuing and > this failure happens right there towards the end. > = So you are suggesting me to tune the number of channel reqs or using multiple channels if I want to write more? > = > Ben, if I crank up the max channel reqs this works OK.=C2=A0 I=E2=80=99m = thinking > this shouldn=E2=80=99t be needed and wondering why we aren=E2=80=99t plac= ing completed > channel reqs back on the list fast enough (if that=E2=80=99s the real pro= blem). > Something to do with this being a malloc backend maybe?=C2=A0 Would try > w/nvme but my dev system isn=E2=80=99t quite ready for prime time yet aft= er > reblasting it=E2=80=A6. > = > I tested on both malloc backend and an P3700 NVMe SSD. Their results are the same. Thanks! Zhengyu --===============4460036366271525593==--