CPU中断数查看

多核CPU每个核心CPU发生中断的数量查看

# mpstat -I SUM -P ALL 1 3
Linux 5.4.0-40-generic (verify-new-511kernel) 08/28/2021 _x86_64_ (72 CPU) 09:09:30 AM CPU intr/s
09:09:31 AM all 18762.00
09:09:31 AM 0 253.00
09:09:31 AM 1 256.00
09:09:31 AM 2 253.00
09:09:31 AM 3 253.00
09:09:31 AM 4 254.00
09:09:31 AM 5 260.00

说明:

pstat  [-I {SUM| CPU | SCPU}][-P {|ALL}] [internal [count]]
参数 解释
-I 查看中断 {SUM 表示汇总每个CPU上的中断数| SCPU 单个软件中断数}
-P {|ALL} 表示监控哪个CPU, cpu在[0,cpu个数-1]中取值
internal 相邻的两次采样的间隔时间、
count 采样的次数,count只能和delay一起使用

当中断集中在某个CPU时,会把这个CPU打满,建议将中断平均分配每个CPU处理。

查看中断数高的CPU忙于处理哪些中断

命令:cat /proc/interrupts

cat /proc/interrupts
CPU0 CPU1 CPU2 CPU3
0: 245 0 0 7134094 IO-APIC-edge timer
8: 0 0 49 0 IO-APIC-edge rtc
9: 0 0 0 0 IO-APIC-level acpi
66: 67 0 0 0 IO-APIC-level ehci_hcd:usb2
74: 902214 0 0 0 PCI-MSI eth0
169: 0 0 79 0 IO-APIC-level ehci_hcd:usb1
177: 0 0 0 7170885 IO-APIC-level ata_piix, b4xxp
185: 0 0 0 59375 IO-APIC-level ata_piix
NMI: 0 0 0 0
LOC: 7104234 7104239 7104243 7104218
ERR: 0
MIS: 0

查看网卡当前中断号绑定的CPU编号

cat /proc/interrupts | head -n1    && cat  /proc/interrupts | grep eth
CPU0 CPU1
124: 1733966 0 IR-PCI-MSI 49283073-edge eth0-0
125: 0 0 IR-PCI-MSI 49283074-edge eth0-1
126: 0 0 IR-PCI-MSI 49283075-edge eth0-2
127: 0 0 IR-PCI-MSI 49283076-edge eth0-3
128: 0 0 IR-PCI-MSI 49283077-edge eth0-4
129: 0 0 IR-PCI-MSI 49283078-edge eth0-5
130: 0 0 IR-PCI-MSI 49283079-edge eth0-6
131: 0 0 IR-PCI-MSI 49283080-edge eth0-7

如上看每个网卡队列对应一个中断编号,以eth0-0 网卡队列为例,对应中断号为124 查看该队列绑定的CPU

cat  /proc/irq/124/smp_affinity_list  查看绑定的CPU列表,(10进制表示)

# cat /proc/irq/124/smp_affinity_list
0

如上表示绑定的为CPU0

cat /proc/irq/124/smp_affinity  查看绑定的CPU列表 (16进制表示)

# cat /proc/irq/124/smp_affinity
00,00000000,00000001

将中断号绑定所有CPU

绑定中断到0、1、2、3核

root@verify-new-511kernel:~# echo 0,1,2,3 >  /proc/irq/124/smp_affinity_list
root@verify-new-511kernel:~# cat /proc/irq/124/smp_affinity
00,00000000,0000000f
root@verify-new-511kernel:~# cat /proc/irq/124/smp_affinity_list
0-3
root@verify-new-511kernel:~#

只绑定到个别核心例如CPU0和CPU1 可以写0-1 代表 连续的核心范围

# echo 0-1 >  /proc/irq/124/smp_affinity_list
# cat /proc/irq/124/smp_affinity_list
0-1
# cat /proc/irq/124/smp_affinity
00,00000000,00000003

绑定所有的核心(本例72个核心)

root@verify-new-511kernel:~# echo 0-71 >  /proc/irq/124/smp_affinity_list
root@verify-new-511kernel:~# cat /proc/irq/124/smp_affinity
ff,ffffffff,ffffffff

CPU中断数查看与网卡中断绑核的更多相关文章

  1. 把网卡中断绑定到CPU,最大化网卡的吞吐量(转)

    先来看一下问题, 我们通过 ifconfig 查看接口的名称 为 p15p1, 一般机器为 eth0 再通过命令 ➜ ~ cat /proc/interrupts | head -n 1 && ...

  2. [Linux 性能调优] 网卡中断与CPU的绑定问题

    在Linux的网络调优方面,如果你发现网络流量上不去,那么有一个方面需要去查一下:网卡处理网络请求的中断是否被绑定到单个CPU(或者说跟处理其它中断的是同一个CPU). 先说一下背景 网卡与操作系统的 ...

  3. 多CPU下基于e1000e驱动的数据包以及网卡中断流程分析.doc

    http://wenku.baidu.com/link?url=mMKDH_fKmUXN7L6rANIFHjoHdKCYBLlDrqoYB1daDTEkNFk9Bt9xlJtS_4BKBj6w22WD ...

  4. centos linux系统日常管理复习 CPU物理数逻辑核数,iftop ,iotop ,sar ,ps,netstat ,一网卡多IP,mii-tool 连接,ethtool速率,一个网卡配置多个IP,mii-tool 连接,ethtool速率 ,crontab备份, 第十八节课

    centos linux系统日常管理复习 物理CPU和每颗CPU的逻辑核数,uptime ,w,vmstat,iftop ,iotop ,sar ,ps,netstat ,一个网卡配置多个IP,mii ...

  5. Linux系统针对网卡中断的优化处理

    摘要: 中断: 当网卡接收到数据包后,会触发硬中断,通知CPU来收包.硬中断是一个CPU和网卡交互的过程.这其实会消耗CPU资源.特别是在使用速度极快的万兆网卡 之后,大量的网络交互使得CPU很大一部 ...

  6. 【基础知识】CPU上下文切换(进程上下文切换 - 线程上下文切换 - 中断上下文切换)

    CPU 上下文切换是什么 CPU 上下文切换,就是先把前一个任务的 CPU 上下文(也就是 CPU 寄存器和程序计数器)保存起来,然后加载新任务的上下文到这些寄存器和程序计数器,最后再跳转到程序计数器 ...

  7. 如何查看服务器CPU核心数和线程数

    知道服务器CPU型号,那么我们如何在服务器里面查看服务器CPU核心数和线程数呢? 步骤: 先用鼠标右键点击屏幕最下方的任务栏空白处.会弹出一个菜单. 在菜单中用鼠标左键点选“启动任务管理器”. 点击任 ...

  8. 查看电脑CPU核心数的方法

    查看电脑CPU核心数的方法: 方法一: 同时按下[Ctrl+Shift+Esc]组合快捷键打开任务管理器: 点击[性能]就可以看出是几核CPU了: 方法二: 在计算机图标上面点击右键,选择“管理”: ...

  9. x86架构中的外部中断结构-Part 1:中断控制器的演化

    本文主要讲解了x86体系架构从外部设备接受中断的过程,本文是系列文章的第一部分,试图回答以下问题: 什么是PIC以及它的用途是什么? 什么是APIC以及它的用途是什么?LAPIC和I/O APIC的目 ...

随机推荐

  1. js数组常用添加方法有两种

        //头部     //this.list.unshift({name:this.itemName,date:new Date()});     //尾部         this.list.p ...

  2. 洛谷 P7879 -「SWTR-07」How to AK NOI?(后缀自动机+线段树维护矩乘)

    洛谷题面传送门 orz 一发出题人(话说我 AC 这道题的时候,出题人好像就坐在我的右侧呢/cy/cy) 考虑一个很 naive 的 DP,\(dp_i\) 表示 \([l,i]\) 之间的字符串是否 ...

  3. webpack--css、html 和 js 代码的常用处理

    前言 本文来总结下webpack中 css.js.html 代码常见的处理方式,学习笔记仅供参考. 正文 1.css样式文件处理 (1)提取css为一个单独的文件 在我们前面学习了webpack的基础 ...

  4. R语言与医学统计图形-【9】过渡函数qplot

    ggplot2绘图系统 基础绘图包向ggplot2过渡--qplot 绘图理念的不同: 基础绘图包是先铺好画布,再在这张画布上作图(常规思维): ggplot2打破常规,采用图层叠加的方法. qplo ...

  5. C语言计算fastq文件GC含量

    C语言小练习:计算非压缩fastq格式的GC含量 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <strin ...

  6. Linux文件系统属性和权限概念详解(包含inode、block、文件权限、文件软硬链接等)

    Linux中的文件属性 ls -lih 包括:索引节点(inode),文件类型,权限属性,硬链接数,所归属的用户和用户组,文件大小,最近修改时间,文件名等等 索引节点:相当于身份证号,系统唯一,系统读 ...

  7. day11 序列化组件、批量出入、自定义分页器

    day11 序列化组件.批量出入.自定义分页器 今日内容详细 ajax实现删除二次提醒(普通版本) ajax结合第三方插件sweetalert实现二次提醒(样式好看些) ajax如何发送文件数据 aj ...

  8. Swagger2异常 java.lang.NumberFormatException: For input string: ""

    问题在访问swagger首页时报错: java.lang.NumberFormatException: For input string: "" at java.lang.Numb ...

  9. C++之error: cannot bind non-const lvalue reference of type ‘myString&’ to an rvalue of type ‘myString’

    先看代码(不想看代码可以直接看代码后的问题描述) //header.h #ifndef _HEADER_H #define _HEADER_H #define defaultSize 128 #inc ...

  10. 关于mysql自动备份的小方法

    目前流行几种备份方式:逻辑备份.物理备份.双机热备份.备份脚本的编写等,本文分别从这些方面总结了MySQL自动备份策略的经验和技巧,一起来看看. 目前流行几种备份方式: 一.逻辑备份:使用mysql自 ...