From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mailout1.radware.com (mailout1.radware.com [192.115.180.130]) by dpdk.org (Postfix) with ESMTP id F3A678E5D for ; Tue, 13 Oct 2015 19:26:10 +0200 (CEST) Received: from ILMB2.corp.radware.com ([169.254.2.82]) by ILCAS2.corp.radware.com ([176.200.120.122]) with mapi id 14.03.0210.002; Tue, 13 Oct 2015 20:26:10 +0300 From: Nissim Nisimov To: "Richardson, Bruce" Thread-Topic: propose a solution for mapping same virtual address space to asymmetric processes Thread-Index: AdEFzCztSRUGD7HyT42FMoDDDi8OFgAAmIOgAANsMDY= Date: Tue, 13 Oct 2015 17:26:09 +0000 Message-ID: > References: <94AA676E9B9A384A844E7692F3CAD906C54F645D@ILMB2.corp.radware.com>, <59AF69C657FD0841A61C55336867B5B03595A760@IRSMSX103.ger.corp.intel.com> In-Reply-To: <59AF69C657FD0841A61C55336867B5B03595A760@IRSMSX103.ger.corp.intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Cc: "'dev@dpdk.org'" Subject: Re: [dpdk-dev] propose a solution for mapping same virtual address space to asymmetric processes X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 13 Oct 2015 17:26:11 -0000 Hi Bruce, Using "--base-virtaddr" requires knowledge on the huge pages wanted address= going to be used and might vary on different uses of the application. We suggest a more generic solution which wont require any previous knowledg= e and will be "bullet proof" as much as possible. Regards, Nissim On Oct 13, 2015 18:49, "Richardson, Bruce" wro= te: > -----Original Message----- > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Nissim Nisimov > Sent: Tuesday, October 13, 2015 4:40 PM > To: 'dev@dpdk.org' > Subject: [dpdk-dev] propose a solution for mapping same virtual address > space to asymmetric processes > > Hi all, > > The below will try to suggest a modification to the initialization of > Environment Abstraction Layer (AKA EAL) so it will be able to allocate > memory zones from same virtual memory addresses even if the primary > process is not similar to the secondary processes. > > Problem: > The DPDK Primary/Secondary model requires that the exact same hugepage > memory mappings be present in all applications. > An issue may occur when the Primary and secondary processes are not > symmetric in such way that the code has big differences (for example, > Primary process is a traffic distributer and secondary is a worker). > The result may be that specific virtual address region in the first > process won't be available in the second process. > > > Suggested solution: > Map all related rte and uio sections somewhere close to the end of huge > pages memory (that mean rte_eal_memory_init() should be called before > rte_config_init() in primary process) According to our observations there > will be more probability to success when allocating the above sections > after huge pages section (actually uio is already allocated after the hug= e > pages area) > > It solved our problem when trying to work with a primary traffic > distributer which is a very "light" process and few secondary worker > processes. > > > Please share your thoughts on this before I will try to commit our patch > for review > > Thanks, > Nissim Hi, out of interest, have you tried fixing the issue using the "--base-virtaddr= " EAL flag to hint a base address to the primary process? It was put into t= he code some time ago to help solve exactly this problem. /Bruce