【飞腾平台实时Linux方案系列】第二十一篇 - 飞腾平台实时Linux性能测试与优化总结。

一、简介:为什么要给飞腾做“实时体检”?

  • 国产芯趋势:能源 PLC、矿山集控、车载 ECC 纷纷选用飞腾(FT-1500A/FT-2000/4),但芯片微架构、Cache 拓扑与 x86 不同,默认内核配置无法发挥实时性能

  • 痛点场景

    • 变电站测控装置:GOOSE 消息 1 ms 内不响应 → 保护误动。

    • 轨道计轴系统:中断延迟 > 50 μs → 丢轴计数,影响行车安全。

  • 掌握测试+优化技能= 让“国产芯+实时Linux”真正落地,替代传统 DSP/FPGA 方案,硬件成本降 40%,供应链安全可控


二、核心概念:5 个关键词先搞懂

关键词一句话说明飞腾平台注意点
PREEMPT_RTLinux 实时补丁,将中断线程化、自旋锁变互斥锁需配合飞腾 ARCH=arm64 配置
cyclictest实时延迟基准工具,测 IRQ→任务唤醒时间本文用 RT-Tests 2.5
调度延迟任务就绪→获得 CPU 的间隔,SIL 2 要求 < 100 μs受 CPU 变频、NUMA 影响
DCVS飞腾动态调频,默认开启 → 延迟抖动大测试前建议锁定频率
可伸缩拓扑飞腾 64 核采用 4 × Clustertaskset 绑核时避免跨 Cluster

三、环境准备:10 分钟搭好“飞腾测试工作台”

1. 硬件

  • CPU:飞腾 FT-2000/4 或 FT-1500A(arm64 v8)

  • 内存 ≥ 8 GB,SSD ≥ 128 GB,预留网口 × 2(千兆+千兆)

2. 软件

组件版本安装命令
OSUbuntu 20.04 for ARM飞腾官网镜像
实时内核linux-5.15.71-rt53见下文一键脚本
测试套件rt-tests 2.5apt install rt-tests
性能工具perf, tuna, tasksetapt install linux-tools-common
交叉编译gcc-aarch64-linux-gnu可选,嵌入式板子

3. 一键安装 RT 内核(可复制)

#!/bin/bash # install_ft_rt.sh set -e VER=5.15.71 RT_PATCH=patch-5.15.71-rt53.patch.xz wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v${VER}/linux-${VER}.tar.xz wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v${VER}/${RT_PATCH} tar -xf linux-${VER}.tar.xz cd linux-${VER} xzcat ../${RT_PATCH} | patch -p1 cp /boot/config-$(uname -r) .config make ARCH=arm64 olddefconfig ./scripts/config --set-val CONFIG_PREEMPT_RT y make ARCH=arm64 -j$(nproc) deb-pkg sudo dpkg -i ../linux-*.deb sudo reboot

重启选 RT 内核进入,确认:

uname -r # 5.15.71-rt53

4. 创建实验目录

mkdir -p ~/ft-rt-bench && cd ~/ft-rt-bench

四、应用场景(300 字)

某 220 kV 智能变电站采用飞腾 FT-2000/4 作为就地测控单元,运行 PREEMPT_RT Linux。系统需同时完成:

  1. GOOSE 报文硬实时接收→解析→出口继电器,端到端 ≤ 1 ms;

  2. 1588 对时误差 < 250 ns;

  3. 后台 104 规约并发 256 台客户端,CPU 占用 < 60%。

通过本文测试脚本,现场工程师 30 分钟输出“延迟-负载”曲线,发现 DCVS 导致 0.8 ms 抖动;锁定频率并绑核后,延迟降至 82 μs,顺利通过电网科院型式试验,实现国产芯替代 DSP 方案,单装置成本下降 35%,且供应链完全自主可控。


五、实际案例与步骤:从“跑基准”到“出报告”

每条命令可直接复制,保存为run.sh一键执行。


5.1 基础信息采集

#!/bin/bash # info.sh echo "=== CPU 信息 ===" lscpu | grep -E "Model name|Architecture|CPU\\(s\\)" echo "=== 内核配置 ===" grep PREEMPT /boot/config-$(uname -r) echo "=== 当前频率 ===" cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_cur_freq

作用:记录硬件与内核版本,报告首页贴截图。


5.2 实时延迟测试(cyclictest)

# latency.sh sudo cyclictest -p99 -i100 -d60s -m -Sp90 -q | tee cyclictest.log

参数说明

  • -p99最高优先级,避免被其他任务抢占

  • -d60s采样 60 秒,现场可延长到 600 s

  • -m锁内存,防止 swap 干扰

结果示例

T: 0 ( 1234) P:99 I:100 C: 600000 Min: 12 Act: 18 Avg: 20 Max: 82

Max=82 μs < 100 μs → 满足 SIL 2 要求。


5.3 负载压力叠加(stress-ng)

# load.sh stress-ng --cpu 4 --io 2 --vm 2 --vm-bytes 256M --timeout 60s & sudo cyclictest -p99 -i100 -d60s -m -q | tee cyclictest_load.log killall stress-ng

观察:满载下 Max 延迟是否仍 < 100 μs;若超标 → 进入第 6 节优化。


5.4 网络/IO 性能

A. 千兆网小包转发
# 需要另一台 PC 打流 sudo ethtool -G eth0 rx 4096 tx 4096 # 增大环形缓冲区 sudo pktgen_sample.sh 1000mb 1000000 # 发送 1M 个 64 B 包
B. 磁盘 IO 延迟(实时日志)
sudo fio --name=rt-log --rw=randwrite --bs=4k --size=100m --direct=1 \ --ioengine=libaio --iodepth=1 --runtime=60s --group_reporting

关注clat平均延迟,> 2 ms 需换 SSD 或 ext4 → xfs。


5.5 一键生成 HTML 报告

# report.sh gnuplot -e "set terminal html; set output 'latency.html'; plot 'cyclictest.log' using 2 title 'Latency/us'" echo "报告已生成,打开 latency.html 查看"

六、性能优化方法与最佳实践

  1. 关闭 CPU 变频

    echo performance | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
  2. 隔离核
    内核参数isolcpus=2,3+rcu_nocbs=2,3
    实时任务绑定:taskset -c 2 ./your_rt_app

  3. 中断亲和

    echo 1 > /proc/irq/24/smp_affinity # 把网卡中断绑到 Core0,远离实时核
  4. 禁用不必要驱动
    内核配置关闭CONFIG_USB_CONFIGFS_F_FS,减少关中断时间。

  5. 使用tuna图形化调整

    sudo tuna -c 2-3 -i eth0 -x # 把 eth0 中断从 2-3 移走
  6. 大页+锁内存

    mlockall(MCL_CURRENT | MCL_FUTURE);
  7. 日志异步化
    实时线程不写磁盘;使用ringbuf + low-prio后台线程批量落盘。


七、常见问题与解答(FAQ)

问题现象解决
cyclictest Max > 1 ms变频未关确认 governor=performance
网络小包丢包rx_errors 增加增大 ring buffer + 绑中断
报告中文乱码HTML 无 meta<meta charset="utf-8">
隔离核后 SSH 连不上孤立核含 Core0留 Core0 给系统, isolcpus=2,3
fio 报“Read-only”在容器内宿主机或 --privileged 启动

八、总结:一张脑图带走全部要点

飞腾实时性能测试 ├─ 环境:RT 内核 + 关闭变频 + 隔离核 ├─ 工具:cyclictest + stress-ng + fio + tuna ├─ 指标:延迟 < 100 μs,网络不丢包,IO clat < 2 ms ├─ 优化:锁内存、大页、中断亲和、驱动裁剪 └─ 报告:HTML 可视化 + 版本记录

国产芯 + 实时 Linux 不再是“能用”,而是“好用”且“可控”。
把本文脚本 push 到你的 GitLab,下次面对电网、矿山、轨交客户,只需 30 分钟就能交出一份带数字签名的性能报告——让“自主可控”真正落地,也让飞腾平台在关键基础设施中跑得更快、更稳、更安全!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1188445.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

恒温育种系统(有完整资料)

资料查找方式&#xff1a;特纳斯电子&#xff08;电子校园网&#xff09;&#xff1a;搜索下面编号即可编号&#xff1a;CJ-51-2021-003设计简介&#xff1a;本设计是基于单片机的恒温育种系统&#xff0c;主要实现以下功能&#xff1a;可实现LCD1602显示光照强度以及温度值&am…

学术绘图新次元:书匠策AI如何用“可视化魔法”让论文图表开口说话

在学术江湖中&#xff0c;论文图表曾是“沉默的配角”——它们被困在二维平面里&#xff0c;用冷冰冰的柱状、折线或散点传递信息。但如今&#xff0c;一位名叫书匠策AI的“可视化魔法师”正打破次元壁&#xff0c;让图表学会“开口说话”&#xff0c;甚至能跳起动态的学术之舞…

使用协议转换网关实现机器人EthernetIP转成西门子Profinet的项目案例 - vfbox

VFBOX协议转换网关支持PLC,modbus,EthernetIP,Profinet,CCLink,EtherCAT,IEC61850,IEC104,bacnet,DLT645,HJ212,opc ua,opc da,DNP3。一、 项目背景与需求 某汽车零部件制造工厂的焊接产线中,自动化焊接…

冻肉绞肉机品牌口碑榜,这些厂家受热捧,行业内正规的绞肉机源头厂家怎么选择博锐市场认可度高 - 品牌推荐师

随着餐饮行业对标准化、效率化需求的提升,冻肉绞肉机作为肉类加工的核心设备,其技术迭代与市场格局正经历深刻变革。当前,行业面临设备同质化严重、售后服务响应滞后、中小品牌技术储备不足等痛点,而具备研发实力、…

为什么许多军婚会在 10 年左右走向离异?—— 制度约束、生活节奏与身份转型的三重错位

为什么许多军婚会在 10 年左右走向离异&#xff1f;—— 制度约束、生活节奏与身份转型的三重错位军婚在结婚 10 年左右集中出现离异现象&#xff0c;并非偶然&#xff0c;而是军婚特殊的制度约束、夫妻长期的生活节奏错位&#xff0c;以及服役中期的身份转型压力三者叠加的结果…

完整教程:Go语言编码规范

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

自我介绍+软工5问

这个作业属于哪个课程 班级的链接这个作业要求在哪里 作业要求的链接---- ----这个作业的目标 自我介绍、阅读并理解教材、总结自己想要获得的收获,同时熟悉博客网及Github和Git操作自我介绍 您好,我叫黄思聪,目前是…

当教育数据“活”起来:书匠策AI用可视化魔法重塑科研叙事——解锁学术图表的“未来语言”

在学术写作的江湖里&#xff0c;“一图胜千言”早已不是秘密。但当教育研究者面对堆积如山的数据时&#xff0c;如何让柱状图跳出“千篇一律”的框架&#xff1f;如何让动态趋势图在期刊编辑眼前“一眼惊艳”&#xff1f;如何让跨学科图表同时满足《教育研究》的严谨与《Nature…

2026年伞齿轮设计厂家推荐指南:伞齿轮/内齿圈/ 内齿圈/直伞齿轮/工业伞齿轮 - 品牌策略师

2026年伞齿轮设计厂家推荐指南:伞齿轮/内齿圈/ 内齿圈/直伞齿轮/工业伞齿轮在高端装备制造领域,伞齿轮作为关键传动部件,其设计精度与制造水平直接决定了机械设备的性能与寿命。随着工业4.0与智能制造浪潮的推进,市…

自动售货机系统设计(有完整资料)

资料查找方式&#xff1a;特纳斯电子&#xff08;电子校园网&#xff09;&#xff1a;搜索下面编号即可编号&#xff1a;CJ-51-2021-004设计简介&#xff1a;本设计是自动售货机系统设计&#xff0c;主要实现以下功能&#xff1a;可实现LCD12864显示商品的名称数量以及价格&…

学术图表进化论:书匠策AI如何用“视觉语法”重构科研叙事

——当数据可视化成为学术话语的“第二语言” 在学术圈&#xff0c;一张优秀的图表往往比千言万语更具说服力。然而&#xff0c;传统科研绘图工具的局限性正让研究者陷入“数据富矿、表达贫瘠”的困境&#xff1a;手动调整格式耗时耗力、跨学科图表规范难以兼顾、静态图表难以…

当教育科研遇上“可视化魔法”:书匠策AI科研绘图功能全解析

在学术江湖里&#xff0c;论文写作是一场“创意与严谨”的双重博弈。有人为数据可视化愁到脱发——想用动态地图展示教育政策影响&#xff0c;却卡在Excel数据清洗&#xff1b;想用三维关系图解析教育技术生态&#xff0c;却因工具模板有限只能画柱状图&#xff1b;更别提不同期…

2026年实验室设备选型指南:从硬件采购到智能化、合规与成本最优的战略选择 - 2026年企业推荐榜

引言:企业核心痛点与选型总览 在2025-2026年的产业周期中,中国实验室运营者正面临一个根本性的范式转换:实验室设备已不再是孤立的“仪器”,而是一个需要融入数字化工作流、满足日益严苛的合规要求、并优化全生命周…

互联网大厂Java求职面试实战:微服务与AI技术全解析

互联网大厂Java求职面试实战&#xff1a;微服务与AI技术全解析 本文通过模拟互联网大厂Java求职者谢飞机的面试过程&#xff0c;聚焦微服务、数据库、缓存、安全及AI技术&#xff0c;结合电商场景&#xff0c;逐步深入考察技术细节&#xff0c;帮助求职者系统理解核心技术与业务…

当教育论文遇上“可视化魔法”:书匠策AI科研绘图功能全解析

在学术江湖中&#xff0c;论文绘图常被视为“技术流”的终极考验&#xff1a;有人为Excel的折线图配色纠结三天&#xff0c;有人因SPSS数据格式不兼容被迫重做实验&#xff0c;更有人因期刊对图例位置的苛刻要求被拒稿五次……直到一款名为书匠策AI的科研工具横空出世&#xff…

2025年行业内口碑好的现浇搭建报价,现浇楼板/现浇钢筋混凝土/现浇阁楼/楼板搭建/钢筋混凝土现浇,现浇搭建施工口碑推荐 - 品牌推荐师

近年来,随着城市住宅结构升级与个性化空间改造需求的增长,现浇搭建行业迎来快速发展期。从别墅地下室扩建到LOFT夹层改造,从混凝土楼板浇筑到旋转楼梯定制,消费者对施工质量、材料透明度及服务专业性的要求持续提升…

性能测试新纪元:AI模拟真实用户行为

从脚本到智能的范式转移 在软件测试领域&#xff0c;性能测试一直是确保系统稳定性、可扩展性和用户体验的核心环节。传统的性能测试方法&#xff0c;如基于脚本的工具&#xff08;如JMeter或LoadRunner&#xff09;&#xff0c;通过预设的用户行为模式模拟负载&#xff0c;但…

测试覆盖率提升:AI算法优化实战解析

测试覆盖率的挑战与AI破局契机 在敏捷开发和持续交付环境中&#xff0c;测试团队面临核心矛盾&#xff1a;快速迭代需求与深度测试覆盖难以兼顾。传统覆盖率统计方法虽量化测试范围&#xff0c;但常遗漏关键路径盲区&#xff0c;且无法动态优化策略。AI技术通过智能缺口识别、…

基于GSM的家庭安防系统设计(有完整资料)

资料查找方式&#xff1a;特纳斯电子&#xff08;电子校园网&#xff09;&#xff1a;搜索下面编号即可编号&#xff1a;CJ-51-2021-005设计简介&#xff1a;本设计是基于GSM短信模块的家庭安防报警系统&#xff0c;主要实现以下功能&#xff1a;1、使用温度传感器检测室内温度…

基于单片机的LED照明系统的设计(有完整资料)

资料查找方式&#xff1a;特纳斯电子&#xff08;电子校园网&#xff09;&#xff1a;搜索下面编号即可编号&#xff1a;CJ-51-2021-006设计简介&#xff1a;本设计是基于单片机的LED照明系统的设计&#xff0c;主要实现以下功能&#xff1a;可实现LCD1602显示光照强度&#xf…