ZHCAEA5 August 2024 AM625 , AM6442 , AM69 , TDA4VM
在运行 EtherCAT 应用程序时,在评估每个硬件平台的性能之前,通常建议先通过运行 cyclictest 收集基准性能统计信息。这些统计信息是运行 CODESYS 协议栈时 EtherCAT 控制器性能的良好指标。
Cyclictest 是 Linux 中的一种实用工具(另请参阅 Linux Foundation),它可以重复地准确测量线程的预期唤醒时间与线程实际唤醒时间之间的差异,以提供有关系统延迟的统计信息。实时系统中由硬件、固件和操作系统引起的延迟可以通过 Cyclictest 来测量。
Cyclictest 的结果以与开源自动化开发实验室 (Open Source Automation Development Lab, OSADL) 在 QA Farm on Real-time of Mainline Linux 中发布的数据采用相同的直方图格式绘制。OSADL 是一个组织,它的宗旨是通过引入更广泛的社区来帮助开发,以促进个人、团体和公司开发开源软件。QA Farm 是 OSADL 提供的一项服务,它是嵌入式系统的质量保证和评估测试中心。
Cyclictest 的结果是在 AM62x 评估板 (SK-AM62B)、AM64x 评估板 (TMDS64EVM)、TDA4VM 入门套件 (SK-TDA4VM) 和 AM69 入门套件 (SK-AM69) 上捕获的,以显示在这些平台上运行的基本延迟。SK-AM62B 和 TMDS64EVM 分别在 PROCESSOR-SDK-LINUX-RT-AM62x 和 PROCESSOR-SDK-LINUX-RT-AM64x 默认 wic 映像上运行,这些映像均来自软件开发工具包 (SDK) 版本 09.01.00.08。TDA4VM 和 AM69 在来自各自 SDK 09.01.00.06 版本的实时内部版本上运行。在负荷试验下,每个 cyclictest 均使用 stress-ng 工具运行 6 小时。如需了解此设置,请参阅下面的代码片段。
stress-ng -c <number of cpu cores> --cpu-method all &
cyclictest -m -Sp98 -D6h -h400 -i200 -q > <histogram name>.hist