From patchwork Tue Jan 17 16:50:11 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hernan Vargas X-Patchwork-Id: 122200 X-Patchwork-Delegate: maxime.coquelin@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 449A7423FE; Tue, 17 Jan 2023 17:50:31 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 03CDC400D4; Tue, 17 Jan 2023 17:50:27 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id D56EF400D4; Tue, 17 Jan 2023 17:50:24 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1673974225; x=1705510225; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=9GNg1tLdFnicFWHqkPheEgr/uWTKGtFjaJg6PABuFcM=; b=djc4ZYCvnDa0kiAnpv/5rVnw8T2nWbYEs+yFdH/JqkaUVRkLwU/qkWXZ ZlxyahUrWWqlDnnJWZVShxpzT67+lpzJLdKuFrmjPD7iVpe1OcAmxxLVo d0qvFVjYbZBtOSZmT8SMGVLHOUFao7xHQ3PYj66nHMZpg3tjWnFEkRnwd N57kRsNTeWMXWlzH6TSB7ah4o3+g7bZNlFd3BSC6D5JyqVyfyLtmUP4wU yFDYDTCtbNNK/Zx6D4yiluULNcT3r8MlJCmJNTDtv0kRkd77CKHeyFjqB WVmjmUQhg/go1ojJS/tNUnZ6Ztmy8s5GHSphJmUeNryywxc4NhDWGdlNt A==; X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="326022052" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="326022052" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jan 2023 08:50:23 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="833235086" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="833235086" Received: from unknown (HELO csl-npg-qt0.la.intel.com) ([10.233.181.103]) by orsmga005.jf.intel.com with ESMTP; 17 Jan 2023 08:50:22 -0800 From: Hernan Vargas To: dev@dpdk.org, maxime.coquelin@redhat.com, gakhil@marvell.com, trix@redhat.com Cc: nicolas.chautru@intel.com, qi.z.zhang@intel.com, Hernan Vargas , stable@dpdk.org Subject: [PATCH v1 01/13] test/bbdev: fix seg fault for non supported HARQ len Date: Tue, 17 Jan 2023 08:50:11 -0800 Message-Id: <20230117165023.20567-2-hernan.vargas@intel.com> X-Mailer: git-send-email 2.37.1 In-Reply-To: <20230117165023.20567-1-hernan.vargas@intel.com> References: <20230117165023.20567-1-hernan.vargas@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Catching a corner in bbdev-test (not in the actual PMD) when running some specific vectors which size are not supported by the PMD. Fixes: 335c11fd276 ("app/bbdev: support HARQ validation") Cc: stable@dpdk.org Signed-off-by: Hernan Vargas --- app/test-bbdev/test_bbdev_perf.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c index 3818b74c79..cc7b5481d6 100644 --- a/app/test-bbdev/test_bbdev_perf.c +++ b/app/test-bbdev/test_bbdev_perf.c @@ -84,7 +84,7 @@ /* Increment for next code block in external HARQ memory */ #define HARQ_INCR 32768 /* Headroom for filler LLRs insertion in HARQ buffer */ -#define FILLER_HEADROOM 1024 +#define FILLER_HEADROOM 2048 /* Constants from K0 computation from 3GPP 38.212 Table 5.4.2.1-2 */ #define N_ZC_1 66 /* N = 66 Zc for BG 1 */ #define N_ZC_2 50 /* N = 50 Zc for BG 2 */ @@ -2111,9 +2111,9 @@ validate_op_harq_chain(struct rte_bbdev_op_data *op, ops_ld->n_filler; if (data_len > deRmOutSize) data_len = deRmOutSize; - if (data_len > orig_op->segments[i].length) - data_len = orig_op->segments[i].length; } + if (data_len > orig_op->segments[i].length) + data_len = orig_op->segments[i].length; /* * HARQ output can have minor differences * due to integer representation and related scaling From patchwork Tue Jan 17 16:50:12 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hernan Vargas X-Patchwork-Id: 122201 X-Patchwork-Delegate: maxime.coquelin@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id EFFF1423FE; Tue, 17 Jan 2023 17:50:37 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 5970742D3D; Tue, 17 Jan 2023 17:50:28 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id 53436400EF for ; Tue, 17 Jan 2023 17:50:25 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1673974225; x=1705510225; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=fdJFRHBD5IJMVFsLjdxdhzJv1uoioJqkfRmrki+5cNc=; b=eY/PSPFwYwZQglIkhlu53Xzqhl6MXZkggHcBkan+HLje4cRoHpWckMvZ QbvjxrwYHgM42vwRZl90DpqaIcR6ZMToZuwtAHGbmiVrbRdRkYKyx0u2p DNffcy1xTnT0ASDvF+65YH3Rei4ffPALo4kggT52lKPJY+VjvFsNkyvvG R1oPv44yhpKEk9ltasvF1VFY7l3KGCz5q4gB/KuHvycwEpjCo1W8/uzD4 iSTfJxHixDWG4l5DBN12mU4nQb18Ut96SbcGKB+q177LByaCxoRvtMXJ6 YcNjvFccTLq3rO5x4f8cErgUw+4tOEZXpzTIb221FhrWft+FlIJ5Mu+nq g==; X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="326022056" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="326022056" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jan 2023 08:50:23 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="833235089" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="833235089" Received: from unknown (HELO csl-npg-qt0.la.intel.com) ([10.233.181.103]) by orsmga005.jf.intel.com with ESMTP; 17 Jan 2023 08:50:23 -0800 From: Hernan Vargas To: dev@dpdk.org, maxime.coquelin@redhat.com, gakhil@marvell.com, trix@redhat.com Cc: nicolas.chautru@intel.com, qi.z.zhang@intel.com, Hernan Vargas Subject: [PATCH v1 02/13] test/bbdev: refactor TB throughput report Date: Tue, 17 Jan 2023 08:50:12 -0800 Message-Id: <20230117165023.20567-3-hernan.vargas@intel.com> X-Mailer: git-send-email 2.37.1 In-Reply-To: <20230117165023.20567-1-hernan.vargas@intel.com> References: <20230117165023.20567-1-hernan.vargas@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Refactor calculation for tb_size. No functional impact. Signed-off-by: Hernan Vargas --- app/test-bbdev/test_bbdev_perf.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c index cc7b5481d6..1a8a6b9f82 100644 --- a/app/test-bbdev/test_bbdev_perf.c +++ b/app/test-bbdev/test_bbdev_perf.c @@ -2613,18 +2613,15 @@ calc_enc_TB_size(struct rte_bbdev_enc_op *op) static uint32_t calc_ldpc_enc_TB_size(struct rte_bbdev_enc_op *op) { - uint8_t i; - uint32_t c, r, tb_size = 0; + uint32_t tb_size = 0; uint16_t sys_cols = (op->ldpc_enc.basegraph == 1) ? 22 : 10; if (op->ldpc_enc.code_block_mode == RTE_BBDEV_CODE_BLOCK) { tb_size = sys_cols * op->ldpc_enc.z_c - op->ldpc_enc.n_filler; } else { - c = op->turbo_enc.tb_params.c; - r = op->turbo_enc.tb_params.r; - for (i = 0; i < c-r; i++) - tb_size += sys_cols * op->ldpc_enc.z_c - - op->ldpc_enc.n_filler; + tb_size = (sys_cols * op->ldpc_enc.z_c - op->ldpc_enc.n_filler) + * (op->ldpc_enc.tb_params.c - + op->ldpc_enc.tb_params.r); } return tb_size; } From patchwork Tue Jan 17 16:50:13 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hernan Vargas X-Patchwork-Id: 122202 X-Patchwork-Delegate: maxime.coquelin@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 241B9423FE; Tue, 17 Jan 2023 17:50:45 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 4410E42BD9; Tue, 17 Jan 2023 17:50:29 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id B2D89400D4 for ; Tue, 17 Jan 2023 17:50:25 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1673974225; x=1705510225; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=LYMJReGSbjlkU9fe6kJQYtsMSvKgN9cQxcWOdgWNKi4=; b=Y78UoeVNcSy4BF2hfdB8RW28UdTYqwqv/Nho+4zyEeWi/WygVw0a3PFE hfqw7Q09W2a7O6GU+vvvhujrpPkwGv6M5uIb9KXCz0YYR31HwBVvVxPjf GA4a4WNOLpvMMWMX4AzgfqPgcDzc8GbTNYLb0aRetvI/GbTiThgnQqshl 4urL88c7fAHTyB1fRoRpkfmzqz1r11hO88o9cqLXPhAx+g09W+RdPBPhq Atu5U6h5rmwq54BcMQpcLQC/+1X5SPsOGYXxQhRDoYYQIC9QEw2IAFEXD mHYxBoF+cKl2d9B/P2o7K40DvHpF61ciTB/9KMceGsp6EEcs/QSrTb/kc w==; X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="326022061" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="326022061" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jan 2023 08:50:25 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="833235093" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="833235093" Received: from unknown (HELO csl-npg-qt0.la.intel.com) ([10.233.181.103]) by orsmga005.jf.intel.com with ESMTP; 17 Jan 2023 08:50:23 -0800 From: Hernan Vargas To: dev@dpdk.org, maxime.coquelin@redhat.com, gakhil@marvell.com, trix@redhat.com Cc: nicolas.chautru@intel.com, qi.z.zhang@intel.com, Hernan Vargas Subject: [PATCH v1 03/13] test/bbdev: add timeout for latency tests Date: Tue, 17 Jan 2023 08:50:13 -0800 Message-Id: <20230117165023.20567-4-hernan.vargas@intel.com> X-Mailer: git-send-email 2.37.1 In-Reply-To: <20230117165023.20567-1-hernan.vargas@intel.com> References: <20230117165023.20567-1-hernan.vargas@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Add a timeout to force exit the latency tests in case dequeue never happens. Signed-off-by: Hernan Vargas --- app/test-bbdev/test_bbdev_perf.c | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c index 1a8a6b9f82..14fe76eb64 100644 --- a/app/test-bbdev/test_bbdev_perf.c +++ b/app/test-bbdev/test_bbdev_perf.c @@ -26,6 +26,7 @@ #define MAX_QUEUES RTE_MAX_LCORE #define TEST_REPETITIONS 100 +#define TIME_OUT_POLL 1e8 #define WAIT_OFFLOAD_US 1000 #ifdef RTE_BASEBAND_FPGA_LTE_FEC @@ -4544,6 +4545,7 @@ latency_test_ldpc_dec(struct rte_mempool *mempool, for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) { uint16_t enq = 0, deq = 0; + uint32_t time_out = 0; bool first_time = true; last_time = 0; @@ -4595,7 +4597,8 @@ latency_test_ldpc_dec(struct rte_mempool *mempool, last_time = rte_rdtsc_precise() - start_time; first_time = false; } - } while (unlikely(burst_sz != deq)); + time_out++; + } while ((burst_sz != deq) && (time_out < TIME_OUT_POLL)); *max_time = RTE_MAX(*max_time, last_time); *min_time = RTE_MIN(*min_time, last_time); @@ -4604,7 +4607,13 @@ latency_test_ldpc_dec(struct rte_mempool *mempool, if (extDdr) retrieve_harq_ddr(dev_id, queue_id, ops_enq, burst_sz); - if (test_vector.op_type != RTE_BBDEV_OP_NONE) { + if (burst_sz != deq) { + ret = TEST_FAILED; + dequeued = num_to_process; /* Force exit */ + struct rte_bbdev_info info; + rte_bbdev_info_get(dev_id, &info); + TEST_ASSERT_SUCCESS(ret, "Dequeue timeout!"); + } else if (test_vector.op_type != RTE_BBDEV_OP_NONE) { ret = validate_ldpc_dec_op(ops_deq, burst_sz, ref_op, vector_mask); TEST_ASSERT_SUCCESS(ret, "Validation failed!"); @@ -4630,6 +4639,7 @@ latency_test_enc(struct rte_mempool *mempool, for (i = 0, dequeued = 0; dequeued < num_to_process; ++i) { uint16_t enq = 0, deq = 0; + uint32_t time_out = 0; bool first_time = true; last_time = 0; @@ -4665,13 +4675,19 @@ latency_test_enc(struct rte_mempool *mempool, last_time += rte_rdtsc_precise() - start_time; first_time = false; } - } while (unlikely(burst_sz != deq)); + time_out++; + } while ((burst_sz != deq) && (time_out < TIME_OUT_POLL)); *max_time = RTE_MAX(*max_time, last_time); *min_time = RTE_MIN(*min_time, last_time); *total_time += last_time; - - if (test_vector.op_type != RTE_BBDEV_OP_NONE) { + if (burst_sz != deq) { + ret = TEST_FAILED; + dequeued = num_to_process; /* Force exit */ + struct rte_bbdev_info info; + rte_bbdev_info_get(dev_id, &info); + TEST_ASSERT_SUCCESS(ret, "Dequeue timeout!"); + } else if (test_vector.op_type != RTE_BBDEV_OP_NONE) { ret = validate_enc_op(ops_deq, burst_sz, ref_op); TEST_ASSERT_SUCCESS(ret, "Validation failed!"); } From patchwork Tue Jan 17 16:50:14 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hernan Vargas X-Patchwork-Id: 122203 X-Patchwork-Delegate: maxime.coquelin@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 9C25D423FE; Tue, 17 Jan 2023 17:50:51 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 30B6D42D45; Tue, 17 Jan 2023 17:50:30 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id 1307F4067E for ; Tue, 17 Jan 2023 17:50:25 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1673974226; x=1705510226; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=KTE09MVbNzgDBiAEzHww9yBVMWflFjNRbivjJHvwhgc=; b=FigEkzojx1/pIksW5EptLbo7tdKJ8DBUThNwGAEUf4jCp0jUzapZUSqw ouv2lnMWV5eBaUcGpvXiOy0zReQ6+1M/N/tjinkO03Sd1pV6/XJQrkDBL 9ndXMVWqRGmjBu2NBmOKN7y8xlw536XkrJYubkiR+Rgir+OJBWM6MVIB5 yhu13J2QbfKOux//tjgf4Hsr9iatwNJ49rCxeVsQJtqMd7QXbOWUuSy08 jXvBzWg036yLye+Ad5Vdo7LZaKdA6vm30VmEm/KSD0Yz2dTvxhyqKIOMv 5Ysw1AOxnzdfVovZa7SADyMZ5enOFnHCkpvQhqhiMa+FJqGLX7A9x/qK0 Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="326022064" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="326022064" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jan 2023 08:50:25 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="833235096" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="833235096" Received: from unknown (HELO csl-npg-qt0.la.intel.com) ([10.233.181.103]) by orsmga005.jf.intel.com with ESMTP; 17 Jan 2023 08:50:25 -0800 From: Hernan Vargas To: dev@dpdk.org, maxime.coquelin@redhat.com, gakhil@marvell.com, trix@redhat.com Cc: nicolas.chautru@intel.com, qi.z.zhang@intel.com, Hernan Vargas Subject: [PATCH v1 04/13] test/bbdev: early termination not explicit set Date: Tue, 17 Jan 2023 08:50:14 -0800 Message-Id: <20230117165023.20567-5-hernan.vargas@intel.com> X-Mailer: git-send-email 2.37.1 In-Reply-To: <20230117165023.20567-1-hernan.vargas@intel.com> References: <20230117165023.20567-1-hernan.vargas@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Early termination needs to be explicitly enabled. Signed-off-by: Hernan Vargas --- app/test-bbdev/test_bbdev_perf.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c index 14fe76eb64..12fa988da6 100644 --- a/app/test-bbdev/test_bbdev_perf.c +++ b/app/test-bbdev/test_bbdev_perf.c @@ -4463,7 +4463,7 @@ latency_test_dec(struct rte_mempool *mempool, struct test_buffers *bufs, struct rte_bbdev_dec_op *ref_op, int vector_mask, uint16_t dev_id, uint16_t queue_id, const uint16_t num_to_process, uint16_t burst_sz, - uint64_t *total_time, uint64_t *min_time, uint64_t *max_time) + uint64_t *total_time, uint64_t *min_time, uint64_t *max_time, bool disable_et) { int ret = TEST_SUCCESS; uint16_t i, j, dequeued; @@ -4481,6 +4481,13 @@ latency_test_dec(struct rte_mempool *mempool, ret = rte_bbdev_dec_op_alloc_bulk(mempool, ops_enq, burst_sz); TEST_ASSERT_SUCCESS(ret, "rte_bbdev_dec_op_alloc_bulk() failed"); + ref_op->turbo_dec.iter_max = get_iter_max(); + /* For validation tests we want to enable early termination */ + if (!disable_et && !check_bit(ref_op->turbo_dec.op_flags, + RTE_BBDEV_TURBO_EARLY_TERMINATION)) + ref_op->turbo_dec.op_flags |= + RTE_BBDEV_TURBO_EARLY_TERMINATION; + if (test_vector.op_type != RTE_BBDEV_OP_NONE) copy_reference_dec_op(ops_enq, burst_sz, dequeued, bufs->inputs, @@ -4873,7 +4880,7 @@ validation_latency_test(struct active_device *ad, iter = latency_test_dec(op_params->mp, bufs, op_params->ref_dec_op, op_params->vector_mask, ad->dev_id, queue_id, num_to_process, - burst_sz, &total_time, &min_time, &max_time); + burst_sz, &total_time, &min_time, &max_time, latency_flag); else if (op_type == RTE_BBDEV_OP_LDPC_ENC) iter = latency_test_ldpc_enc(op_params->mp, bufs, op_params->ref_enc_op, ad->dev_id, queue_id, From patchwork Tue Jan 17 16:50:15 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hernan Vargas X-Patchwork-Id: 122204 X-Patchwork-Delegate: maxime.coquelin@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 1231E423FE; Tue, 17 Jan 2023 17:50:59 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 1B38542D48; Tue, 17 Jan 2023 17:50:31 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id 7AB72400D4 for ; Tue, 17 Jan 2023 17:50:26 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1673974226; x=1705510226; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=Ivk0vMTHHtmZ+DjEy2Fb3ASH2iz5G7nQ6yxsYMcaLBk=; b=n/FjKgDCPAlze6aFSZVuTELO9v0kbT00cB3DNTm7+HpX4K2u+2wTJwNb GtvDOSvT3ooUJN/0qgc7ObDxJyCKapmi8aReyJpXFshYaSRk0j6j7Bl/3 UVOPS5uab6ETv9Wxb2EQa+29HLVO2McEeb7AAnQr1+GXd/EYbpV+X1a4a R6Gll3fNfi95a1UelJyvgOZtuVv+1oyMmykSm3KinZIDEMJ8ar1L2YFZg NXsM3WIX13chPruoOf45HIGZwvu2upugPvekflQ7C1Rzu22qd2dlcGlZM plFuwEi5w1sZg3ZzUJk2KnlJSOdb1s9cqXYxErDZUPnKZCgyckNBrY2gA g==; X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="326022068" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="326022068" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jan 2023 08:50:26 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="833235100" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="833235100" Received: from unknown (HELO csl-npg-qt0.la.intel.com) ([10.233.181.103]) by orsmga005.jf.intel.com with ESMTP; 17 Jan 2023 08:50:25 -0800 From: Hernan Vargas To: dev@dpdk.org, maxime.coquelin@redhat.com, gakhil@marvell.com, trix@redhat.com Cc: nicolas.chautru@intel.com, qi.z.zhang@intel.com, Hernan Vargas Subject: [PATCH v1 05/13] test/bbdev: report device status in bbdev-test Date: Tue, 17 Jan 2023 08:50:15 -0800 Message-Id: <20230117165023.20567-6-hernan.vargas@intel.com> X-Mailer: git-send-email 2.37.1 In-Reply-To: <20230117165023.20567-1-hernan.vargas@intel.com> References: <20230117165023.20567-1-hernan.vargas@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org No functional impact. Signed-off-by: Hernan Vargas Reviewed-by: Maxime Coquelin --- app/test-bbdev/test_bbdev_perf.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c index 12fa988da6..36ea399938 100644 --- a/app/test-bbdev/test_bbdev_perf.c +++ b/app/test-bbdev/test_bbdev_perf.c @@ -849,6 +849,8 @@ add_bbdev_dev(uint8_t dev_id, struct rte_bbdev_info *info, #endif /* Let's refresh this now this is configured */ rte_bbdev_info_get(dev_id, info); + if (info->drv.device_status == RTE_BBDEV_DEV_FATAL_ERR) + printf("Device Status %s\n", rte_bbdev_device_status_str(info->drv.device_status)); nb_queues = RTE_MIN(rte_lcore_count(), info->drv.max_num_queues); nb_queues = RTE_MIN(nb_queues, (unsigned int) MAX_QUEUES); From patchwork Tue Jan 17 16:50:16 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hernan Vargas X-Patchwork-Id: 122205 X-Patchwork-Delegate: maxime.coquelin@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 63A13423FE; Tue, 17 Jan 2023 17:51:05 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id ECDDB42D4E; Tue, 17 Jan 2023 17:50:31 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id BFAC24067E for ; Tue, 17 Jan 2023 17:50:26 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1673974227; x=1705510227; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=BslVWmnTK0q5pkJOGWEuILE/rcPZ3sGfj+3rVDYlmto=; b=LV9So/gGoKcJXzLYPgOtJwT+Wb2PDXReRSKe4hdYxwuN3eCKGn2cG8E7 xDboNVKRCIPsBCfcR+UqQPbxjpkp3rCV5cG1lugEdhaoyvX0fMmYKTGot IcGS1oMewdD3HRNAKvSi3n9XoI+Z2mkbDla0i8hJat81hFp0VNJbP6n4+ TA2UCeBLDvhogOkJgHmQTX7nfWoLjep833yCka2InVvM2sxEruvjg8ld/ GWwbtTcjqM06QsHQqyhTLKd7UIZPpQbZkRgz9cpZ+q8JLW1qzx9lu+nTv Xsz9vNmudbKzxzAkPgxwfOM4iYzy22wf+kS7SNj41I9mgSTvMukGQbOEY w==; X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="326022071" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="326022071" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jan 2023 08:50:26 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="833235103" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="833235103" Received: from unknown (HELO csl-npg-qt0.la.intel.com) ([10.233.181.103]) by orsmga005.jf.intel.com with ESMTP; 17 Jan 2023 08:50:26 -0800 From: Hernan Vargas To: dev@dpdk.org, maxime.coquelin@redhat.com, gakhil@marvell.com, trix@redhat.com Cc: nicolas.chautru@intel.com, qi.z.zhang@intel.com, Hernan Vargas Subject: [PATCH v1 06/13] test/bbdev: log capture from queue stop Date: Tue, 17 Jan 2023 08:50:16 -0800 Message-Id: <20230117165023.20567-7-hernan.vargas@intel.com> X-Mailer: git-send-email 2.37.1 In-Reply-To: <20230117165023.20567-1-hernan.vargas@intel.com> References: <20230117165023.20567-1-hernan.vargas@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Improve log capture in bbdev not requiring standard output. Signed-off-by: Hernan Vargas --- app/test-bbdev/test_bbdev_perf.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c index 36ea399938..ffb2de0604 100644 --- a/app/test-bbdev/test_bbdev_perf.c +++ b/app/test-bbdev/test_bbdev_perf.c @@ -889,6 +889,7 @@ add_bbdev_dev(uint8_t dev_id, struct rte_bbdev_info *info, ret = rte_bbdev_queue_configure(ad->dev_id, queue_id, &qconf); } + rte_bbdev_queue_start(ad->dev_id, queue_id); if (ret != 0) { printf("All queues on dev %u allocated: %u\n", dev_id, queue_id); @@ -897,8 +898,8 @@ add_bbdev_dev(uint8_t dev_id, struct rte_bbdev_info *info, ad->queue_ids[queue_id] = queue_id; } TEST_ASSERT(queue_id != 0, - "ERROR Failed to configure any queues on dev %u", - dev_id); + "ERROR Failed to configure any queues on dev %u\n" + "\tthe device may not support or have been configured", dev_id); ad->nb_queues = queue_id; set_avail_op(ad, op_type); @@ -3844,6 +3845,7 @@ throughput_pmd_lcore_ldpc_dec(void *arg) TEST_ASSERT_SUCCESS(ret, "Validation failed!"); } + rte_bbdev_queue_stop(tp->dev_id, queue_id); rte_bbdev_dec_op_free_bulk(ops_enq, num_ops); double tb_len_bits = calc_ldpc_dec_TB_size(ref_op); From patchwork Tue Jan 17 16:50:17 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hernan Vargas X-Patchwork-Id: 122207 X-Patchwork-Delegate: maxime.coquelin@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id CF675423FE; Tue, 17 Jan 2023 17:51:17 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id A8D9F42D5D; Tue, 17 Jan 2023 17:50:33 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id 369EF42D24 for ; Tue, 17 Jan 2023 17:50:27 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1673974227; x=1705510227; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=HTXsF0MIdTxSKzuyUje5aXX8GXUkOg+ZMKo7mJZJLS0=; b=SzpBEvW89BXEpNWv0Kh4KecKFV/NiUVgrBR3bYlF33cV76++6TRhjHYi Va7Mk41WbVZ+fMQvRuyhgbURT+1xIKh6A/b3uj3oXlAQKGJcya+Br4bno 9NgTkKswSty6H0myLTguBgJ36bmkFYlDYogvfn/lXpOR+9U5dMNY1fj62 fiNAmV7dGgLyC8qmvxMdDkWrPBwAeQSRodGpdb5ZpGCVtM6/esHK504lW Cn3xsFFWw87aE2hCfRYDWoWNR8LrUJHPiLzAFkakkYyRrSDhH1ca7IIlM XKlKlYtJ9hxl9Dy1MHg/WYgokfWun2HpeRYwV297T0+VmqRtmzXuvIHCZ w==; X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="326022076" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="326022076" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jan 2023 08:50:26 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="833235107" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="833235107" Received: from unknown (HELO csl-npg-qt0.la.intel.com) ([10.233.181.103]) by orsmga005.jf.intel.com with ESMTP; 17 Jan 2023 08:50:26 -0800 From: Hernan Vargas To: dev@dpdk.org, maxime.coquelin@redhat.com, gakhil@marvell.com, trix@redhat.com Cc: nicolas.chautru@intel.com, qi.z.zhang@intel.com, Hernan Vargas Subject: [PATCH v1 07/13] test/bbdev: add support for BLER for 4G Date: Tue, 17 Jan 2023 08:50:17 -0800 Message-Id: <20230117165023.20567-8-hernan.vargas@intel.com> X-Mailer: git-send-email 2.37.1 In-Reply-To: <20230117165023.20567-1-hernan.vargas@intel.com> References: <20230117165023.20567-1-hernan.vargas@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org New feature to add BLER support for 4G in bbdev-test. Signed-off-by: Hernan Vargas --- app/test-bbdev/test_bbdev_perf.c | 184 ++++++++++++++++++++++++++++++- 1 file changed, 183 insertions(+), 1 deletion(-) diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c index ffb2de0604..69b86cdeb1 100644 --- a/app/test-bbdev/test_bbdev_perf.c +++ b/app/test-bbdev/test_bbdev_perf.c @@ -1756,6 +1756,30 @@ gen_qm2_llr(int8_t *llrs, uint32_t j, double N0, double llr_max) llrs[j] = (int8_t) b; } +/* Simple LLR generation assuming AWGN and QPSK */ +static void +gen_turbo_llr(int8_t *llrs, uint32_t j, double N0, double llr_max) +{ + double b, b1, n; + double coeff = 2.0 * sqrt(N0); + + /* Ignore in vectors null LLRs not to be saturated */ + if (llrs[j] == 0) + return; + + /* Note don't change sign here */ + n = randn(j % 2); + b1 = ((llrs[j] > 0 ? 2.0 : -2.0) + + coeff * n) / N0; + b = b1 * (1 << 4); + b = round(b); + if (b > llr_max) + b = llr_max; + if (b < -llr_max) + b = -llr_max; + llrs[j] = (int8_t) b; +} + /* Generate LLR for a given SNR */ static void generate_llr_input(uint16_t n, struct rte_bbdev_op_data *inputs, @@ -1791,6 +1815,27 @@ generate_llr_input(uint16_t n, struct rte_bbdev_op_data *inputs, } } +/* Generate LLR for turbo decoder for a given SNR */ +static void +generate_turbo_llr_input(uint16_t n, struct rte_bbdev_op_data *inputs, + struct rte_bbdev_dec_op *ref_op) +{ + struct rte_mbuf *m; + uint32_t i, j, range; + double N0, llr_max; + + llr_max = 127; + range = ref_op->turbo_dec.input.length; + N0 = 1.0 / pow(10.0, get_snr() / 10.0); + + for (i = 0; i < n; ++i) { + m = inputs[i].data; + int8_t *llrs = rte_pktmbuf_mtod_offset(m, int8_t *, 0); + for (j = 0; j < range; ++j) + gen_turbo_llr(llrs, j, N0, llr_max); + } +} + static void copy_reference_ldpc_dec_op(struct rte_bbdev_dec_op **ops, unsigned int n, unsigned int start_idx, @@ -2301,6 +2346,31 @@ validate_ldpc_bler(struct rte_bbdev_dec_op **ops, const uint16_t n) return errors; } +/* Check Number of code blocks errors */ +static int +validate_turbo_bler(struct rte_bbdev_dec_op **ops, const uint16_t n) +{ + unsigned int i; + struct op_data_entries *hard_data_orig = + &test_vector.entries[DATA_HARD_OUTPUT]; + struct rte_bbdev_op_turbo_dec *ops_td; + struct rte_bbdev_op_data *hard_output; + int errors = 0; + struct rte_mbuf *m; + + for (i = 0; i < n; ++i) { + ops_td = &ops[i]->turbo_dec; + hard_output = &ops_td->hard_output; + m = hard_output->data; + if (memcmp(rte_pktmbuf_mtod_offset(m, uint32_t *, 0), + hard_data_orig->segments[0].addr, + hard_data_orig->segments[0].length)) + errors++; + } + return errors; +} + + static int validate_ldpc_dec_op(struct rte_bbdev_dec_op **ops, const uint16_t n, struct rte_bbdev_dec_op *ref_op, const int vector_mask) @@ -3736,6 +3806,114 @@ bler_pmd_lcore_ldpc_dec(void *arg) return TEST_SUCCESS; } + +static int +bler_pmd_lcore_turbo_dec(void *arg) +{ + struct thread_params *tp = arg; + uint16_t enq, deq; + uint64_t total_time = 0, start_time; + const uint16_t queue_id = tp->queue_id; + const uint16_t burst_sz = tp->op_params->burst_sz; + const uint16_t num_ops = tp->op_params->num_to_process; + struct rte_bbdev_dec_op *ops_enq[num_ops]; + struct rte_bbdev_dec_op *ops_deq[num_ops]; + struct rte_bbdev_dec_op *ref_op = tp->op_params->ref_dec_op; + struct test_buffers *bufs = NULL; + int i, j, ret; + struct rte_bbdev_info info; + uint16_t num_to_enq; + + TEST_ASSERT_SUCCESS((burst_sz > MAX_BURST), + "BURST_SIZE should be <= %u", MAX_BURST); + + rte_bbdev_info_get(tp->dev_id, &info); + + TEST_ASSERT_SUCCESS((num_ops > info.drv.queue_size_lim), + "NUM_OPS cannot exceed %u for this device", + info.drv.queue_size_lim); + + bufs = &tp->op_params->q_bufs[GET_SOCKET(info.socket_id)][queue_id]; + + rte_wait_until_equal_16(&tp->op_params->sync, SYNC_START, __ATOMIC_RELAXED); + + ret = rte_bbdev_dec_op_alloc_bulk(tp->op_params->mp, ops_enq, num_ops); + TEST_ASSERT_SUCCESS(ret, "Allocation failed for %d ops", num_ops); + + /* For BLER tests we need to enable early termination */ + if (!check_bit(ref_op->turbo_dec.op_flags, + RTE_BBDEV_TURBO_EARLY_TERMINATION)) + ref_op->turbo_dec.op_flags += + RTE_BBDEV_TURBO_EARLY_TERMINATION; + ref_op->turbo_dec.iter_max = get_iter_max(); + ref_op->turbo_dec.iter_count = ref_op->turbo_dec.iter_max; + + if (test_vector.op_type != RTE_BBDEV_OP_NONE) + copy_reference_dec_op(ops_enq, num_ops, 0, bufs->inputs, + bufs->hard_outputs, bufs->soft_outputs, + ref_op); + generate_turbo_llr_input(num_ops, bufs->inputs, ref_op); + + /* Set counter to validate the ordering */ + for (j = 0; j < num_ops; ++j) + ops_enq[j]->opaque_data = (void *)(uintptr_t)j; + + for (i = 0; i < 1; ++i) { /* Could add more iterations */ + for (j = 0; j < num_ops; ++j) { + mbuf_reset( + ops_enq[j]->turbo_dec.hard_output.data); + } + + start_time = rte_rdtsc_precise(); + + for (enq = 0, deq = 0; enq < num_ops;) { + num_to_enq = burst_sz; + + if (unlikely(num_ops - enq < num_to_enq)) + num_to_enq = num_ops - enq; + + enq += rte_bbdev_enqueue_dec_ops(tp->dev_id, + queue_id, &ops_enq[enq], num_to_enq); + + deq += rte_bbdev_dequeue_dec_ops(tp->dev_id, + queue_id, &ops_deq[deq], enq - deq); + } + + /* dequeue the remaining */ + while (deq < enq) { + deq += rte_bbdev_dequeue_dec_ops(tp->dev_id, + queue_id, &ops_deq[deq], enq - deq); + } + + total_time += rte_rdtsc_precise() - start_time; + } + + tp->iter_count = 0; + tp->iter_average = 0; + /* get the max of iter_count for all dequeued ops */ + for (i = 0; i < num_ops; ++i) { + tp->iter_count = RTE_MAX(ops_enq[i]->turbo_dec.iter_count, + tp->iter_count); + tp->iter_average += (double) ops_enq[i]->turbo_dec.iter_count; + } + + tp->iter_average /= num_ops; + tp->bler = (double) validate_turbo_bler(ops_deq, num_ops) / num_ops; + + rte_bbdev_dec_op_free_bulk(ops_enq, num_ops); + + double tb_len_bits = calc_dec_TB_size(ref_op); + tp->ops_per_sec = ((double)num_ops * 1) / + ((double)total_time / (double)rte_get_tsc_hz()); + tp->mbps = (((double)(num_ops * 1 * tb_len_bits)) / + 1000000.0) / ((double)total_time / + (double)rte_get_tsc_hz()); + printf("TBS %.0f Time %.0f\n", tb_len_bits, 1000000.0 * + ((double)total_time / (double)rte_get_tsc_hz())); + + return TEST_SUCCESS; +} + static int throughput_pmd_lcore_ldpc_dec(void *arg) { @@ -4193,7 +4371,7 @@ print_dec_bler(struct thread_params *t_params, unsigned int used_cores) total_bler /= used_cores; total_iter /= used_cores; - printf("SNR %.2f BLER %.1f %% - Iterations %.1f %d - Tp %.1f Mbps %s\n", + printf("SNR %.2f BLER %.1f %% - Iterations %.1f %d - Tp %.3f Mbps %s\n", snr, total_bler * 100, total_iter, get_iter_max(), total_mbps, get_vector_filename()); } @@ -4245,6 +4423,10 @@ bler_test(struct active_device *ad, && !check_bit(test_vector.ldpc_dec.op_flags, RTE_BBDEV_LDPC_LLR_COMPRESSION)) bler_function = bler_pmd_lcore_ldpc_dec; + else if ((test_vector.op_type == RTE_BBDEV_OP_TURBO_DEC) && + !check_bit(test_vector.turbo_dec.op_flags, + RTE_BBDEV_TURBO_SOFT_OUTPUT)) + bler_function = bler_pmd_lcore_turbo_dec; else return TEST_SKIPPED; From patchwork Tue Jan 17 16:50:18 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hernan Vargas X-Patchwork-Id: 122206 X-Patchwork-Delegate: maxime.coquelin@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 86458423FE; Tue, 17 Jan 2023 17:51:11 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id C64F942D54; Tue, 17 Jan 2023 17:50:32 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id 8B89842D2D for ; Tue, 17 Jan 2023 17:50:27 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1673974227; x=1705510227; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=2nDS9VEK4C/Vca3wK1g46xCR7T/x2YtMpT77i1+zHBI=; b=DNmXAYwFyQFqE+QqaEbwzP7dk9N1zN21jCXL3wbAb0DvaFTrgz7O+LyY qpPLUtzg79lIjGs4R2qo4ML9ZgGlqbSCPie9ygUXcFvaAhHke6JJw2iAv 5S1tJRYz0hwavSJt9KiBR/lUmQyjoxjDpPysf9afS9BFaRaUrTEZdyPYJ s0l5vGoK/KXRCL9X3u7TdwICVZVRUQESpbkeExnJQdNlRtJpei2KrnEyo yMOM8C/jUyJdoSk4ft6rRgdmeOsYMyZp5tou+Y1PxakKkiWQeVDDt0d3Y RF+kt6qlV7k3c0o38zDtF6nDnEYYCh0+O6MfrEI1ncdU67ZMTeHym6iIb g==; X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="326022080" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="326022080" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jan 2023 08:50:27 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="833235110" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="833235110" Received: from unknown (HELO csl-npg-qt0.la.intel.com) ([10.233.181.103]) by orsmga005.jf.intel.com with ESMTP; 17 Jan 2023 08:50:26 -0800 From: Hernan Vargas To: dev@dpdk.org, maxime.coquelin@redhat.com, gakhil@marvell.com, trix@redhat.com Cc: nicolas.chautru@intel.com, qi.z.zhang@intel.com, Hernan Vargas Subject: [PATCH v1 08/13] test/bbdev: extend support for large TB Date: Tue, 17 Jan 2023 08:50:18 -0800 Message-Id: <20230117165023.20567-9-hernan.vargas@intel.com> X-Mailer: git-send-email 2.37.1 In-Reply-To: <20230117165023.20567-1-hernan.vargas@intel.com> References: <20230117165023.20567-1-hernan.vargas@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Add support for large TB when it cannot fit into a true mbuf. Signed-off-by: Hernan Vargas --- app/test-bbdev/test_bbdev_perf.c | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c index 69b86cdeb1..fdf7a28ba2 100644 --- a/app/test-bbdev/test_bbdev_perf.c +++ b/app/test-bbdev/test_bbdev_perf.c @@ -1072,8 +1072,6 @@ init_op_data_objs(struct rte_bbdev_op_data *bufs, * Special case when DPDK mbuf cannot handle * the required input size */ - printf("Warning: Larger input size than DPDK mbuf %d\n", - seg->length); large_input = true; } bufs[i].data = m_head; @@ -2030,6 +2028,7 @@ validate_op_chain(struct rte_bbdev_op_data *op, struct rte_mbuf *m = op->data; uint8_t nb_dst_segments = orig_op->nb_segments; uint32_t total_data_size = 0; + bool ignore_mbuf = false; /* ignore mbuf limitations */ TEST_ASSERT(nb_dst_segments == m->nb_segs, "Number of segments differ in original (%u) and filled (%u) op", @@ -2042,21 +2041,25 @@ validate_op_chain(struct rte_bbdev_op_data *op, uint16_t data_len = rte_pktmbuf_data_len(m) - offset; total_data_size += orig_op->segments[i].length; - TEST_ASSERT(orig_op->segments[i].length == data_len, - "Length of segment differ in original (%u) and filled (%u) op", - orig_op->segments[i].length, data_len); + if (orig_op->segments[i].length > RTE_BBDEV_LDPC_E_MAX_MBUF) + ignore_mbuf = true; + if (!ignore_mbuf) + TEST_ASSERT(orig_op->segments[i].length == data_len, + "Length of segment differ in original (%u) and filled (%u) op", + orig_op->segments[i].length, data_len); TEST_ASSERT_BUFFERS_ARE_EQUAL(orig_op->segments[i].addr, rte_pktmbuf_mtod_offset(m, uint32_t *, offset), - data_len, + orig_op->segments[i].length, "Output buffers (CB=%u) are not equal", i); m = m->next; } /* Validate total mbuf pkt length */ uint32_t pkt_len = rte_pktmbuf_pkt_len(op->data) - op->offset; - TEST_ASSERT(total_data_size == pkt_len, - "Length of data differ in original (%u) and filled (%u) op", - total_data_size, pkt_len); + if (!ignore_mbuf) + TEST_ASSERT(total_data_size == pkt_len, + "Length of data differ in original (%u) and filled (%u) op", + total_data_size, pkt_len); return TEST_SUCCESS; } From patchwork Tue Jan 17 16:50:19 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hernan Vargas X-Patchwork-Id: 122208 X-Patchwork-Delegate: maxime.coquelin@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 37857423FE; Tue, 17 Jan 2023 17:51:24 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 8383242D65; Tue, 17 Jan 2023 17:50:34 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id 57C7142D3C for ; Tue, 17 Jan 2023 17:50:28 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1673974228; x=1705510228; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=QCR/XHakl8DHkB26GzG3wtUnmw164lvjsl+Ce6PTVbk=; b=IL5U7FO7tediUJmtqIUxNU+b/mkD4A3j0vkEBXP1OgyPU61daN+YGYe0 1eP0Rqpz2KT0DP9vM1qFQPacXyOQnC3QGDlQle5CJ+AzyEfFY/0Rlg1E8 imMXNpcPw1eHSoBOXQy2oD6ODcMQ/U2od+mBgkp6OABOuWJ6Ornahp/hW fdiq+84frfbmzp74l0lS3/8gCl1TPtpV08NEqmxeNlzXI5giz9OkdcsYM XG7zDx19ZnMfnsOQA6+MVXUmxw6T91lbA+6whemMl0lo75Ktgk248Jwlc v9mqkeTyCyMcoBgkYnvHaoRsP0XtH3XQwUjg9NuwN/jdiNXe/KTlWGAj5 A==; X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="326022085" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="326022085" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jan 2023 08:50:27 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="833235113" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="833235113" Received: from unknown (HELO csl-npg-qt0.la.intel.com) ([10.233.181.103]) by orsmga005.jf.intel.com with ESMTP; 17 Jan 2023 08:50:27 -0800 From: Hernan Vargas To: dev@dpdk.org, maxime.coquelin@redhat.com, gakhil@marvell.com, trix@redhat.com Cc: nicolas.chautru@intel.com, qi.z.zhang@intel.com, Hernan Vargas Subject: [PATCH v1 09/13] test/bbdev: bbdev-test cannot compare some scenarios Date: Tue, 17 Jan 2023 08:50:19 -0800 Message-Id: <20230117165023.20567-10-hernan.vargas@intel.com> X-Mailer: git-send-email 2.37.1 In-Reply-To: <20230117165023.20567-1-hernan.vargas@intel.com> References: <20230117165023.20567-1-hernan.vargas@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Updating logic for compression usecases. Signed-off-by: Hernan Vargas --- app/test-bbdev/test_bbdev_perf.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c index fdf7a28ba2..3b2578baf6 100644 --- a/app/test-bbdev/test_bbdev_perf.c +++ b/app/test-bbdev/test_bbdev_perf.c @@ -2143,12 +2143,17 @@ validate_op_harq_chain(struct rte_bbdev_op_data *op, total_data_size += orig_op->segments[i].length; TEST_ASSERT(orig_op->segments[i].length < - (uint32_t)(data_len + 64), + (uint32_t)(data_len + 256), "Length of segment differ in original (%u) and filled (%u) op", orig_op->segments[i].length, data_len); harq_orig = (int8_t *) orig_op->segments[i].addr; harq_out = rte_pktmbuf_mtod_offset(m, int8_t *, offset); + /* Cannot compare HARQ output data for such cases */ + if ((ldpc_llr_decimals > 1) && ((ops_ld->op_flags & RTE_BBDEV_LDPC_LLR_COMPRESSION) + || (ops_ld->op_flags & RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION))) + break; + if (!(ldpc_cap_flags & RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_FILLERS ) || (ops_ld->op_flags & @@ -2224,7 +2229,7 @@ validate_op_harq_chain(struct rte_bbdev_op_data *op, /* Validate total mbuf pkt length */ uint32_t pkt_len = rte_pktmbuf_pkt_len(op->data) - op->offset; - TEST_ASSERT(total_data_size < pkt_len + 64, + TEST_ASSERT(total_data_size < pkt_len + 256, "Length of data differ in original (%u) and filled (%u) op", total_data_size, pkt_len); From patchwork Tue Jan 17 16:50:20 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hernan Vargas X-Patchwork-Id: 122209 X-Patchwork-Delegate: maxime.coquelin@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 40116423FE; Tue, 17 Jan 2023 17:51:33 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id A711942D72; Tue, 17 Jan 2023 17:50:35 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id 8994A42D24 for ; Tue, 17 Jan 2023 17:50:28 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1673974229; x=1705510229; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=pL6XndY79psfgXth5ExPXaYEMkrZyu48b0v2mjjVSO8=; b=iMG2XGK62ki5YzgbJoS6atSUNCMzyEH7XgGSBUJL7/PxNJkiOLTbqcHH NJofVFQXKVOyO6MBj6Q7D0ArC7POtgSlf5fQqKbKIXpcwiakBb22+iVg6 cJH353hWd5SYnJ8iGhhmVcAyIImZjpT92WBGOyFKnTr1zsLqlRXkTmkUl ZUSb1GPE7zxT4wLIEUaLa3ZupCV360IpxkpV+e6Q2jCliPLKTSTc9iTqj 8D0rdng15iw2CXGeUl/UEKmaWJ6ljAOkKmROKyd/Sul1i4BWyabrw1AyI y+Q6J56DJLBuPBKq2kcphTjBD+8Tq07fOxJ+gQm1F+23drCXI6ux9xetI A==; X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="326022088" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="326022088" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jan 2023 08:50:27 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="833235116" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="833235116" Received: from unknown (HELO csl-npg-qt0.la.intel.com) ([10.233.181.103]) by orsmga005.jf.intel.com with ESMTP; 17 Jan 2023 08:50:27 -0800 From: Hernan Vargas To: dev@dpdk.org, maxime.coquelin@redhat.com, gakhil@marvell.com, trix@redhat.com Cc: nicolas.chautru@intel.com, qi.z.zhang@intel.com, Hernan Vargas Subject: [PATCH v1 10/13] test/bbdev: adjustment for soft output Date: Tue, 17 Jan 2023 08:50:20 -0800 Message-Id: <20230117165023.20567-11-hernan.vargas@intel.com> X-Mailer: git-send-email 2.37.1 In-Reply-To: <20230117165023.20567-1-hernan.vargas@intel.com> References: <20230117165023.20567-1-hernan.vargas@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Extend bbdev-test for soft output check, notably due to the logic in bbdev-test to enable termination changing. Signed-off-by: Hernan Vargas --- app/test-bbdev/test_bbdev_perf.c | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c index 3b2578baf6..1d18d9e054 100644 --- a/app/test-bbdev/test_bbdev_perf.c +++ b/app/test-bbdev/test_bbdev_perf.c @@ -1348,6 +1348,7 @@ fill_queue_buffers(struct test_op_params *op_params, RTE_BBDEV_LDPC_LLR_COMPRESSION; bool harq_comp = op_params->ref_dec_op->ldpc_dec.op_flags & RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION; + ldpc_llr_decimals = capabilities->cap.ldpc_dec.llr_decimals; ldpc_llr_size = capabilities->cap.ldpc_dec.llr_size; ldpc_cap_flags = capabilities->cap.ldpc_dec.capability_flags; @@ -2425,7 +2426,7 @@ validate_ldpc_dec_op(struct rte_bbdev_dec_op **ops, const uint16_t n, i); if (ref_op->ldpc_dec.op_flags & RTE_BBDEV_LDPC_SOFT_OUT_ENABLE) - TEST_ASSERT_SUCCESS(validate_op_chain(soft_output, + TEST_ASSERT_SUCCESS(validate_op_so_chain(soft_output, soft_data_orig), "Soft output buffers (CB=%u) are not equal", i); @@ -2495,7 +2496,6 @@ validate_ldpc_enc_op(struct rte_bbdev_enc_op **ops, const uint16_t n, return TEST_SUCCESS; } - static inline int validate_op_fft_chain(struct rte_bbdev_op_data *op, struct op_data_entries *orig_op) { @@ -3185,11 +3185,11 @@ throughput_intr_lcore_ldpc_dec(void *arg) for (j = 0; j < TEST_REPETITIONS; ++j) { for (i = 0; i < num_to_process; ++i) { if (!loopback) - rte_pktmbuf_reset( - ops[i]->ldpc_dec.hard_output.data); + rte_pktmbuf_reset(ops[i]->ldpc_dec.hard_output.data); if (hc_out || loopback) - mbuf_reset( - ops[i]->ldpc_dec.harq_combined_output.data); + mbuf_reset(ops[i]->ldpc_dec.harq_combined_output.data); + if (ops[i]->ldpc_dec.soft_output.data != NULL) + rte_pktmbuf_reset(ops[i]->ldpc_dec.soft_output.data); } tp->start_time = rte_rdtsc_precise(); @@ -3284,7 +3284,6 @@ throughput_intr_lcore_dec(void *arg) rte_pktmbuf_reset(ops[i]->turbo_dec.soft_output.data); } - tp->start_time = rte_rdtsc_precise(); for (enqueued = 0; enqueued < num_to_process;) { num_to_enq = burst_sz; @@ -3746,10 +3745,11 @@ bler_pmd_lcore_ldpc_dec(void *arg) for (i = 0; i < 1; ++i) { /* Could add more iterations */ for (j = 0; j < num_ops; ++j) { if (!loopback) - mbuf_reset( - ops_enq[j]->ldpc_dec.hard_output.data); + mbuf_reset(ops_enq[j]->ldpc_dec.hard_output.data); if (hc_out || loopback) mbuf_reset(ops_enq[j]->ldpc_dec.harq_combined_output.data); + if (ops_enq[j]->ldpc_dec.soft_output.data != NULL) + mbuf_reset(ops_enq[j]->ldpc_dec.soft_output.data); } if (extDdr) preload_harq_ddr(tp->dev_id, queue_id, ops_enq, @@ -3981,11 +3981,11 @@ throughput_pmd_lcore_ldpc_dec(void *arg) for (i = 0; i < TEST_REPETITIONS; ++i) { for (j = 0; j < num_ops; ++j) { if (!loopback) - mbuf_reset( - ops_enq[j]->ldpc_dec.hard_output.data); + mbuf_reset(ops_enq[j]->ldpc_dec.hard_output.data); if (hc_out || loopback) - mbuf_reset( - ops_enq[j]->ldpc_dec.harq_combined_output.data); + mbuf_reset(ops_enq[j]->ldpc_dec.harq_combined_output.data); + if (ops_enq[j]->ldpc_dec.soft_output.data != NULL) + mbuf_reset(ops_enq[j]->ldpc_dec.soft_output.data); } if (extDdr) preload_harq_ddr(tp->dev_id, queue_id, ops_enq, From patchwork Tue Jan 17 16:50:21 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hernan Vargas X-Patchwork-Id: 122210 X-Patchwork-Delegate: maxime.coquelin@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 5DFAA423FE; Tue, 17 Jan 2023 17:51:40 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 7B58742D4D; Tue, 17 Jan 2023 17:50:36 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id B893942D2D for ; Tue, 17 Jan 2023 17:50:28 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1673974229; x=1705510229; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=o9R5C/dgXrE4QcKl9dHEbFJRgWHqpGikvDFe+MFNUUg=; b=W+VE7vgrdjENhzVYl8doX/KeVpTOKCGgG59xN+dk3hWUv2RNIxXIhNcD OKQDiEtfARrBaiUMTWCIBF/oYHB0Cds6chY6qK4kenoG152cnBdLd2dT4 1fWT9AK+MNZQZjcn+2TmmwaVy+ItbMayEmGSKdkdXtayxGkVBKb2eAkqC AytNKURcIeVc1dbBOTevLKaI24MOI76orfHezCSR3p2idmWQp2usZmthY eQqtzDjQeZn9cEKzwfIYn5StF9d+hBNKSe3exoHx4XKKRJfPzudxuGgv5 vqngM+ar8DejEyhOPJUnXoju/aDm+Be7jlto1oPOSdMix2zPdgVef3iD6 Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="326022092" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="326022092" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jan 2023 08:50:28 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="833235119" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="833235119" Received: from unknown (HELO csl-npg-qt0.la.intel.com) ([10.233.181.103]) by orsmga005.jf.intel.com with ESMTP; 17 Jan 2023 08:50:27 -0800 From: Hernan Vargas To: dev@dpdk.org, maxime.coquelin@redhat.com, gakhil@marvell.com, trix@redhat.com Cc: nicolas.chautru@intel.com, qi.z.zhang@intel.com, Hernan Vargas Subject: [PATCH v1 11/13] test/bbdev: expose warning counters Date: Tue, 17 Jan 2023 08:50:21 -0800 Message-Id: <20230117165023.20567-12-hernan.vargas@intel.com> X-Mailer: git-send-email 2.37.1 In-Reply-To: <20230117165023.20567-1-hernan.vargas@intel.com> References: <20230117165023.20567-1-hernan.vargas@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Print warnings reported on queues for offload test. No functional impact. Signed-off-by: Hernan Vargas Reviewed-by: Maxime Coquelin --- app/test-bbdev/test_bbdev_perf.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c index 1d18d9e054..0930786fda 100644 --- a/app/test-bbdev/test_bbdev_perf.c +++ b/app/test-bbdev/test_bbdev_perf.c @@ -5679,6 +5679,9 @@ offload_cost_test(struct active_device *ad, struct rte_bbdev_stats stats = {0}; get_bbdev_queue_stats(ad->dev_id, queue_id, &stats); + if (stats.enqueue_warn_count > 0) + printf("Warning reported on the queue : %10"PRIu64"\n", + stats.enqueue_warn_count); if (op_type != RTE_BBDEV_OP_LDPC_DEC) { TEST_ASSERT_SUCCESS(stats.enqueued_count != num_to_process, "Mismatch in enqueue count %10"PRIu64" %d", From patchwork Tue Jan 17 16:50:22 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hernan Vargas X-Patchwork-Id: 122211 X-Patchwork-Delegate: maxime.coquelin@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 49318423FE; Tue, 17 Jan 2023 17:51:47 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 6CE0842D7D; Tue, 17 Jan 2023 17:50:37 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id 4F64A42D42 for ; Tue, 17 Jan 2023 17:50:29 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1673974229; x=1705510229; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=Lw9fsc413rkCQlbOa2jSKB8NrynPHm9GoFVleYQGdUc=; b=E7itj/dHs/YFmHFeqSMijhIWFotDtl5UT/Lt4kDv1P6I9ZXkz5YMybIq ms3vctflpPk1H0LxKJzUKvMKZjqzGpwld03/8uznxB+FwKJUMduRH59Qe g+/R/xZWmNriUWxKI7G3e5/OwrjSzjSg+3ez/JwqEkjc2Mxx6TYtcYxzv V7Jc1zCXp/PBjRp/enCecepHr+ZJKqgtYR2KNj1LuSg6PXdzlNnga3kqH 4XoriflLf+SqTLyeRdoImNA844XKr0q8A3hWPVTf1T30VrAj0cWoDp8xd DcF0CvF7ONzZdBVVbt1z5G0fsxxzJBbwjzM0RvBxQ85dS2IogVrSWaiFJ Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="326022097" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="326022097" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jan 2023 08:50:28 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="833235122" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="833235122" Received: from unknown (HELO csl-npg-qt0.la.intel.com) ([10.233.181.103]) by orsmga005.jf.intel.com with ESMTP; 17 Jan 2023 08:50:28 -0800 From: Hernan Vargas To: dev@dpdk.org, maxime.coquelin@redhat.com, gakhil@marvell.com, trix@redhat.com Cc: nicolas.chautru@intel.com, qi.z.zhang@intel.com, Hernan Vargas Subject: [PATCH v1 12/13] test/bbdev: remove check for invalid opaque data Date: Tue, 17 Jan 2023 08:50:22 -0800 Message-Id: <20230117165023.20567-13-hernan.vargas@intel.com> X-Mailer: git-send-email 2.37.1 In-Reply-To: <20230117165023.20567-1-hernan.vargas@intel.com> References: <20230117165023.20567-1-hernan.vargas@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Assert also if the opaque date is invalid. Signed-off-by: Hernan Vargas --- app/test-bbdev/test_bbdev_perf.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c index 0930786fda..81bf2c8b60 100644 --- a/app/test-bbdev/test_bbdev_perf.c +++ b/app/test-bbdev/test_bbdev_perf.c @@ -79,7 +79,6 @@ #define SYNC_WAIT 0 #define SYNC_START 1 -#define INVALID_OPAQUE -1 #define INVALID_QUEUE_ID -1 /* Increment for next code block in external HARQ memory */ @@ -1998,10 +1997,9 @@ check_enc_status_and_ordering(struct rte_bbdev_enc_op *op, "op_status (%d) != expected_status (%d)", op->status, expected_status); - if (op->opaque_data != (void *)(uintptr_t)INVALID_OPAQUE) - TEST_ASSERT((void *)(uintptr_t)order_idx == op->opaque_data, - "Ordering error, expected %p, got %p", - (void *)(uintptr_t)order_idx, op->opaque_data); + TEST_ASSERT((void *)(uintptr_t)order_idx == op->opaque_data, + "Ordering error, expected %p, got %p", + (void *)(uintptr_t)order_idx, op->opaque_data); return TEST_SUCCESS; } From patchwork Tue Jan 17 16:50:23 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hernan Vargas X-Patchwork-Id: 122212 X-Patchwork-Delegate: maxime.coquelin@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id A6CFE423FE; Tue, 17 Jan 2023 17:51:53 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 3ADD242D84; Tue, 17 Jan 2023 17:50:38 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id 7A15C42D24 for ; Tue, 17 Jan 2023 17:50:29 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1673974229; x=1705510229; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=2YjlIG2IBORejciazXV52lhg372OPHJEIwb8QwAEyns=; b=bASQk2nbK/8fQp6d+Jxg4C43fRC8pvUVdeQ4P8qqa+nOxbBgWtyJFMQr Un2BEMaq+seGad9Kvbe2aR33eH0qKFbBtxv4FhOzo8PrJtXcs1TlbGdTN PwFVLQZdQQKXdTiKQ5wfhAHAS5QE+LyBtcsrOQ2nDVmB/r6R6wZcw7/pz byxzV7o1bwz0CacqvsHCG2IWQXuuifwKQgCDRUjpkxwYCREASFDUsBKNj Sgz1goUGGrut7K1tNKm6rxsM4UI8mZThl+5o9ypFXk39IXjNg2GgwzEFG 3VXz8fQit3CoFoNTEsJUaL4Xp1TgmX8f/WtVL9WCNtBc+KXi+DsSlxcz4 Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="326022100" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="326022100" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jan 2023 08:50:29 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10592"; a="833235125" X-IronPort-AV: E=Sophos;i="5.97,224,1669104000"; d="scan'208";a="833235125" Received: from unknown (HELO csl-npg-qt0.la.intel.com) ([10.233.181.103]) by orsmga005.jf.intel.com with ESMTP; 17 Jan 2023 08:50:28 -0800 From: Hernan Vargas To: dev@dpdk.org, maxime.coquelin@redhat.com, gakhil@marvell.com, trix@redhat.com Cc: nicolas.chautru@intel.com, qi.z.zhang@intel.com, Hernan Vargas Subject: [PATCH v1 13/13] test/bbdev: remove iteration count check Date: Tue, 17 Jan 2023 08:50:23 -0800 Message-Id: <20230117165023.20567-14-hernan.vargas@intel.com> X-Mailer: git-send-email 2.37.1 In-Reply-To: <20230117165023.20567-1-hernan.vargas@intel.com> References: <20230117165023.20567-1-hernan.vargas@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org To make the test compatible with devices that do not support early termination, the iteration count assert can be removed. Signed-off-by: Hernan Vargas --- app/test-bbdev/test_bbdev_perf.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c index 81bf2c8b60..c68d79cf29 100644 --- a/app/test-bbdev/test_bbdev_perf.c +++ b/app/test-bbdev/test_bbdev_perf.c @@ -2290,6 +2290,7 @@ static int validate_dec_op(struct rte_bbdev_dec_op **ops, const uint16_t n, struct rte_bbdev_dec_op *ref_op, const int vector_mask) { + RTE_SET_USED(vector_mask); unsigned int i; int ret; struct op_data_entries *hard_data_orig = @@ -2299,17 +2300,12 @@ validate_dec_op(struct rte_bbdev_dec_op **ops, const uint16_t n, struct rte_bbdev_op_turbo_dec *ops_td; struct rte_bbdev_op_data *hard_output; struct rte_bbdev_op_data *soft_output; - struct rte_bbdev_op_turbo_dec *ref_td = &ref_op->turbo_dec; for (i = 0; i < n; ++i) { ops_td = &ops[i]->turbo_dec; hard_output = &ops_td->hard_output; soft_output = &ops_td->soft_output; - if (vector_mask & TEST_BBDEV_VF_EXPECTED_ITER_COUNT) - TEST_ASSERT(ops_td->iter_count <= ref_td->iter_count, - "Returned iter_count (%d) > expected iter_count (%d)", - ops_td->iter_count, ref_td->iter_count); ret = check_dec_status_and_ordering(ops[i], i, ref_op->status); TEST_ASSERT_SUCCESS(ret, "Checking status and ordering for decoder failed");