LINUX查看进程在哪个cpu核上运行的方法

2023-11-11

方法一:使用top命令

top 命令可以显示进程在哪个CPU上运行,可以连续监视随着时间的改变,该进程运行在哪个cpu上是否发生变化。
使用步骤:

  1. top -p [进程号],例如 top -p 3000
  2. 按下"F"键,使用上下键选择P = Last Used Cpu,并按下空格键,出现 “*”即代表选中,再按“q"退出。

方法二:使用taskset命令

taskset可以查看具体某一进程(或 线程)运行在哪个cpu上,也可以使某个程序运行在某个或某些cpu上

taskset 参数选项:
(1)-p, --pid :操作现有的PID,不启动新任务

(2)-c, --cpu-list :指定处理器的数字列表,而不是位掩码。列表可以包含多个项目,以逗号和范围分隔。例如,0、5、7、9 - 11。

1)显示进程运行的CPU: -p参数
例子1:
[root@localhost ~]# taskset -p 21184
显示结果:
pid 21184’s current affinity mask: ffffff
注:21184是进程编号。显示结果的ffffff实际上是二进制24个低位均为1的bitmask,每一个1对应于1个CPU,表示该进程在24个CPU上运行。
例子2:
[root@localhost ~]# taskset -p 2030
显示结果:
pid2030’s current affinity mask: f
注:说明sshd在4颗CPU上随机进行切换。
例子3:
[root@localhost ~]# taskset -p 2726
显示结果:
pid 2726’s current affinity mask: 3
注:显示的十进制数字3转换为2进制为最低两个是1,每个1对应一个cpu,所以进程运行在2个cpu上。

*注意:*cpu的标号是从0开始的,所以cpu1表示第二个cpu(第一个cpu的标号是0)。

关于换算方式
8个核心的CPU ID: 7 6 5 4 3 2 1 0
对应10的十进制数位: 128 64 32 16 8 4 2 1
十六进制的16个数是:0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F
对应每一个16进制的二进制位:0=0000,1=0001,2=0010,3=0011,4=0100,5=0101,6=0110,7=0111,8=1000,9=1001,A=1010,
B=1011,C=1100,D=1101,E=1110,F=1111
那么例如出现pid 8987’s current affinity mask: ff ff是16进制,转换二进制:11111111,意思就是sshd在8个CPU上进行却换!所以对应每一个数值!
比如说16进制的40,那么转换二进制01000000,意思就是在第7块CPU上运作


2)指定进程运行在某个特定的CPU上: taskset -pc 3 21184
显示结果:
pid 21184’s current affinity list: 0-23
pid 21184’s new affinity list: 3
注:3表示CPU将只会运行在第4个CPU上(从0开始计数)。


参考文章
[1]: https://www.cnblogs.com/snooker/p/10942566.html
[2]:https://blog.csdn.net/xluren/article/details/43202201
[3]:https://blog.csdn.net/chuxuan909/article/details/72465748
[4]:https://blog.csdn.net/guotianqing/article/details/80958281

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

LINUX查看进程在哪个cpu核上运行的方法 的相关文章

  • X11 模式对话框

    如何使用 Xlib 在 X11 中创建模式对话框 模态对话框是一个位于应用程序其他窗口之上的窗口 就像瞬态窗口一样 并且拒绝将焦点给予应用程序的其他窗口 在 Windows 中 当试图从模态窗口夺取焦点时 模态也会通过闪 烁模态窗口的标题栏
  • linux下写入后崩溃

    如果我使用 write 将一些数据写入磁盘上的文件会发生什么 但我的应用程序在刷新之前崩溃了 如果没有系统故障 是否可以保证我的数据最终会刷新到磁盘 如果您正在使用write 并不是fwrite or std ostream write 那
  • 从 Python 访问 802.11 无线管理帧

    我想从 Linux 上的 Python 嗅探 802 11 管理 探测请求 帧 这可以从 Scapy 中实现 如下所示 coding utf 8 from scapy all import def proc p if p haslayer
  • 如何在gnuplot中将字符串转换为数字

    有没有办法将表示数字 以科学格式 的字符串转换为 gnuplot 中的数字 IE stringnumber 1 0e0 number myconvert stringnumber plot 1 1 number 我可能使用 shell 命令
  • 查看 Linux 上的多核或多 CPU 利用率

    我有一个在 Linux 上运行的程序 我需要确定它如何利用所有 CPU 内核 有没有什么程序可以查看这些信息 跑过 top 命令并按下 1 查看各个核心
  • 使用 gcc 理解共享库

    我试图理解 C 中共享库的以下行为 机器一 cat one c include
  • 如何设置Java线程的CPU核心亲和力?

    我搜索了以前关于类似主题的帖子 但找不到合适的答案 因此提出这个问题 非常感谢您帮助回答 我知道在 Linux 中通过任务集命令设置进程与特定 CPU 核心的关联性 但我想设置 Java 线程与特定 cpu 核心的亲和力 以便属于同一进程的
  • 无需 root 访问权限即可安装 zsh? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 有可能 以及如何 我确实需要在几台具有 ssh 访问权限 但没有 root 访问权限 的远程计算机上使用此功能 下载 zsh wget O zsh t
  • 在 debian wheezy amd64 上安装 ia32-libs

    我正在使用 Debian 7 喘息 amd64 uname a Linux tzwm debian 3 2 0 4 amd64 1 SMP Debian 3 2 51 1 x86 64 GNU Linux 我想安装ia32 libs在我的
  • 裸机交叉编译器输入

    裸机交叉编译器的输入限制是什么 比如它不编译带有指针或 malloc 的程序 或者任何需要比底层硬件更多的东西 以及如何才能找到这些限制 我还想问 我为目标 mips 构建了一个交叉编译器 我需要使用这个交叉编译器创建一个 mips 可执行
  • 在 Linux 控制台中返回一行?

    我知道我可以返回该行并用以下内容覆盖其内容 r 现在我怎样才能进入上一行来改变它呢 或者有没有办法打印到控制台窗口中的特定光标位置 我的目标是使用 PHP 创建一些自刷新的多行控制台应用程序 Use ANSI 转义码 http en wik
  • 可以作为命令行参数传递多少数据?

    在 Linux 下生成进程时可以发送多少字节作为命令行参数 gahooa 推荐了一篇好文章http www in ulm de mascheck various argmax http www in ulm de mascheck vari
  • 完整的 C++ i18n gettext()“hello world”示例

    我正在寻找完整的 i18ngettext 你好世界的例子 我已经开始了一个基于的脚本使用 GNU gettext 的本机语言支持教程 https web archive org web 20130330233819 http oriya s
  • 如何在特定的Java版本上运行应用程序?

    如何运行具有特定 Java 版本的应用程序 我安装了三个 Java 版本 myuser mysystem sudo update alternatives config java There are 3 choices for the al
  • 用于时间线数据的类似 gnuplot 的程序

    我正在寻找一个类似 gnuplot用于在时间轴中绘制数据图表的程序 类似 gnuplot 在 Linux 上运行 命令行功能 GUI 对我帮助不大 可编写脚本的语法 输出为 jpg png svg 或 gif 输出应该是这样的 set5 s
  • pthread_self() 返回的线程 ID 与调用 gettid(2) 返回的内核线程 ID 不同

    这句话来自于pthread self 的手册页 http linux die net man 3 pthread self 那么 我应该根据什么来决定是否应该使用pthread self or gettid确定哪个线程正在运行该函数 两者都
  • php_network_getaddresses: getaddrinfo 失败: 名称或服务未知 (0) 连接失败..!

    我正在使用 php 邮件程序功能 但出现以下错误 如何修复它 2016 01 22 06 15 48 SMTP 错误 无法连接到服务器 php network getaddresses getaddrinfo失败 名称或服务未知 0 连接失
  • 用于获取特定用户 ID 和进程数的 Bash 脚本

    我需要 bash 脚本来计算特定用户或所有用户的进程 我们可以输入 0 1 或更多参数 例如 myScript sh root deamon 应该像这样执行 root 92 deamon 8 2 users has total proces
  • 为什么 call_usermodehelper 大多数时候都会失败?

    从内核模块中 我尝试使用 call usermodehelper 函数来执行可执行文件 sha1 该可执行文件将文件作为参数并将文件的 SHA1 哈希和写入另一个文件 名为输出 可执行文件完美运行 int result 1 name hom
  • aarch64 Linux 硬浮点或软浮点

    linux系统有arm64 有arm架构armv8 a 如何知道 Debian 运行的是硬浮动还是软浮动 符合 AAPCS64 GNU GCC for armv8仅提供硬浮动aarch64工具链 这与 armv7 a 的 GCC 不同 后者

随机推荐

  • 图解 HTTP 常见问题

    一 HTTP 基本概念HTTP 是什么 描述一下HTTP 是超文本传输协议 也就是HyperText Transfer Protocol 能否详细解释 超文本传输协议 HTTP的名字 超文本协议传输 它可以拆成三个部分 超文本 传输 协议
  • shell tr 命令

    tr是translate的简写 亦即翻译 但是遗憾的是 它不能翻译句子 只能翻译单个字符 1 tr的工作原理是什么 先记住一点 tr命令不接受指定的文件参数 而只是对标准输入进行翻译 tr的命令格式是tr SET1 SET2 凡是在SET1
  • 回归模型 第5篇:knn回归

    基于最邻近算法的分类 本质上是对离散的数据标签进行预测 实际上 最邻近算法也可以用于对连续的数据标签进行预测 这种方法叫做基于最邻近数据的回归 预测的值 即数据的标签 是连续值 通过计算数据点最临近数据点平均值而获得预测值 一 sklear
  • 树莓派与阿里云服务器之间的无线通信(非局域网)

    参考 Linux虚拟机sqlite数据库安装教程 作者 图触靓 发布时间 2020 08 01 15 45 026 网址 https blog csdn net bhbhhyg article details 107731166 购买服务器
  • 当前的软件潮流

    1 以ERP为代表 注重业务逻辑 模式 数据存储 比较经典的书籍有Fowler的 lt 企业应用架构模式 gt 等 2 SaaS 一些通用型的企业需求越来越倾向于使用data center提供的服务 如CRM HCM human capit
  • 关于android instrumentation的理解、使用

    一般的应用不太会用到instrumentation 所以网上对其介绍也比较少 但因其强大的跟踪application及activity生命周期的功能 用于android 应用测试框架中 被做为基类使用 instrumentation的官方文
  • vooc是什么快充协议_一山更比一山高,常见的快充协议有哪些?

    快充这一领域充分诠释了 一山还有一山高 这一句话 当 65W 还历历在目的时候 90W 的联想拯救者新机冒出来了 这还不止 小米随即有一款 120W 的新机通过 3C 认证 快充的领军者 OV 两厂自然不会落下 vivo 宣布 8 月份将有
  • chrome插件使用整理

    1 postman 功能 模拟网页调试与发送网页HTTP请求 安装 进入chrome网上应用商店 搜索postman 点击添加至chrome 装好后 启用即可 使用 具体如下图 设置完请求 发送即可 总结 构建请求方便 对于调试API 以及
  • RK3399Pro LVDS接口触摸屏调试

    一 概述 市场上的触摸屏大都是由LCD与TP组成 LCD用于显示 TP用于反馈触摸点信息 目前选用的LCD屏为LVDS接口而RK3399系列没有原生LVDS接口 所以这里我们就需要用到信号转换芯片 将MIPI信号转为LVDS信号 二 LCD
  • C语言中的exit()函数

    函数名 exit 所在头文件 stdlib h 功 能 关闭所有文件 终止正在执行的进程 exit 1 表示异常退出 这个1是返回给操作系统的 exit x x不为0 都表示异常退出 exit 0 表示正常退出 exit 的参数会被传递给一
  • 不能初始化数据库支持endnote_终于修复了我的EndNote文献管理数据库

    之前一直用EndNote来管理文献资料 由于家里的电脑和办公室的电脑资料需要经常同步 就用115网盘来做为同步盘来同步文献资料库 但EndNote有个特点 就是在关闭它时才会最后更新文献资料库所在的data rdb目录的一些文件 因此 在用
  • webpack

    一 是什么 HMR全称 Hot Module Replacement 可以理解为模块热替换 指在应用程序运行过程中 替换 添加 删除模块 而无需重新刷新整个应用 例如 我们在应用运行过程中修改了某个模块 通过自动刷新会导致整个应用的整体刷新
  • iscsi 服务器

    iscsi服务器简介 当我们的系统需要大量的磁盘容量 但是身边却没有足够的存储设备 此时 我们可以使用通过网络的scsi磁盘 即Internet scsi iscsi iscsi主要是通过TCP IP的技术 将存储设备端通过iscsi ta
  • Python3.0+学习记录之数字

    Python3 数字 Number Python 数字数据类型用于存储数值 数据类型是不允许改变的 这就意味着如果改变数字数据类型得值 将重新分配内存空间 以下实例在变量赋值时 Number 对象将被创建 var1 1 var2 10 您也
  • 如何一步更改文件夹及其子文件夹/文件的权限

    问 我想在 Linux 中一步 命令 更改文件夹及其所有子文件夹和文件的权限 我已经尝试过以下命令 但它仅适用于提到的文件夹 chmod 775 opt lampp htdocs 有没有办法为 opt lampp htdocs 及其所有内容
  • Apache服务器设置虚拟目录,Apache服务器虚拟主机虚拟目录配置.pdf

    实验一 Apache 服务器配置 1 Apache 服务器介绍与安装 Apache 是世界使用排名第一的Web 服务器软件 它可以运行在几乎所有广 泛使用的计算机平台上 由于其跨平台和安全性被广泛使用 是最流行的 Web 服务器端软件之一
  • ResNet50进行image分类

    keras预训练模型应用 1 ResNet50进行image分类 Keras 中文文档 Application应用 Kera的应用模块Application提供了带有预训练权重的Keras模型 这些模型可以用来进行预测 特征提取和finet
  • 接口 测试

    一 接口概念 1 什么是接口 API 接口 接口是为了提供一种服务 所有的接口统称为API 接口分为内部接口和外部接口 外部接口 测试被测系统和外部系统之间的接口 测试内部接口 1 内部接口提供内部系统使用 开发人员自己开发的对自身系统提供
  • Android起始内存大,调整Android Studio分配内存大小

    如果Androidstudio运行起来非常卡顿 缓慢 很可能是因为初始分配的内存不够导致卡顿 查看当前分配的Heap 总大小以及使用状况可以在studio中设置展示 具体位置Settings gt Appearance 页里 打开Show
  • LINUX查看进程在哪个cpu核上运行的方法

    方法一 使用top命令 top 命令可以显示进程在哪个CPU上运行 可以连续监视随着时间的改变 该进程运行在哪个cpu上是否发生变化 使用步骤 top p 进程号 例如 top p 3000 按下 F 键 使用上下键选择P Last Use