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

news2024/11/25 13:24:39

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

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


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

文章目录

  • 一、实时性优化流程
    • 1.1 BIOS参数调优
    • 1.2 Preempt-RT 内核参数优化
    • 1.3 操作系统环境优化



一、实时性优化流程

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>
    


在这里插入图片描述

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

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

相关文章

Deformable DETR 论文学习

1. 解决了什么问题&#xff1f; DETR 去除了目标检测算法中的人为设计&#xff0c;取得了不错的表现。但是其收敛速度很慢&#xff0c;对低分辨率特征识别效果差&#xff1a; 模型初始化时&#xff0c;注意力模块给特征图上所有的像素点分配的权重是均匀的&#xff0c;就需要…

chatgpt赋能Python-python5的阶乘

Python5的阶乘介绍 Python是一门广泛应用于编写脚本、自动化、爬虫、数据分析等方面的编程语言&#xff0c;也是很多科研领域使用的首选。Python的功能和灵活性可以帮助用户解决各种问题&#xff0c;而本文要介绍的是Python中计算阶乘的方法。 阶乘是数学中的一个概念&#x…

fullter 学习记录_01_插件整理

flutter学习记录第一节--搭建项目及路由的设置 1.轮播图: flutter_swiper1.1 用处1.2 导入flutter_swiper库1.3 导入库&#xff0c;运行后可能遇到的问题1.4 属性说明1.5 代码案例 2. flutter_screenutil2.1 用处2.2 引用2.3 使用说明2.4 代码实现按理2.5 ScreenUtl 的封装 1.轮…

UNIX环境高级编程——守护进程

13.1 引言 守护进程&#xff08;daemon&#xff09;是生存期长的一种进程。它们常常在系统引导装入时启动&#xff0c;仅在系统关闭时才终止。因为它们没有控制终端&#xff0c;所以说它们是在后台运行的。 13.2 守护进程的特征 系统进程依赖于操作系统实现。父进程ID为0的各…

xxs跨站之原理分类及攻击手法

xss跨站达到原理&#xff0c;危害和特点 他和语言没有太大关系&#xff0c;它大部分都是属于一个前端的漏洞&#xff0c;搭建一个简易的php网站存在xss跨站漏洞 访问这个网站&#xff0c;x1&#xff0c;就输出1&#xff0c; 如果我们把x<script>alert(1)</script&g…

系统分析师考试之论文框架

系统分析师考试之论文框架 系统分析师考试之论文框架

SpringBoot—常用注解

目录 一、注解(annotations)列表 二、注解(annotations)详解 三、JPA注解 四、springMVC相关注解 五、全局异常处理 一、注解(annotations)列表 SpringBootApplication&#xff1a; 包含了ComponentScan、Configuration和EnableAutoConfiguration注解。其中ComponentScan…

linux 读写锁 pthread_rwlock

专栏内容&#xff1a;linux下并发编程个人主页&#xff1a;我的主页座右铭&#xff1a;天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物&#xff0e; 目录 前言 概念介绍 应用场景 接口说明 头文件 rwlock定义 初始化/销毁 两种初始化方…

算法设计与智能计算 || 专题九: 基于拉普拉斯算子的谱聚类算法

谱聚类 文章目录 谱聚类1. 信息增益的度量2. 谱聚类: 寻找最优的函数向量 f \boldsymbol{f} f2.1 : 寻找一个最优的函数向量 f \boldsymbol{f} f2.2 寻找鲁棒性更强的多个函数向量2.3 谱聚类(spectral clustering)算法 小结 1. 信息增益的度量 由于数据集 X [ x 1 , x 2 ,…

自动化仓储管理系统(WMS)

仓储是现代物流的一个重要组成部分&#xff0c;在物流系统中起着至关重要的作用&#xff0c;是厂商研究和规划的重点。高效合理的仓储可以帮助厂商加快物资流动的速度&#xff0c;降低成本&#xff0c;保障生产的顺利进行&#xff0c;并可以实现对资源有效控制和管理。 随着我…

CVE-2023-27363 FOXIT PDF READER与EDITOR任意代码执行漏洞复现

目录 0x01 声明&#xff1a; 0x02 简介&#xff1a; 0x03 漏洞概述&#xff1a; 0x04 影响版本&#xff1a; 0x05 环境搭建&#xff1a; 文件下载&#xff1a; 0x06 漏洞复现&#xff1a; POC下载&#xff1a; 利用POC&#xff1a; RCE&#xff1a; 0x07 修复建议&a…

2023.5.21 第五十四次周报

目录 前言 文献阅读:跨多个时空尺度进行预测的时空 LSTM 模型 背景 本文思路 本文解决的问题 方法论 SPATIAL 自动机器学习模型 数据处理 模型性能 代码 用Python编写的LSTM多变量预测模型 总结 前言 This week, I studied an article that uses LSTM to solve p…

Kuberadm安装部署

目录 1、所需配置 2、准备环境 3、安装Docker 4、安装Kubeadm、Kubelet和Kuberctl 5、部署K8s集群 6、初始化kubeadm 7、设置kubecrl 8、部署网络插件flannel 测试 9、部署Dashboard 10、安装Harbor私有仓库 11、内核参数优化方案 1、所需配置 主机名系统要求IP地…

一款C#开发的窗口文本提取开源软件

窗体上的文字&#xff0c;我们是无法直接复制的&#xff0c;如果要获取&#xff0c;大家第一反应肯定是利用OCR&#xff0c;但是今天给大家推荐一个通过Hook原理来抓取文本的开源项目。 项目简介 这是一个基于.Net Framework开发的&#xff0c;功能强大的文本提取工具&#x…

【消息中间件】为什么要用消息中间件?解决了什么问题?

文章目录 前言一、什么是消息中间件&#xff1f;二、为什么使用&#xff1f;二、使用消息中间件前后对比三、当前几种中间件&#xff1a;四、使用消息中间件场景&#xff1a; 前言 一般认为&#xff0c;采用消息传送机制/消息队列 的中间件技术&#xff0c;进行数据交流&#…

[CISCN 2019华东南]Web4 day5

考察&#xff1a;任意文件读取 获取网卡地址 伪随机 打开界面&#xff0c;点击read somethings直接进行了跳转 直接修改url&#xff0c;发现没显示&#xff0c;但是访问错误的路由就会有no response 读取flag也无果&#xff0c;那就读一下/app/app.py&#xff0c;为什么读这个&…

postgresql|数据库|插件学习(二)---postgresql-12的外置插件pg_profile的启用和使用

前言&#xff1a; postgresql数据库有非常多的插件&#xff0c;那么&#xff0c;pg_profile算是监控类的插件&#xff0c;该插件会通过内置的pg_stat_statements插件和dblink插件这两个插件监控查询postgresql的状态&#xff0c;并可以通过打快照的方式得到awr报告。 ###注&a…

攻防世界 wife_wife

查看提示&#xff1a;不需要爆破 进入到靶场中&#xff0c;发现需要注册用户 到达注册页面&#xff0c;is admin需要打勾&#xff0c;并输入同样 burpsuite抓包 原来payload&#xff1a;{"username":"1","password":"1","isAdmin…

MySQL数据库---笔记2

MySQL数据库---笔记2 一、函数1.1、字符串函数1.2、数值函数1.3、日期函数1.4、流程函数 二、约束2.1、概述2.2、演示2.3、外键约束 一、函数 函数 是指一段可以直接被另一段程序调用的程序或代码。 1.1、字符串函数 函数功能CONCAT(S1,S2,…Sn)字符串拼接&#xff0c;将S1&…

分布式医疗云平台【基础功能搭建、数据表定义、ERP业务表、系统表、其它配置表 】(三)-全面详解(学习总结---从入门到深化)

基础功能搭建 创建数据库 数据表定义 ERP业务表 系统表 其它配置表 基础功能搭建 创建数据库 执行脚本&#xff0c;创建基础数据 数据表定义 业务表 his_care_order: 药用处方表&#xff0c;涉及的业务模块&#xff1a;处方收费、处方发药、新开检查 his_care_history…