ZHCAEA5 August 2024 AM625 , AM6442 , AM69 , TDA4VM
当 IEC 任务分布在多个 CPU 核心上时,不再保证按优先级处理 IEC 任务(请参阅多核)。为了防止这种情况,请将所有 CODESYS 线程的 CPU 亲和性设置为单个核心。可以在 Linux shell 中使用 taskset -p <cpu core number (1 indexed)> <Process ID> 命令来设置 CPU 亲和性。
在针对 AM64x 执行基准测试期间,通过将 htop 中所有可见 IEC 任务的 CPU 亲和性设置为一个核心来测试此过程。不过,每 4-5 分钟,另一个核心上的 CPU 负载仍然会增加大约 40%(请参阅图 4-8)。在基准测试期间,包含 IEC 任务的核心的 CPU 负载从 ≅20% 增加到 ≅65%。根据增加的 CPU 负载,可能会有与在另一个核心上运行的 IEC 任务相关的额外线程。周期时间的改善很难跟踪。也就是说,没有观察到周期时间的明显改善。