From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by dpdk.org (Postfix) with ESMTP id E828C378B for ; Mon, 10 Sep 2018 14:52:06 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga105.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 10 Sep 2018 05:52:06 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.53,355,1531810800"; d="scan'208";a="88702598" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by fmsmga001.fm.intel.com with ESMTP; 10 Sep 2018 05:51:50 -0700 Received: from fmsmsx153.amr.corp.intel.com (10.18.125.6) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.319.2; Mon, 10 Sep 2018 05:51:50 -0700 Received: from fmsmsx117.amr.corp.intel.com ([169.254.3.210]) by FMSMSX153.amr.corp.intel.com ([169.254.9.7]) with mapi id 14.03.0319.002; Mon, 10 Sep 2018 05:51:50 -0700 From: "Wiles, Keith" To: Sofia Baran CC: "users@dpdk.org" Thread-Topic: [dpdk-users] dpdk and bulk data (video/audio) Thread-Index: AQHUSPmGDO1M6bvn60GrvvU1rbBTz6Tp7XmA Date: Mon, 10 Sep 2018 12:51:50 +0000 Message-ID: <73D04E54-F6CC-41C3-A622-744B88592AC5@intel.com> References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.254.188.247] Content-Type: text/plain; charset="us-ascii" Content-ID: <359199B259A46843B698F554FC31EC79@intel.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-users] dpdk and bulk data (video/audio) X-BeenThere: users@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK usage discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Sep 2018 12:52:07 -0000 > On Sep 10, 2018, at 6:28 AM, Sofia Baran wrote: >=20 >=20 > Hi All, >=20 > I want/try to us DPDK for transferring larger amount of data, e.g. video = frames which usually are stored within memory buffers with sizes of several= MB (remark: by using huges pages, these buffers could be physically contig= uous). >=20 > When looking at the DPDK documentation, library APIs and examples, I can'= t find a way/hint how to transfer larger buffers using DPDK without copying= the video buffer fragments to the payload sections of the mbufs - which re= sults in high CPU loads. >=20 > Within the ip_fragmentation example indirect mbufs are used, pointing to = the payload section of a direct mbuf (holding the header). But in my unders= tanding the maximum size of a mbuf payload is 65KB (uint16_t)!? It is true that mbufs only hold (64K - 1). The concept of mbufs is normally= an ethernet packet and they are limited to 64K. You can create a small mbuf (128 bytes) then set offset/data in the mbuf to= point to the video buffer only if you can find the physical memory address= for the data. The mbuf normally holds the physical address of the mbuf->da= ta not the attached buffer in this case. This of course means you have to m= anage the mbuf internal structure members yourself and be very careful you = do not rearrange the mbuf members as that can cause a performance problem. >=20 > I'm pretty new to DPDK so maybe I missed something. I hope that someone c= an provide me some hits how to avoid copying the entire payload. >=20 > Thanks > Sofia Baran >=20 >=20 Regards, Keith