From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id 8FD781EF76 for ; Wed, 13 Jun 2018 12:29:09 +0200 (CEST) X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 13 Jun 2018 03:29:09 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.51,218,1526367600"; d="scan'208";a="236778482" Received: from bricha3-mobl.ger.corp.intel.com ([10.237.221.107]) by fmsmga005.fm.intel.com with SMTP; 13 Jun 2018 03:29:06 -0700 Received: by (sSMTP sendmail emulation); Wed, 13 Jun 2018 11:29:05 +0100 Date: Wed, 13 Jun 2018 11:29:05 +0100 From: Bruce Richardson To: "Burakov, Anatoly" Cc: Thomas Monjalon , dev@dpdk.org, john.mcnamara@intel.com, reshma.pattan@intel.com, Jananee Parthasarathy Message-ID: <20180613102905.GB9784@bricha3-MOBL.ger.corp.intel.com> References: <8176896.7gnY6nVOUV@xps> <0191e8b6-1823-7004-2829-d8973e33a1ae@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <0191e8b6-1823-7004-2829-d8973e33a1ae@intel.com> Organization: Intel Research and Development Ireland Ltd. User-Agent: Mutt/1.10.0 (2018-05-17) Subject: Re: [dpdk-dev] [PATCH 0/7] Make unit tests great again X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Jun 2018 10:29:12 -0000 On Wed, Jun 13, 2018 at 09:38:32AM +0100, Burakov, Anatoly wrote: > On 12-Jun-18 2:07 PM, Thomas Monjalon wrote: > > +Cc Jananee > > > > 07/06/2018 23:01, Anatoly Burakov: > > > Previously, unit tests were running in groups. There were > > > technical reasons why that was the case (mostly having to do > > > with limiting memory), but it was hard to maintain and update > > > the autotest script. > > > > > > In 18.05, limiting of memory at DPDK startup was no longer > > > necessary, as DPDK allocates memory at runtime as needed. This > > > has the implication that the old test grouping can now be > > > retired and replaced with a more sensible way of running unit > > > tests (using multiprocessing pool of workers and a queue of > > > tests). This patchset accomplishes exactly that. > > > > > > This patchset conflicts with some of the earlier work on > > > autotests [1] [2] [3], but i think it presents a cleaner > > > solution for some of the problems highlighted by those patch > > > series. I can integrate those patches into this series if > > > need be. > > > > > > [1] http://dpdk.org/dev/patchwork/patch/40370/ > > > [2] http://dpdk.org/dev/patchwork/patch/40371/ > > > [3] http://dpdk.org/dev/patchwork/patch/40372/ > > > > It may be interesting to work on lists of tests as done > > in the following patch: > > http://dpdk.org/dev/patchwork/patch/40373/ > > > > The idea is to split tests in several categories: > > - basic and short test > > - longer and lower priority > > - performance test > > As a long term solution, we can think about making category an attribute > > inside the test itself? > > > > These test categories do not conflict with my patchset as they ultimately > rely on white/blacklisting, which will continue to work as before. > > In my view, it really boils down to two things - either tests can be run in > parallel with others (i.e. their result won't be affected by another > independent DPDK test app instance), or not. On top of that, we can use > blacklisting or whitelisting to define which tests will actually be run > (i.e. define any "categories" we want), but their (non-)parallelism must > always be respected to get good test results. > Have you looked at: http://mesonbuild.com/Unit-tests.html, at it would be good to transition away from our own custom script infrastructure for the tests. There is already some support for running the unit tests using "meson test", but it could do with some more cleanup e.g. to move the tests into suitable suites (corresponding to the categories Thomas has suggested). We could also do with specifying properly what tests are parallel-safe and what aren't.