Hello Nicolas,

 

Yes, this resolves the issue. I've been using Python scripts to generate random data for input rather than using MCS table.

 

I have one additional question related to the vector files. I notice that DPDK-BBdev vector files have very specific names, like ldpc_enc_v2342.data and ldpc_enc_v7813.data.

 

What do the numbers in these file names are reference to? I haven't been able to figure out their significance.

 

Thanks a lot for your support in resolving this query.

 

 

Best Regards,

Avijit Pandey 
Cloud SME | VoerEir AB

+91 9598570190

Title: LinkedIn - Description: image of LinkedIn icon  

       Image

 

From: Chautru, Nicolas <nicolas.chautru@intel.com>
Date: Tuesday, 11 June 2024 at 03:18
To: Avijit Pandey <Avijit@voereir.com>, dev@dpdk.org <dev@dpdk.org>
Subject: RE: Input length paramter in DPDK-BBdev

Hi,

What MCS/code allocation did you use to create such code block? I would expect that from 3gpp specs, all TB size would end up being a multiple of 8 bits.

Thanks,

Nic

 

From: Avijit Pandey <Avijit@voereir.com>
Sent: Thursday, June 6, 2024 3:33 AM
To: dev@dpdk.org
Cc: Chautru, Nicolas <nicolas.chautru@intel.com>
Subject: Input length paramter in DPDK-BBdev

 

Hello Devs,

 

I hope this email finds you well.

 

I am reaching out to seek assistance regarding an issue I am facing in DPDK-BBdev utility, (v22.11).

 

I am performing some tests over a 5G Accelerator, ACC200 using DPDK-BBdev. I am creating custom test-vector files to generate custom load over the ACC200 device. Currently, I am performing the LDPC encoding test through code block mode. I am creating the test-vector files with help of an open-source library, sionna (https://nvlabs.github.io/sionna/). I have successfully executed many tests with vector files created using Sionna.

             

However, I seem to have encountered an edge case. When the input length is a multiple of 32 bits, the tests run successfully. But when the input length is not a multiple of 32 bits, I face an error in BBdev regarding the output value. For instance, please look up the following vector file where my input is of 60 bits.

 

      op_type =

      RTE_BBDEV_OP_LDPC_ENC

 

      input0=

      0xa479e349, 0x3610be1

 

      output0=

      0x10be419a,0xf3550f36,0xc6db13e5,0x674054

 

      basegraph=

      2

 

      z_c=

      10

 

      q_m=

      1

 

      n_filler=

      40

 

      n_cb=

      500

        

      e=

      120

 

      rv_index =

      0

 

      code_block_mode =

      1

 

      op_flags =

      RTE_BBDEV_LDPC_RATE_MATCH

 

      expected_status =

      OK

 

 

When I execute the test through test-BBdev command: 

 

      ./test-bbdev.py -e="-l 11 --vfio-vf-token=${UUID} --allow 0000:f7:00.2 --log-level lib.bbdev:debug" -l 4 -v /root/cb_mode_60_120.data -c validation

 

I face the following error:

 

      == test: validation

      dev:0000:f7:00.2, burst size: 32, num ops: 32, op type: RTE_BBDEV_OP_LDPC_ENC

      TestCase validate_op_chain() line 2001 failed: Output buffers (CB=0) are not equal

      Buffer A: 9a:41:be:10:36:0f:55:f3:e5:13:db:c6:54:40:67

      Buffer B: 9a:4e:10:b6:10:40:09:8c:4b:2b:35:c8:80:25:e4

      TestCase validate_enc_op() line 2385 failed (err -1): Output buffers (CB=0) are not equal

      TestCase latency_test_ldpc_enc() line 4748 failed (err -1): Validation failed!

      727:get_stats_from_queues() Got stats on 0

      762:rte_bbdev_stats_get() Retrieved stats of device 0

      602:rte_bbdev_stop() Stopped device 0

      TestCase [ 0] : validation_tc failed

      647:rte_bbdev_close() Closed device 0

       + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +

       + Test Suite Summary : BBdev Validation Tests

       + Tests Total :        1

       + Tests Skipped :      0

       + Tests Passed :       0

       + Tests Failed :       1

       + Tests Lasted :       98.8228 ms

       + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +

 

 

On the other hand, when I create a vector file from a input of 64/128/2400/... bits, the tests run successfully.

 

I would like to understand if there is any incorrect configuration on my part or if this flow, where input bits are not a multiple of 32, is unsupported?

 

Tagging @nicolas.chautru@intel.com, as I see a lot of contribution from your end.

 

Any insights or guidance to help resolve this issue would be highly appreciated. If you need any more details, please feel free to ask.

 

Thank you for your time and assistance!

 

 

 

Best Regards,

Avijit Pandey
Cloud SME | VoerEirAB
+919598570190