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.

[参考译文] TDA4VH-Q1:CPSW9G 网络吞吐量测试

Guru**** 2455560 points
Other Parts Discussed in Thread: TDA4VM

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1457900/tda4vh-q1-cpsw9g-network-throughput-test

器件型号:TDA4VH-Q1
主题中讨论的其他器件:TDA4VH、DRA821、 TDA4VM

工具与软件:

Hardware:TDA4VH 定制板

SDK:ti-processor-sdk-linux-adas-j784s4-evm-09_01_00_06

 在 SGMII 模式下、8个端口配置为使用8条独立的 SERDES 线

#1。 这些端口使用 iperf3工具单独进行测试。 一台服务器(ifconfig eth1 160.0.0.1 && iperf3 -s)。 一个 client (iperf3 -c 160.0.0.1 -t 120)。

单端口的测试结果:

  • 端口速度为93Mb/s (在100Mb/s 全双工模式下)。
  •  在以下模式下、端口速度为943Mb/s:1000Mb/s 全双工。

通信吞吐量符合预期。

#2。 同时测试多个端口、带宽率大幅下降、例如、 使用四个主板作为服务器。

(iperf3 -s)  一个客户端(iperf3 -c 160.0.0.1 -t 120 / iperf3  -c 161.0.0.1 -t 120 / iperf3  -c 162.0.0.1 -t 120  / iperf3 -c 163.0.0.1 -t 120)

多个端口同时运行的测试结果:

  • 端口速度为46Mb/s (100Mb/s 全双工模式下)。
  • 端口速度为303Mb/s (在1000Mb/s 全双工模式下)。 4个端口的总吞吐量= eth2 + eth3 +eth4 +eth5 = 304 + 304 + 307 + 304 =1219Mb/s  

尽管使用了单独的 SRDES 线、但它通过测试结果相互影响。

当同时使用多个端口时、每个端口能否达到1Gbps。  提高吞吐量。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!  

    每个串行器/解串器通道都是独立的、在 SGMII 接口下最高可支持1Gbps。  

    您可以检查一次 CPU 负载吗? 如果 CPU 负载较高、您可以调整每个以太网接口的中断节奏并提高吞吐量。  

    请参阅 SDK 文档以了解中断放置。  

    software-dl.ti.com/.../CPSW2g.html

    由于 s/w 限制(通用网络堆栈和应用程序数据的处理)、我们已看到最大吞吐量为3.5Gbps。  

    此致、  

    Sudheer

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我们检查了 CPU 负载。 这不是高电平。
    我们基于 SDK 09_00_01_06、Tx 通道共享中断。  这是否会使它减慢速度?

    我们将 端口设置为100Mb/s 满。 每个端口的速度均为40Mb/s 此速度远低于预期

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我们基于 SDK 09_00_01_06、Tx 通道共享一个中断。  这是否会使其减慢速度?

    如果在内核之间共享中断、则可以提高一些性能。

    我们设置 端口100Mb/s-full。 每个端口的速度均为40Mb/s 此速度远低于预期[/报价]

    您是否可以为每个 iperf 运行多个线程和不同的端口。

    此致、
    Sudheer

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    1、cmd : taskset -c 6 iperf3 -c 166.0.0.1一个内核运行 iperf3。 测试结果相同。 将 eth2 eth3 eth4 eth5设置为100Mb/s +双工全(ps:ethtool -s eth2 speed 100 duplex full)
    即电路板。 测试结果:eth2 + eth3 +eth4 +eth5 = 52 + 52 + 33 + 33 =170Mb/s

    2、我们使用 TI dmeo 电路板测试(QSGMII)。 将 eth2 eth3 eth4 eth5设置为100Mb/s +双工全(ps:ethtool -s eth2 speed 100 duplex full)
    TI 板。 测试结果:eth2 + eth3 +eth4 +eth5 = 60 + 60 + 30 + 30 = 180MB/s

    每个端口的速率无法达到93Mb/s 如果我们继续添加端口、每个端口的速率将降低。端口总带宽约为170Mb/s

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    您能不能看一下最新的 SDK 10.1、我们提供跨内核共享中断的支持(关联性)

    此致、
    Sudheer

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

     我们使用了 SDK 10.1进行测试。 我们只更改 uEnv.txt
    -name_overlages=ti/k3-j784s4-evm-ethfw.dtbo ti/k3-j784s4-vision-apps.dtbo
    +name_overlages=ti/k3-j784s4-evm-ethfw.dtbo ti/k3-j784s4-vision-apps.dtbo ti/k3-j784s4-evm-quad-port-eth-exp1.dtbo
    内核在启动时卡住

    消息:
    ALSA 设备列表:
    无声音列表:
    正在等待根器件 PARTUUUUUID=3ab21cfa-02
    Platform 4fb0000.mmc:延迟探测待定
    Platform Regulator-SD:延迟探测待定
    平台稳压器-DP0-PRW:延迟探测待定
    平台调节器- DP1-PRW:延迟探测待定
    平台总线@100000:wiz@5020000:延迟探测待定
    Platform c000000.Ethernet:延迟探测挂起

    如果未添加 k3-j784s4-evm-quad-port-eth-exp1.dtbo、内核可以正常启动。 我们是否以错误的方式对其进行了配置

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    您是否可以按如下所示更新"k3-j784s4-evm-quad-port-eth-exp1.dtbo"、即注释掉"mux-sel-hog"、并通过重建 DTB 来使用更新的 dtbo。

    此致、
    Sudheer

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    内核可以正常运行。 但驱动程序继续报告错误。 是新 SDK 中占用相关 GPIO 资源的器件

    消息:

    平台总线@100000:wiz@5020000:延迟探测待定
    Platform c000000.Ethernet:延迟探测挂起

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    [报价 userid="605314" url="~/support/processors-group/processors/f/processors-forum/1457900/tda4vh-q1-cpsw9g-network-speed-test/5599737 #5599737"]

    内核可以正常运行。 但驱动程序继续报告错误。 是新 SDK 中占用相关 GPIO 资源的器件

    消息:

    平台总线@100000:wiz@5020000:延迟探测待定
    Platform c000000.Ethernet:延迟探测挂起

    [报价]

    您正在查看 TI EVM 吗? 或定制电路板?

    如果是定制电路板、则需要根据您的电路板进行配置。 SDK 9.1也是如此
    对于 TI EVM、您可以按原样使用 SDK、在内核未引导时提供上述更改建议。

    此致、
    Sudheer

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    Platform:TDA4VH  TI EVM

    SDK:ti-processor-sdk-linux-adas-j784s4-evm-10_01_00_05

    测试结果与之前相同。

         速度:1000Mb/s 双工:全  --> eth2 + eth3 +eth4 +eth5≈1219Mb/s

         速度:100MB/s 双工:全  --> eth2 + eth3 +eth4 +eth5≈180MB/s

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    如何使用相同的 iperf3服务器运行?

    它是用两块板设置的、一侧是所有接口(eth2+eth3+eth4+eth5)的桥接模式服务器?
    其他端单独的 MAC 端口?

    如果启用了网桥、由于启用了交换机模式、您可以在硬件层看到广播数据包泛洪。
    您可以在测试前和测试后检查 CPSW 统计信息、并检查它们是否是巨大的广播/多播数据包计数器增量?

    您是否可以将两块电路板 分别检查为4台服务器和4个客户端对、如 eth2 <->eth2作为一端的服务器、另一端的客户端同样适用于 eth3、eth4、eth5。

    此致、
    Sudheer

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    我们使用 ti、仅 mac-only 模式。
    作为客户端、连接四个电路板(我们的电路板)作为服务器。

    TI 板编号1 --> ifconfig eth2 162.0.0.1 && iperf3 -c 162.0.0.1 -t 100         我们的板编号1 --> iperf3 -s B 162.0.0.1

    TI 板编号1 --> ifconfig eth3 163.0.0.1 && iperf3 -c 163.0.0.1 -t 100         我们的板编号2 --> iperf3 -s B 163.0.0.1

    TI 板编号1 --> ifconfig eth4 164.0.0.1 && iperf3 -c 164.0.0.1 -t 100         我们的主板 NUM3 --> iperf3 -s B 164.0.0.1

    TI 板编号1 --> ifconfig eth5 165.0.0.1 && iperf3 -c 165.0.0.1 -t 100         我们的主板 NUM4 --> iperf3 -s B 165.0.0.1

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    您的板还带有 TDA4VHTM 如果未连接、则可以使用桥接器连接到 PC 并进行检查。  
    也可以背靠背检查两个 TI EVM。

    此致、
    Sudheer

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Sudheer:

    如果同时运行多个以太网端口、TI 是否有吞吐量数据?  

    如果不是、您是否有测试环境来在自己这边进行复制?

    从 SOC 结构、内部总线带宽来看、CPSW-9G 的上流端口上是否存在可实现8x1Gbps 的瓶颈?

    由于吞吐量数据会影响客户的系统设计决策、现在是为客户重新制造新原型板的时候了、需要您的帮助以尽快得出结论。 谢谢。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    1、我们使用 PC 进行相同的测试、实验结果相同。

    2、这里我们没有两块 TI 电路板。 我们目前无法进行此测试。

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我们在 TI EVM 上进行了一些测试、但在 TDA4VH 上没有。
    我们观察的 TDA4VM 到 DRA821 ~2Gbps 以最大值使所有内核一起吞吐

    会在从 TDA4VH 到 TDA4VH 检查一次、它将超过~2Gbps。
    如上所述、由于软件限制(通用网络堆栈、嵌入式 ARM 内核)、我们可能实现的最大值~3.3Gbps

    此致、
    Sudheer

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    是否可以添加另一个测试? 将 ETH*设置为100 Mbit/s 全双工模式、并计算所有端口的速度

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    您可以再添加一项测试吗? 将 ETH*设置为100 Mbit/s 全双工模式并计算所有端口的速度[/QUOT]

    我们观察到每个端口的速度为~90Mbps、4个端口总共超过300Mbps。

    此致、
    Sudheer

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    您的测试命令和测试环境是什么?

    当我们打开第三个端口时、Tx 将发送超时。
    am65_cpsw_nuss_ndo_host_tx_timeout() --> netdev_err (ndev,"TxQ...... ")

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    am65_cpsw_nuss_ndo_host_tx_timeout() --> netdev_err (ndev,"TxQ ...... ")

    有时我们会观察到相同的内容、但仅针对一个端口。

    您是否可以增加 no.of 描述符并检查。

    此致、
    Sudheer

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    两个端口、我们才能达到90 MB。当您添加第三个或第四个端口时、 它是0MB/s、会出现上述错误。

    SDK 9.1是 Tx 通道。 SDK 10.1包含八个 Tx 通道、但全都大约为~200MB/s (TI 4VH 板)

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!  

    让我们在 TDA4VH 板上检查一次。  

    此致、  

    Sudheer

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我在 TDA4VH 上尝试了多次实验。 我的设置如下所示:

    服务器命令:iperf3 -s -p 5001和  iperf3  -s -p 5002和  iperf3 -s -p 5003和 iperf3 -s -p 5004和  iperf3 -s -p 5005和 iperf3    -s -p 5006和 iperf3 -s -p 5007和 iperf3 -s -p 5008 &

    我所做和观察的是以下内容

    1. 所有链路均为1G 时、我同时在所有4个链路上运行了 iperf3 TCP。
      1. 我在所有4个端口上观察到~240M 流量
      2. 这是因为为流量提供服务的链路限制为1G 链路(连接到 PC 的外部交换机)
      3. cmd: iperf3 --bind-dev eth1 -c 192.168.1.230 -p 5001 -T eth1 & iperf3 --bind-dev eth2 -c 192.168.1.230 -p 5002 -T eth2 & iperf3 --bind-dev eth3 -c 192.168.1.230 -p 5003 -T eth3 & iperf3 --bind-dev eth4 -c 5004和192.168.2.4
    2. 所有链路都是100M、我同时在所有4个线路上运行了 iperf3 TCP。
      1. 我观察到所有4个端口的持续吞吐量均为~30M
      2. cmd : iperf3 --bind-dev eth1 -c 192.168.1.230 -p 5001 -T eth1 -b 100m 和 iperf3 --bind-dev eth2 -c 192.168.1.230 -p 5002 -T eth2 -b 100m 和 iperf3 --bind-dev eth3 -c 192.168.1.230 -p 5003 -T 100m 和 iperf3 -b 100m -b iperf3 -b 100m 和 iperf4 -c 100m -b 100m -b
    3. 所有链路均为100M、我在双向4个链路上运行了 iperf3 UDP。
      1. 我在所有4个端口上观察到满~190m (TX 上~95M、Rx 上~95M)
      2. cmd : iperf3 --bind-dev eth1 -c 192.168.1.230 -p 5001 -T eth1 -u -b 100m & iperf3 --bind-dev eth2 -c 192.168.1.230 -p 5002 -T eth2 -u -b 100m & iperf3 --bind-dev eth3 -c 192.168.1.230 -p 5003 -T bind-dev eth2 -c 192.168.1.230 -p 5006 -T eth2R -u -b 100M -R & iperf3 --bind-dev eth3 -c 192.168.1.230 -p 5007 -T eth3R -u -b 100M -R & iperf3 --bind-dev eth4 -c 192.168.1.230 -p 5008 -T eth4R -u -b 100M -R &

    在我的实验中、我从未看到 netdev 超时错误。

    此致、
    Tanmay

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Tanmay、

    连接客户的测试设置、客户希望每个 端口都具有更高且恒定的吞吐量。  

    我知道在您的测试设置中、交换机和 PC 之间的瓶颈是1端口千兆网络。 请帮助根据客户用例进行测试并共享测试数据

    实际用例使用了 CPSW-9G 的所有8个端口、连接到系统中的不同模块、如果能够以这种方式进行测试会大有帮助、我就知道需要修改 ENET 模块来支持8个端口。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Tony:

    客户的要求是什么? 我将尝试使用所有端口的1G 链路的 TDA4VH 找到最大值。

    此致、
    Tanmay

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    由于客户的测试结果不好、远未达到预期、不确定是不是 SDK 版本导致的。 所以想知道:

    #1。 理论上的最大吞吐量

    #2。 实际测试结果。

    #3. 间隙的原因

    #4. 它是否可以改进、以及如何改进?

    客户希望以1Gbps 的速率获取所有端口和100Mbps 的所有端口的吞吐量数据(手动设置为100M 模式)。 因为某些端口将用作 EtherCAT 主站、它应该为兆模式。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Tanmay、

    在我们的产品上使用了 CPSW-9G 的全部8个端口、所以设置测试8个端口:TDA4VH --> 8*TDA4VH、测试如下:

    服务器命令: iperf3 -s -B 161.0.0.1 / iperf3 -s -B 162.0.0.1 / iperf3 -s -B 163.0.0.1 / iperf3 -s -B 164.0.0.1 / ...

    客户端默认链接模式:1000Mbps/全速
    1、、所有链路均为1G、TCP 测试
        命令:iperf3 --bind-dev eth1 -c 161.0.1-T eth1 -b 1000M &
             iperf3 --bind-dev eth2 -c 162.0.1-T eth2 -b 1000M &
              iperf3 --bind-dev eth3 -c 163.0.0.1-T eth3 -b 1000M &
              iperf3 --bind-dev eth4 -c 164.0.0.1-T eth4 -b 1000M &
              iperf3 --bind-dev eth5 -c 165.0.0.1-T eth5 -b 1000M &
              iperf3 --bind-dev eth6 -c 166.0.0.1-T eth6 -b 1000M &
              iperf3 --bind-dev eth7 -c 1670.1-T eth7 -b 1000M &
              iperf3 --bind-dev eth8 -c 168.0.1-T eth8 -b 1000M
        产量:143. +156+160+151+149+155+157+160=1231Mb/s

    2、、所有链路均为1G、UDP 测试
        命令:iperf3 --bind-dev eth1 -c 161.0.1-T eth1 -u -b 1000M &
             iperf3 --bind-dev eth2 -c 162.0.1-T eth2 -u -b 1000M &
              iperf3 --bind-dev eth3 -c 163.0.0.1-T eth3 -u -b 1000M &
              iperf3 --bind-dev eth4 -c 164.0.0.1-T eth4 -u -b 1000M &
              iperf3 --bind-dev eth5 -c 165.0.0.1-T eth5 -u -b 1000M &
              iperf3 --bind-dev eth6 -c 166.0.0.1-T eth6 -u -b 1000M &
              iperf3 --bind-dev eth7 -c 1670.1-T eth7 -u -b 1000M &
              iperf3 --bind-dev eth8 -c 168.0.1-T eth8 -u -b 1000M
        吞吐量: 212+209+20211+207+212+213+210=1683Mb/s

    测试结论:最大带宽小于3.3Gb。

    我们的实际用例为100Mbps/满、因此修改模式并对其进行测试:

    命令:  ethtool -s eth1 100双工全双工&& ethtool -s eth2 100双工全双工...
    1、TCP 测试
       命令:iperf3 --bind-dev eth1 -c 161.0.1-T eth1&
            iperf3 --bind-dev eth2 -c 162.0.1-T eth2 &
             iperf3 --bind-dev eth3 -c 163.0.0.1-T eth3 &
             iperf3 --bind-dev eth4 -c 164.0.0.1-T eth4 &
             iperf3 --bind-dev eth5 -c 165.0.1-T eth5 &
             iperf3 --bind-dev eth6 -c 166.0.0.1-T eth6 &
             iperf3 --bind-dev eth7 -c 1670.1-T eth7 &
             iperf3 --bind-dev eth8 -c 168.00.1-T eth8
       吞吐量:18 + 18 + 18 + 18 + 18 + 18 + 18 + 18 =144Mb/s
    2、UDP 测试
       命令:iperf3 --bind-dev eth1 -c 161.0.0.1-T eth1 -u -b 100M &
             iperf3 --bind-dev eth2 -c 162.0.1-T eth2 -u -b 100m &
             iperf3 --bind-dev eth3 -c 163.0.0.1-T eth3 -u -b 100m &
             iperf3 --bind-dev eth4 -c 164.0.0.1-T eth4 -u -b 100M &
             iperf3 --bind-dev eth5 -c 165.0.0.1-T eth5 -u -b 100m &
             iperf3 --bind-dev eth6 -c 166.0.0.1-T eth6 -u -b 100M &
             iperf3 --bind-dev eth7 -c 1670.1-T eth7 -u -b 100m &
             iperf3 --bind-dev eth8 -c 16.8.00.1-T eth8 -u -b 100m
       吞吐量:94 + 94 + 94 + 94 + 94 + 94 + 94 + 94 = 752MB/s

    问题

    1.为什么 UDP 可以接近理论速度(95Mbps)? TCP 速度平均划分为8个端口(20Mbps)。

    2.我们测试了 CPSW-2g 的两个端口,它们的速度不会相互影响。

    3.当前 CPSW9G TCP 吞吐量测试结果是否合理? 可以改进吗?

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、TI 专家:

      由于我们的项目到期、TI 对这个问题有什么意见吗?

    此致、

    SAI

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    1. 为什么 UDP 可以以接近理论速度(95Mbps)的速度运行? TCP 速度平均划分为八个端口(20Mbps)。

    与 UDP 不同、TCP 会导致 ACK 从接收器发送到发送方 TDA4VH。 TDA4VH 上 CPSW 的 CPSW9G 实例分配有8个 TX DMA 通道和1个 RX DMA 通道。 虽然 RX DMA 通道支持多个 RX 流、但从 SDK 9甚至 SDK 10开始、仅在软件中启用单个 RX 流。 因此、从不同接收器 TDA4VH 发送至发送器 TDA4VH 的所有 ACK 都在同一 RX 流程中接收、并由单核上运行的同一软件线程进行处理。 在软件中启用多个 RX 流之后、可以通过将中断绑定到相应的 CPU 来在不同的 CPU 之间分配每个 RX 流的处理程序。 这将提高 TCP 吞吐量。

    2. 我们测试了 CPSW-2g 的两个端口、它们的速度不会相互影响。

    由于每个 CPSW2G 实例都有8个 TX DMA 通道和1个 RX DMA 通道、因此来自接收器 TDA4VH 的 TCP ACK 在相应 CPSW2G 实例的不同 RX 流上接收、因此由单独的软件处理程序进行处理。 因此、速度不受影响。

    3. 当前 CPSW9G TCP 吞吐量测试结果是否合理? 是否可以改进?

    在软件中启用多个 RX 流将提高 TCP 吞吐量。 从 SDK 11.00开始、软件将支持多个 RX 流程。

    此致、
    Siddharth。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Siddharth:

    从 SDK 11.00开始、软件将支持多个 RX 流

    预计的时间表是什么?

    将为 SDK9.0提供反向移植补丁?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    可应用以下补丁系列来启用多个 RX 流和将接收的流量引导到所需的其他相关功能:
    1. https://patchwork.kernel.org/project/netdevbpf/patch/20240910-am65-cpsw-multi-rx-v4-1-077fa6403043@kernel.org/
    2. https://patchwork.kernel.org/project/netdevbpf/patch/20241101-am65-cpsw-multi-rx-j7-fix-v3-1-338fdd6a55da@kernel.org/
    3. https://patchwork.kernel.org/project/netdevbpf/patch/20241114-am65-cpsw-multi-rx-dscp-v4-1-93eaf6760759@kernel.org/

    此致、
    Siddharth。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的专家:

     我们的客户板现在需要使用 CPSW9G 的至少4个 SGMII、(您可以帮助我们在1G 链路下进行实际速度测试)使用同时工作的四个 TDA4VH 板并使用 SDK11.00吗? 因此我可以知道 tda4vh 的最大传输能力。

      请注意、这对我们来说非常重要、几乎如此 截止时间 我们的下一个版本硬件设计,谢谢!  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我将尝试用两个 TDA4VH,但你已经尝试使用"- bind-dev eth1"与 iperf3来分离流量并尝试。  

    此致、
    Tanmay

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    是的、我们试过。
    最后、我们测试的四个端口的总带宽如下:
    UDP (1G 模式):RX -- 3.1Gb/s TX -- 1.8GB/s
    TCP (1G 模式):RX --3.7Gb/s TX --1.2Gb/s
    两块4Vh 板无法测试最大带宽、我希望您再添加两块板
    请帮助确认最大带宽是否符合预期

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    由于一侧板的流量仅为1G、我将尝试在另一侧使用 TDA4VH 以外的器件。

    TCP (1G 模式):RX -- 3.7Gb/s TX -- 1.2GB/s

    在 Tx 测试前后、您能否检查"cat /proc/interrupts | grep c0000"的输出。 如果发现您始终只使用一个队列、我们可以进一步优化该队列。

    此致、
    Tanmay

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    我们在 SDK9.1的基础上进行开发。 Tx 和 Rx 中断仅打开一个队列

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

     然后、您可以使用以下命令增加队列数量:"ethtool -L eth0 tx 8"。

    在执行此操作之前、您必须关闭接口。

    此致、
    Tanmay

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    我们对 SDK10.01进行了相同的测试。 测试结果相同。 我们使用了8个 TX  队列

    谢谢