cpu优化-cpu亲和性

2023-05-16

cpu亲和性

taskset命令可以将进程绑核,格式为taskset -p -c cpu-list pid,其中cpu-list是数字化的cpu列表,从0开始。多个不连续的cpu可用逗号连接,连续的可用-连接,比如0,2,5-11等。

举例:

#我现在系统中存在四核的cpu
[root@server01 ceshi]# lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                4
......
#我可以通过以下命令主动将jh.sh这个脚本指定跑在编号为3的核上
[root@server01 ceshi]# taskset -c 3 ./jh.sh
#通过以下命令我确实可以看到jh.sh这个脚本已经跑到了编号3的核心上
[root@server01 ~]# ps -eo psr,command,pid | grep jh.sh | grep -v grep
  3 /bin/bash ./jh.sh            27033

我们来验证一下看看编号为3的核心资源是否被占用

#通过以下信息我们可以发现cpu3的用户空间的占比确实高,且空闲率已经不足
[root@server01 ~]# mpstat -P ALL 2
Linux 3.10.0-957.el7.x86_64 (server01)  05/17/2021      _x86_64_        (4 CPU)

09:39:02 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
09:39:04 PM  all   22.62    0.00    2.62    0.00    0.00    0.00    0.00    0.00    0.00   74.75
09:39:04 PM    0    0.00    0.00    0.50    0.00    0.00    0.00    0.00    0.00    0.00   99.50
09:39:04 PM    1    0.00    0.00    0.00    0.00    0.00    0.50    0.00    0.00    0.00   99.50
09:39:04 PM    2    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
09:39:04 PM    3   90.50    0.00    9.50    0.00    0.00    0.00    0.00    0.00    0.00    0.00

如果是已经存在的进程,我们可以通过以下命令主动让进程跑另外一个核心

[root@server01 ~]# ps -eo psr,command,pid | grep jh.sh | grep -v grep
  3 /bin/bash ./jh.sh            30492
  
[root@server01 ~]# taskset -p -c 2 30492
pid 30492's current affinity list: 3
pid 30492's new affinity list: 2	<-代表进程已经跑到编号为2的核心上了

[root@server01 ~]# ps -eo psr,command,pid | grep jh.sh | grep -v grep
  2 /bin/bash ./jh.sh            30492

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

cpu优化-cpu亲和性 的相关文章

  • frp内网穿透windows配置开机启动

    首先下载我们需要的frp软件包 点我即可跳转下载页 解压之后得到我们的文件夹 xff0c 降不需要的frps开投的文件删掉 xff0c 新建文本 start bat start bat内容如下 xff1a 64 echo off home

随机推荐

  • kube-flannel.yml 保存

    apiVersion policy v1beta1 kind PodSecurityPolicy metadata name psp flannel unprivileged annotations seccomp security alp
  • 【VHDL语言学习笔记(三)】 数据比较器

    目的 xff1a 实现一个4位二进数据比较器 分析 xff1a 两个操作数的比较有三种结果 xff0c 即A等于B xff0c A大于B和A小于B 两个4位二进制比较器 xff0c 构建比较器表如下 比较器的真值表 输入输出ABAGQBAG
  • 【天光学术】论文写作技巧,教你论文写作提纲撰写方法

    1 拟订提纲的必要性盖楼首先要设计工程蓝图 xff0c 然后按图施工 同理 xff0c 撰写论文首先要拟订写作提纲 xff0c 然后按纲行文 简单地说 xff0c 写作提纲就是整篇文章的总体思路 逻辑图表和结构框架 在动笔撰写论文之前 xf
  • HTTP协议详解

    文章目录 一 HTTP工作过程二 HTTP 协议格式2 1 请求 Request 格式2 1 1 URL格式2 1 2 方法 method 2 1 2 1 GET 方法2 1 2 2 POST 方法2 1 2 3 GET vs POST 2
  • yum安装指定版本docker

    步骤1 xff1a 删除docker等相关依赖 yum remove docker docker common container selinux docker selinux docker engine 步骤2 设置稳定镜像源 xff1a
  • vue学习总结一(环境部署,项目搭建开发)

    小白vue学习总结 xff0c 阅者酌情参考 xff0c 欢迎指正 一 安装环境 安装nodejs xff1a 查看版本 node v加载vue组件 xff1a npm install vue搭建vue的开发环境 xff0c 安装vue的脚
  • springboot--集成jdbctemplate

    springboot 集成jdbctemplate 添加依赖 lt 引入jdbc支持x gt lt dependency gt lt groupId gt org springframework boot lt groupId gt lt
  • springboot--集成jpa

    比较 表列出了JPA与其他持久化技术的比较 添加依赖 lt 引入jpa 依赖 gt lt dependency gt lt groupId gt org springframework boot lt groupId gt lt artif
  • SpringMVC集成Quartz2.3.2

    SpringMVC集成Quartz2 3 2 集成Quartz持久化下载jar导入jar包配置properties配置xml数据源导入数据表xml配置中用到的工厂类自定义JobController层Service层jsp参考 集成Quart
  • vagrant学习总结

    一 vagrant是什么 vagrant是一款用来构建虚拟开发环境的工具 xff0c 非常适合各类语言来开发web应用 xff0c 代码在我机器上运行没有问题 将成为历史 可以通过vagrant将封装好的开发环境 xff0c 分发给开发人员
  • cas5.3.5错误锦集

    0 cas jar https repo maven apache org maven2 org apereo cas 1 票根 39 ST 7 yOPMHIBFVcx8iNRoDW rCzNgakLAPTOP E2N0LMKU 39 不符
  • 面向对象分析:如何建立动态模型?状态图(单个对象建模),状态是对影响对象行为的属性值的一种抽象,它规定了对象对( 输入事件 )的响应方式,

    对象模型建立后 就需要考察对象和关系的动态变化情况 面向对象分析设定对象和关系都具有生命周期 生命周期由许多阶段组成 每个阶段都有一系列的运行规律和规则 用来调节和管理对象的行为 对象和关系的生命周期用动态模型来描述 动态模型描述对象和关系
  • 信息系统项目管理师-信息文档与配置管理考点笔记

    历年考点分布 注 xff1a 博客 xff1a https blog csdn net badao liumang qizhi 关注公众号 霸道的程序猿 获取编程相关电子书 教程推送与免费下载 信息系统项目文档及其管理 软件文档的分类 3
  • new 对象加括号和不加括号的区别

    在new对象的时候有加上 xff0c 有不加 xff0c 不知道这个到底是什么区别 xff1f 比如 xff1a cpp view plain copy print CBase base 61 new CDerived CBase base
  • 结构程序设计的经典定义

    结构程序设计的经典定义如下所述 xff1a 如果一个程序的 代码块仅仅通过顺序 选择和循环这3种基本控制结构 进行连接 xff0c 并且每个代码块只有一个入口和一个出口 xff0c 则称这个程序是结构化的 如果只允许使用顺序 IF THEN
  • 总体设计启发性规则7条

    nbsp 启发性规则 7条 1 改进软件结构提高模块独立性 通过模块分解或合并 降低耦 合提高内聚 2 模块规模应该适中 过大的模块往往是由于分解不充分 过小 的模块将导致模块数目过多将使系统接口复杂 3 深度 宽度 扇出和扇入都应适当 深
  • SqlServer调用webapi和webService接口

    1 通过http协议post调用webapi接口 xff08 json数据格式 xff09 declare 64 ServiceUrl as varchar 1000 set 64 ServiceUrl 61 39 http 127 0 0
  • C语言和C++的区别是什么?8个点通俗易懂的告诉你

    有些初学的同学傻傻分不清其中的区别 xff0c 下面我将详细的讲解C语言和C 43 43 的区别点 帮助大家尽快的理解 1 关键字 蓝色标注为C语言关键字 xff0c C 43 43 继承了C语言的所有关键字 xff0c 以下红色标注为C
  • money 最小花费(spfa)

    问题描述 在n个人中 xff0c 某些人的银行账号之间可以互相转账 这些人之间转账的手续费各不相同 给定这些人之间转账时需要从转账金额里扣除百分之几的手续费 xff0c 请问A最少需要多少钱使得转账后B收到100元 输入格式 第一行输入两个
  • cpu优化-cpu亲和性

    cpu亲和性 taskset命令可以将进程绑核 格式为taskset p c cpu list pid xff0c 其中cpu list是数字化的cpu列表 xff0c 从0开始 多个不连续的cpu可用逗号连接 xff0c 连续的可用 连接