On 2/10/23 18:15, Vargas, Hernan wrote:
Hi Maxime,

-----Original Message-----
From: Maxime Coquelin <maxime.coque...@redhat.com>
Sent: Tuesday, January 31, 2023 4:04 AM
To: Vargas, Hernan <hernan.var...@intel.com>; dev@dpdk.org; gak...@marvell.com; Rix, 
Tom <t...@redhat.com>
Cc: Chautru, Nicolas <nicolas.chau...@intel.com>; Zhang, Qi Z 
<qi.z.zh...@intel.com>
Subject: Re: [PATCH v1 04/13] test/bbdev: early termination not explicit set



On 1/17/23 17:50, Hernan Vargas wrote:
Early termination needs to be explicitly enabled.

Signed-off-by: Hernan Vargas <hernan.var...@intel.com>
---
   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,

Not clear to me whether it should be a fix. Any thoughts?

Thanks,
Maxime

This is not a fix, it's just an enhancement to enable early termination for 
validation tests if the device supports it.
The validation tests currently run iter_max number of iterations for decoding, 
with this enhancement the decoding could terminate early.

Thanks,
Hernan

Could you please fix your email client?
The message you are replying to is not quoted.

Thanks,
Maxime

Reply via email to