查看进程运行在哪个cpu_鲲鹏980CPU

查看进程运行在哪个cpu_鲲鹏980CPU前言最近用华为鲲鹏跑了一段时间服务后,出现了系统负载40多居高不下的情况,一排查发现是kworker进程占用CPU很高,而且还杀不掉。通过华为的监控发现是磁盘I/O很高,重启服务器后能短暂解决问题,但是过几天负载还是会很高,导致很多进程被系统杀死。但是出现问题的就一台鲲鹏,其他的鲲鹏没有出现,通过比较发现内核版本不一样,执行uname-a输出如下正常的鲲鹏Linuxkpv7-pbx-00014.18.0-80.7.2.el7.aarch64#1SMPThuSep1216:1

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

前言

最近用华为鲲鹏跑了一段时间服务后,出现了系统负载40多居高不下的情况,一排查发现是kworker进程占用CPU很高,而且还杀不掉。
在这里插入图片描述

通过华为的监控发现是磁盘I/O很高,重启服务器后能短暂解决问题,但是过几天负载还是会很高,导致很多进程被系统杀死。

但是出现问题的就一台鲲鹏,其他的鲲鹏没有出现,通过比较发现内核版本不一样,执行uname -a输出如下

  • 正常的鲲鹏
Linux kpv7-pbx-0001 4.18.0-80.7.2.el7.aarch64 #1 SMP Thu Sep 12 16:13:20 UTC 2019 aarch64 aarch64 aarch64 GNU/Linux
  • 非正常的鲲鹏
Linux pbx-gch-t 4.18.0-193.28.1.el7.aarch64 #1 SMP Wed Oct 21 16:25:35 UTC 2020 aarch64 aarch64 aarch64 GNU/Linux

这是因为我之前更新过内核

yum -y update
yum -y install kernel-devel
yum -y update kernel
reboot

解决方法

#执行grub2-set-default0设置内核配置开机选单为第1项
grub2-set-default 1
#重启
reboot

更新

在这里插入图片描述

使用dmesg查看回溯,你可以看到设备一直在打印近期繁忙的操作、调度。

下面是我这台设备的打印情况:
在这里插入图片描述
可以看到,virtio_gpu 这个驱动一直在报错误。怀疑是驱动不匹配。需要重新编译驱动或者根据自己的需要,是否保留这个驱动。我这边用不到,所以我就索性把这个驱动给卸载了。

步骤如下:
在这里插入图片描述
这样一来,再去看top。就发现,已经woker核占满的现象已经解决了。

借鉴地址:https://bbs.huaweicloud.com/forum/thread-92155-1-1.html

分析内核的工具perf
相关文章:https://ubuntuqa.com/article/560.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/192652.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Vagrant系列(二)—-Vagrant的配置文件Vagrantfile详解

    Vagrant系列(二)—-Vagrant的配置文件Vagrantfile详解

    2021年11月8日
    82
  • 精进Quartz—Quartz简单入门Demo(二)

    要学习Quartz框架,首先大概了解了Quartz的基本知识后,在通过简单的例子入门,一步一个脚印的走下去。 下面介绍Quartz入门的示例,由于Quartz的存储方式分为RAM和JDBC,分别对这两种进行简单的说明。并附上代码! 首先需要添加Quartz的Jar包 ,我使用的是quartz.2.2.1版本!

    2022年2月25日
    44
  • java定义一个数组并初始化_java中什么是数组

    java定义一个数组并初始化_java中什么是数组介绍学习Java的朋友想必对数组并不陌生,它需要使用之前对其进行初始化,这是因为数组是引用类型,声明数组只是声明一个引用类型的变量,并不是数组对象本身,只要让数组变量指向有效的数组对象,程序中就可使用该数组变量来访问数组元素。所谓数组初始化就是让数组名指向数组对象的过程,该过程主要分为两个步骤,一是对数组对象进行初始化,即为数组中的元素分配内存空间和赋值,二是对数组名进行初始化,即为数组名赋值为数…

    2022年9月13日
    2
  • 查看Maven版本_maven部署

    查看Maven版本_maven部署一、下载压缩包官方地址:Maven-DownloadApacheMaven​maven.apache.org直接使用wget命令进行下载maven压缩包>wgethttps://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz二、解压ta…

    2022年8月22日
    6
  • 将String转换成Int数组-Java「建议收藏」

    今天贴出来一个编程小技巧,利用substring或charAt将字符转换为int数组。方法一:publicclassParseString{publicstaticint[]stringToInts(Strings){int[]n=newint[s.length()];for(inti=0;i

    2022年4月12日
    46
  • jvm常见的垃圾回收算法_垃圾回收机制算法

    jvm常见的垃圾回收算法_垃圾回收机制算法在早期的计算机语言,比如C和C++,需要开发者手动的来跟踪内存,这种机制的优点是。但是它也有它的缺点,新的编程语言,比如JAVA,Go,Python,PHP…现在市面上的大部分主流编程语言,都采取了一个方案,那就是“垃圾回收机制”,运行时自身会运行相应的垃圾回收机制。。垃圾回收器(GC)会在适当的时候将的内存给释放掉。GC的优点:GC的缺点:JVM的内存结构包括四大区域:1.程序计数器2.栈(虚拟机栈,本地方法栈)3.堆4.方法区举个例子,任何组织里,人都有三个派别,1.积极派2.消极派

    2022年10月13日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号