【实时性】实时性优化的一些参数设置和心得

文章介绍了博主作为国际知名终端厂商的modem芯片研发人员,在5G和6G技术领域的经验,特别是实时性优化流程,包括BIOS参数调优,Preempt-RT内核参数优化,以及操作系统环境的调整。内容涵盖了从关闭节能技术以增强实时性能,到内核配置和中断管理策略,旨在提升系统的实时响应能力。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

博主未授权任何人或组织机构转载博主任何原创文章,感谢各位对原创的支持!
博主链接

本人就职于国际知名终端厂商,负责modem芯片研发。
在5G早期负责终端数据业务层、核心网相关的开发工作,目前牵头6G算力网络技术标准研究。


博客内容主要围绕:
       5G/6G协议讲解
       算力网络讲解(云计算,边缘计算,端计算)
       高级C语言讲解
       Rust语言讲解



一、实时性优化流程

BIOS
实时操作系统内核
Linux实时性
应用

1.1 BIOS参数调优

BIOS优化主要是为了避免系统进入低功耗模式,相关的设置如下表:

BIOS选项修改后的值含义说明
Boot performance modeMax Non-turbo Performance可以使CPU运行在固定的始终频率下面,从而提供更稳定、更可预测的结果
Intel SpeedStepdisable是一个动态电源管理技术,也是一种节能技术,在禁用的情况下,CPU会按照最高频率和电压运行,避免CPU降频对实时性的影响
Intel Speed Shift Technologydisable是一种动态调整CPU频率和电压的技术,目的是提供更快的响应时间和更高的性能效率,可以根据负载的变化动态调整CPU频率和电压,对于实时性来说,开启后会引入更多不确定性
C-StatesdisableCPU节能技术,运行在CPU空闲或者低负载的情况下,降低功耗
Gfs RC6disable一种Intel的节能技术,可以降低图形核心的电源消耗,从而减少整个系统的功耗。如果在实时性操作中需要使用到图形,可以将这个功能禁用
GPU Frequency300MHZ是图形处理器的工作频率,在实时操作系统中,这个频率过高会影响系统响应时间的不确定性和抖动。
Intel VMXdisable虚拟化技术,对于实时系统来说关闭虚拟化配置可以避免资源抢占,从而优化实时系统的性能
VT-ddisable虚拟化技术,对于实时系统来说关闭虚拟化配置可以避免资源抢占,从而优化实时系统的性能
PCI Express Clock Gatingdisable关闭PCIe的时钟,降低系统开销
DMI Link ASPM Controldisable控制计算机主板上DMI电源的管理技术,达到节能降温效果
SATA Aggressive LPM Supportdisable一种SATA硬件设备电源管理技术,通过降低设备在空闲时的电源消耗,达到节能和降温的效果。为了保证SATA技术在实时任务中的活跃状态,我们将其关闭
ACPI Sleep StateSuspend Disabled一种电源管理技术,用于控制计算机在空闲时进入休眠状态,以节约电源和延长硬件寿命
Native ASPMdisable也是一种电源管理技术,这里也关闭,避免设备进入休眠状态
PCH Cross Throttlingdisable用于控制系统中多个设备共享PCIe根节点时的分配分配,当多个设备同时向根节点发送数据的时候,PCH Cross Throttling可以通过降低每个设备的带宽,来保证整体带宽的均衡分配,避免任何一个设备的带宽占用过度。
SA GVFixed High在Intel处理器中将System Agent的电压固定在一个高水平上,SA控制Intel处理器中的处理器内存、控制器和IO,设置为Fixed High有助于提升内存处理器的性能和稳定性,避免低压对实时性产生的影响
DVMT pre-Allocated64M用于在启动时为显存预先分配一定的内存空间,以提升显卡的性能和稳定性,如果配置的过高,会导致系统内存资源不足,从而导致实时任务拿到的内存资源不足,影响实时任务
Enable Hibernationdisable关闭休眠模式
USB Legacy Supportdisable关闭对旧USB系统的支持,如果实时任务中没有用到,则可以关闭来减少资源浪费
HD Audiodisable这是一个用于提供高质量的数字音频体验,如果实时任务中没有用到,则可以关闭减少带宽和处理器资源的浪费
ACPI D3Cold Supportdisable是一种将整个系统进入一种低功耗状态的技术,降低能源消耗和设备寿命
Low Power S0 idle Capabilitydisable也是一种低功耗的技术,直接关闭
Page Close idle Timeoutdisable是内核中用于节能的一种机制,当系统空闲时,关闭不使用的页面,从而节省能源并提高系统启动时的性能。这个机制需要定期扫描页面,关闭不使用的页面,所以会占用系统资源

1.2 Preempt-RT 内核参数优化

在编译内核时的参数配置,如下表:

参数设置含义说明
CONFIG_PREEMPT_RT=Y开启preempt-rt
CONFIG_PREEMPT_RCU=Y启动可抢占的RCU
CONFIG_RCU_NOCB_CPU=Y开启这个选项之后,可以选择某些CPU不参与RCU CB,例如,rcu_nocbs=X-Y
CONFIG_GENERIC_IRQ_MIGRATION=Y启动中断迁移机制,可以动态分配处理中断的处理器,例如,irqaffinity=X-Y,将中断绑定到X-Y CPU上
CONFIG_CPU_ISOLATION=Y开启CPU隔离技术,避免内核调度器将任务调度到某些CPU中,例如,isolcpus=X-Y
CONFIG_CPU_FREQ=N关闭CPU频率调节,例如,cpufreq.off=1

1.3 操作系统环境优化

  1. 将中断迁移至非实时性内核,相关命令如下:

    echo 1 > /proc/irq/8/smp_affinity
    

    其含义是将中断8,迁移至CPU0。
    在这里插入图片描述

  2. 关闭不必要的service,相关命令如下:

    #查看service list
    systemctl -t service
    
    #关闭service
    systemctl stop ServiceName
    
  3. 将任务绑定到某个CPU上,相关命令如下:

    taskset -pac <CORE_NUM> <PID>
    
  4. 提升实时任务优先级,相关命令如下:

    chrt -f -p <PID>
    


在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

从善若水

原创不易,感谢支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值