This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

RTOS/66AK2H14: SRIO throughput issue

Part Number: 66AK2H14

Tool/software: TI-RTOS

Hi,

We have designed a customized board with 66AK2H14. In our board we have 3 66AK2H14 processor ,out of which 1 is configured as Centralized Processor (Called CP henceforth) and 2 Distributing Processors (Called DP henceforth). We have SRIO switch (IDT_RXS2448) on board.

I am using CCS v7.4 and SDK  ti-processor-sdk-rtos-k2hk-evm-04.03.00.05.

I need to transfer the SRIO packet from one processor to another through the SRIO switch.

SRIO ports are configured as 2 * 2x. I have to receive the data in both the ports simultaneously.

So I am running the SRIO Tput benchmarking application on 2 cores(core 1,3 producer and core 0 and 2 consumer) to transfer the data simultaneously. 

SRIO_PORT_NUM = 0 on core 0  and core 1 and  SRIO_PORT_NUM = 1 on core 2  and core 3.

I am using Tput benchmarking in B-S-B mode and  able  to receive the data in both the ports simultaneously.

but I am observing less throughput. Instead of 7.3 Gbps I am getting 3 Gbps for one port and 5 Gbps in another port.

Why I am getting less throughput?

Is there any other way to receive the data simultaneously on both 2x * 2 ports ?

Please help me with this.

Thanks and Regards,

Mahima Shanbag

  • Hi,

    As far as I understand core 1 and core 3 are on one 66AK2H14 processor and core 0 and core 2 are on another processor, right?

    Are you using a different binaries running on each core? As far as I know the tput benchmarking example is designed for showng the throughput on a single link (connecting two boards). So you should have something like: 
      binary1 running on core 1 (producer) <-> binary2 running on core 0 (consumer)

      binary3 running on core 3 (producer) <-> binary4 running on core 2 (consumer)

    Best Regards,
    Yordan

  • Hi Yorden ,

    Thank you so much for your quick reply.

    >>>>As far as I understand core 1 and core 3 are on one 66AK2H14 processor and core 0 and core 2 are on another processor, right?

    Yes.

    >>>>Are you using a different binaries running on each core?

    Yes . I am using different binaries.

    binary1 running on core 1 (producer) <-> binary2 running on core 0 (consumer) using  port 0.

    binary3 running on core 3 (producer) <-> binary4 running on core 2 (consumer) using  port 1.

    Regards,

    Mahima Shanbag

  • Hi,

    Take a look at the following e2e:
      

    There is a link to the throughput performance guide, where you can see what is the maximum throughput measured in an ideal test environment.

    Also have you made sure that your payload size dose not increase the maximum SRIO message payload size?

    Best Regards,
    Yordan