From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by dpdk.org (Postfix) with ESMTP id 95FA5C2FC for ; Tue, 26 May 2015 09:36:21 +0200 (CEST) Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga103.fm.intel.com with ESMTP; 26 May 2015 00:36:21 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.13,496,1427785200"; d="scan'208";a="576779421" Received: from shvmail01.sh.intel.com ([10.239.29.42]) by orsmga003.jf.intel.com with ESMTP; 26 May 2015 00:36:20 -0700 Received: from shecgisg003.sh.intel.com (shecgisg003.sh.intel.com [10.239.29.90]) by shvmail01.sh.intel.com with ESMTP id t4Q7aIMG027844; Tue, 26 May 2015 15:36:18 +0800 Received: from shecgisg003.sh.intel.com (localhost [127.0.0.1]) by shecgisg003.sh.intel.com (8.13.6/8.13.6/SuSE Linux 0.8) with ESMTP id t4Q7aGEx019472; Tue, 26 May 2015 15:36:18 +0800 Received: (from jingguox@localhost) by shecgisg003.sh.intel.com (8.13.6/8.13.6/Submit) id t4Q7aGXw019468; Tue, 26 May 2015 15:36:16 +0800 From: TangHaifeng To: dts@dpdk.org Date: Tue, 26 May 2015 15:35:39 +0800 Message-Id: <1432625755-19403-6-git-send-email-haifengx.tang@intel.com> X-Mailer: git-send-email 1.7.4.1 In-Reply-To: <1432625755-19403-1-git-send-email-haifengx.tang@intel.com> References: <1432625755-19403-1-git-send-email-haifengx.tang@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: jingguox.fu@intel.com Subject: [dts] =?utf-8?q?=5Bdts_12/28=5D_add_unit=5Ftest=5Fring_rst_file_i?= =?utf-8?q?nto_dts?= X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 26 May 2015 07:36:22 -0000 --- test_plans/unit_tests_ring_test_plan.rst | 123 ++++++++++++++++++++++++++++++ 1 files changed, 123 insertions(+), 0 deletions(-) create mode 100644 test_plans/unit_tests_ring_test_plan.rst diff --git a/test_plans/unit_tests_ring_test_plan.rst b/test_plans/unit_tests_ring_test_plan.rst new file mode 100644 index 0000000..9a0b2ed --- /dev/null +++ b/test_plans/unit_tests_ring_test_plan.rst @@ -0,0 +1,123 @@ +.. Copyright (c) <2010>, Intel Corporation + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + + - Neither the name of Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + OF THE POSSIBILITY OF SUCH DAMAGE. + +============== +Ring Autotests +============== + +This is the test plan for the IntelĀ® DPDK ring library. + +Description +=========== + +#. Basic tests (done on one core) + + - Using single producer/single consumer functions: + + - Enqueue one object, two objects, MAX_BULK objects + - Dequeue one object, two objects, MAX_BULK objects + - Check that dequeued pointers are correct + + - Using multi producers/multi consumers functions: + + - Enqueue one object, two objects, MAX_BULK objects + - Dequeue one object, two objects, MAX_BULK objects + - Check that dequeued pointers are correct + + - Test watermark and default bulk enqueue/dequeue: + + - Set watermark + - Set default bulk value + - Enqueue objects, check that -EDQUOT is returned when + watermark is exceeded + - Check that dequeued pointers are correct + +#. Check quota and watermark + + - Start a loop on another lcore that will enqueue and dequeue + objects in a ring. It will monitor the value of quota (default + bulk count) and watermark. + - At the same time, change the quota and the watermark on the + master lcore. + - The slave lcore will check that bulk count changes from 4 to + 8, and watermark changes from 16 to 32. + +#. Performance tests + + This test is done on the following configurations: + + - One core enqueuing, one core dequeuing + - One core enqueuing, other cores dequeuing + - One core dequeuing, other cores enqueuing + - Half of the cores enqueuing, the other half dequeuing + + When only one core enqueues/dequeues, the test is done with the + SP/SC functions in addition to the MP/MC functions. + + The test is done with different bulk size. + + On each core, the test enqueues or dequeues objects during + TIME_S seconds. The number of successes and failures are stored on + each core, then summed and displayed. + + The test checks that the number of enqueues is equal to the + number of dequeues. + +#. Change watermark and quota + + Use the command line to change the value of quota and + watermark. Then dump the status of ring to check that the values + are correctly updated in the ring structure. + +========================= +Ring Performance Autotest +========================= + +This is the test plan for the IntelĀ® DPDK LPM Method in IPv6. + +This section explains how to run the unit tests for LPM in IPv6.The test can be +launched independently using the command line interface. +This test is implemented as a linuxapp environment application. + +The complete test suite is launched automatically using a python-expect +script (launched using ``make test``) that sends commands to +the application and checks the results. A test report is displayed on +stdout. + +The steps to run the unit test manually are as follow:: + + # make -C ./app/test/ + # ./app/test/test -n 1 -c ffff + RTE>> ring_perf_autotest + + +The final output of the test has to be "Test OK" -- 1.7.4.4