首页
学习
活动
专区
圈层
工具
发布

宋宝华:谈一谈Linux让实时高性能任务独占CPU的事

内容简介 本文主要讨论在高实时要求、高效能计算、DPDK等领域,Linux如何让某一个线程排他性独占CPU;独占CPU涉及的线程、中断隔离原理;以及如何在排他性独占的情况下,甚至让系统的timer tick...也不打断独占任务,从而实现最低的延迟抖动。...在工程中,我们有时候有一种需求,就是让某个能够独占CPU,这个CPU什么都不做,就只做指定的任务,从而获得低延迟、高实时的好处。...重新运行CPU2只有一个任务的场景,看看它的timer中断发生情况: ? 发现CPU2上面的tick稳定在188上面,这样相信你会更加开心,因为你独占地更加彻底了!...Part 4 最佳实践指南 对于实时性要求高、高性能计算等场景,如果要让某个任务独占CPU,最理想的选择是: 1. 采用isolcpus隔离CPU 2. 将指定任务绑定到隔离CPU 3.

9.5K22
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Linux查询CPU信息

    1.基本概念 物理CPU数 主板上实际插入的CPU数量,可以数不重复的physical id 有几个(physical id) CPU核数 单块CPU上面能处理数据的芯片组的数量,如双核、四核等...(CPU cores) 逻辑CPU数 一般情况下,逻辑CPU数=物理CPU个数每颗核数,如果不相等的话,则表示服务器的CPU支持超线程技术(简单来说,它可使处理器中的1颗内核如2颗内核那样在操作系统中发挥作用...这样一来,操作系统可使用的执行资源扩大了一倍,大幅提高了系统的整体性能,此时逻辑CPU=物理CPU个数每颗核数*2) 它们之间的关系 总核数 = 物理CPU个数 * 每颗物理CPU的核数 总逻辑...CPU数 = 物理CPU个数 * 每颗物理CPU的核数 * 超线程数 2.查看物理CPU的个数 $ cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc...-l 2 3.查看逻辑CPU个数 $ cat /proc/cpuinfo |grep "processor"|wc -l 24 4.查看CPU核数 $ cat /proc/cpuinfo |grep

    12.9K10

    Linux收发包绑定CPU

    /your_server`将你的发包进程绑定在 CPU 2,那么所有 send() 都会在 CPU 2 上执行,TX 流量也就自然从 CPU 2 发出。...✅ 方法 2:基于 XPS(Transmit Packet Steering)XPS 是 Linux 提供的一种优化机制,用于将不同 CPU 发起的 TX 操作 映射到特定的 TX 队列。...EBPF不太了解.待研究...RXRX方向通过绑定流到队列,然后将队列中断绑定到对应cpu实现了流和中断cpu的绑定,然后中断cpu在完成skb建立后会触发对应cpu的软中断,上处理协议栈流程,最后送到...socket进行应用层处理.# 查看中断在 CPU 分布 (硬中断的cpu)cat /proc/interrupts | grep eth0# 查看软中断执行在哪些 CPU 上 (软中断的cpu)cat...cpu上.因此我们只能尝试使用aRFS(auto-receive-flow-scaling)将流的软中断cpu配置成和应用处理的cpu一致,来提升cpu的cache命中率;如果网卡支持3中的ntuple

    22720

    ​Linux CPU 性能优化指南

    Linux 为每个 CPU 维护一个就绪队列,将 R 状态进程按照优先级和等待 CPU 时间排序,选择最需要的 CPU 进程执行。这里运行进程就涉及了进程上下文切换的时机: 进程时间片耗尽、。...Linux 通过/proc虚拟文件系统向用户控件提供系统内部状态信息,其中/proc/stat则是 CPU 和任务信息统计。...上,可以提高 CPU 缓存命中率,减少跨 CPU 调度带来的上下文切换问题 CPU 独占:跟 CPU 绑定类似,进一步将 CPU 分组,并通过 CPU 亲和性机制为其分配进程。...为进程设置资源限制:使用 Linux cgroups 来设置进程的 CPU 使用上限,可以防止由于某个应用自身的问题,而耗尽系统资源。...开启 irqbalance 服务或者配置 smp_affinity,就可以把中断处理过程自动负载均衡到多个 CPU 上。 参考 极客时间:Linux 性能优化实战 ?

    9K55

    Linux - CPU性能评估_详解查看CPU性能的命令

    时间片的进程数,这个值如果长期大于系统CPU的个数,说明CPU不足,需要增加CPU。...上面这两个值越大,会看到由内核占用CPU的时间会越多。 cpu项显示了CPU的使用状态,此项是我们关注的重点。 us列显示了用户进程占用CPU的时间百分比。...这可能是程序使用单线程的原因,单线程只使用一个CPU,导致这个CPU占用率为100%,无法处理其他请求,而其他的CPU却闲置,这就导致了整体CPU使用率不高,而应用缓慢现象的发生。...统计单个CPU的使用情况 [root@VM-24-3-centos ~]# sar -P 0 3 5 Linux 3.10.0-1160.11.1.el7.x86_64 (VM-24-3-centos)...[root@VM-24-3-centos ~]# iostat -c Linux 3.10.0-1160.11.1.el7.x86_64 (VM-24-3-centos) 03/05/2023

    8.1K30

    国产CPU厂商市场份额提升 龙芯、海光、鲲鹏等谁能独占半壁江山?

    近年来,随着我国对信创产业的日益重视,以及国产技术的持续创新和突破,国产CPU厂商发展迅速。其中最为直观的一个表现就是,在中国服务器市场,国产CPU厂商占据的份额也逐步扩大。...如今,包括龙芯、海光、鲲鹏等在内的国产CPU厂商在国内服务器市场的份额,已由几年前的零头提升到25%左右。大好形势下,增长势头强劲的国产CPU厂商有哪些抢眼的市场表现?...海光CPU基于x86指令集,能够兼容数百万款基于x86指令集的系统软件和应用软件,这意味着海光的CPU可以无缝替换国际主流的CPU,不需要对软件进行大量的适配,降低用户迁移风险,减少用户迁移成本。   ...如今,海光 CPU 产品已广泛应用于电信、金融、互联网、教育、交通等行业。...以海光为代表的国产CPU厂商,持续提升和扩大的国内服务器市场份额,何尝不是国产CPU崛起的最佳注脚呢?未来,龙芯、海光、鲲鹏等国产CPU厂商将带给市场怎样的惊喜,我们拭目以待。

    1.5K20

    Linux系统下物理CPU和逻辑CPU的区别

    01 问题 最近在搞Linux下性能评测,在做CPU评测时发现了个有意思的现象,因为uos系统是自带系统监视器的,在对输入法进程检测时,发现其CPU占用率为1%: ?...02 问题查询 查询了资料才发现Linux下的CPU是区分物理CPU和逻辑CPU的,呼,好险,如果提了bug,估计开发就该疯了。。。 ? ? 那么什么是物理CPU?什么是逻辑CPU?...Ps:Linux下top查看的CPU也是逻辑CPU个数 查询命令:cat /proc/cpuinfo | grep "processor" | wc –l ?...07 说在最后 在Linux下进行测试时要摒弃很多Windows的固有思维,如进程概念,Windows下关闭输入法相关进程后台会自动退出,但是Linux下后台进程是随着系统启动,除非强杀否则不会退出...;同样,Linux下的CPU和内存机制与Windows也有着很大不同,尤其是内存的管理机制,感兴趣同学可以自行查询相关概念,相信一定会收益颇丰。

    7.8K10
    领券
    首页
    学习
    活动
    专区
    圈层
    工具
    MCP广场