ubuntu下实时查看CPU,内存(Mem)和GPU的利用率

news2024/11/25 12:27:52

一、实时查看CPU和内存(Mem)利用率

        htop官网:htop - an interactive process viewer

sudo apt-get install htop
htop

①. 顶部状态栏(System Metrics Overview)

这个区域显示系统的全局资源使用情况,包括:

  • CPU 使用率: 顶部会显示多条表示 CPU 使用情况的条形图,每条代表一个 CPU 核心。不同颜色表示不同类型的 CPU 负载:

    • 绿色:用户进程使用的 CPU(user)
    • 红色:内核进程使用的 CPU(system)
    • 蓝色:低优先级进程使用的 CPU(nice)
    • 黄色:I/O 等待(iowait)
    • 灰色:虚拟 CPU 使用(steal time)
  • 内存(Mem): 显示当前的物理内存使用情况,条形图及具体的数值会告诉你内存的已使用、缓存和可用内存数量。

  • 交换区(Swap): 显示系统交换区的使用情况(如果物理内存不足时,系统会将部分数据放入交换区)。条形图和数值显示交换空间的已用和剩余量。

②. 任务和负载信息(Load Average and Uptime)

这个区域紧接着 CPU、内存和交换区的显示之后,主要展示以下内容:

  • 任务(Tasks): 显示系统上正在运行的任务(进程)数量和状态信息,包括正在运行、睡眠、停止等进程数目。
  • 负载平均值(Load Average): 显示系统的负载平均值,分别为最近1分钟、5分钟和15分钟的平均负载。
  • 系统运行时间(Uptime): 显示系统已运行的总时间。

③. 进程列表(Processes List)

这是 htop 窗口中最核心的部分,显示系统中所有运行中的进程,每一行代表一个进程。每个进程行通常包含以下信息:

  • PID: 进程的唯一标识符(进程 ID)。
  • User: 运行该进程的用户。
  • Priority(PRI): 进程的优先级,数值越小,优先级越高。
  • Nice(NI): 进程的 nice 值,调整进程的调度优先级。
  • VIRT: 进程虚拟内存的总量。
  • RES: 进程实际使用的物理内存量。
  • SHR: 进程共享内存的大小。
  • S: 进程的状态,常见的状态有:
    • R:Running,进程正在运行。
    • S:Sleeping,进程在休眠状态。
    • D:Uninterruptible sleep,无法中断的睡眠状态(通常是 I/O 操作)。
    • Z:Zombie,僵尸进程,已终止但未清理。
    • T:Stopped,进程已停止。
  • %CPU: 进程当前占用的 CPU 百分比。
  • %MEM: 进程当前占用的物理内存百分比。
  • TIME+: 进程消耗的 CPU 总时间(格式为时:分:秒)。
  • Command: 进程执行的命令名称或路径。

④. 底部功能键(Interactive Commands)

htop 提供了许多快捷键,底部通常会显示一些常用的快捷键提示:

  • F1(Help): 显示帮助菜单,解释所有可用的键盘快捷键。
  • F2(Setup): 进入设置界面,可以调整显示颜色、排序方式等。
  • F3(Search): 搜索进程,可以按名称、PID 等。
  • F4(Filter): 过滤进程,显示符合过滤条件的进程。
  • F5(Tree): 以树形结构显示进程,展示进程之间的父子关系。
  • F6(Sort by): 选择排序方式(区域③中会以蓝色显示),比如按 CPU、内存使用量等排序。
  • F7(Nice-): 降低进程的优先级(增加 nice 值)。
  • F8(Nice+): 提高进程的优先级(减少 nice 值)。
  • F9(Kill): 终止选中的进程。
  • F10(Quit): 退出 htop

二、实时查看GPU的利用率

        使用 nvidia-smi 命令查看 GPU 利用率,但是这个命令只能显示一帧,如果要实时显示,需要配合watch命令, 一秒钟刷新一次 nvidia-smi 命令   

watch -n 1 nvidia-smi 
  • watch:这是一个 Linux 命令,用于周期性地执行指定的命令,并将其输出显示在终端上。默认情况下,它会每两秒刷新一次输出。

  • -n 1:这是 watch 命令的一个选项,表示设置刷新间隔为1秒。换句话说,watch 每隔1秒钟重新运行一次指定的命令,并更新显示的结果。

  • nvidia-smi:这是 NVIDIA 提供的一个命令,用于显示 GPU 的实时信息,包括显卡的温度、功耗、显存使用率、GPU 负载等。它常用于监控 NVIDIA GPU 的运行状态。

①. 顶部信息部分(General System Information)

在输出的顶部,展示系统和驱动程序的全局信息,包括:

  • NVIDIA-SMI Versionnvidia-smi 工具的版本号。
  • Driver Version:当前安装的 NVIDIA 驱动程序版本。确保驱动程序版本与 CUDA 工具包兼容是非常重要的。
  • CUDA Version:显示当前支持的 CUDA 版本,这是 NVIDIA 的并行计算平台和 API,用于加速深度学习等任务。

②. GPU 信息表(GPU Information Table)

在这一部分,列出了每个已安装的 GPU 及其状态。表格的每一行代表一张 GPU,包含以下字段:

GPU:每个 GPU 在系统中的编号,通常从 0 开始,表示 GPU 在系统中的索引号。

Name:显卡的型号名称,例如 Tesla V100RTX 3090 等,表示具体的显卡型号。

Persistence-M (持久性模式)

  • On:GPU 即使没有任务时也保持初始化状态,减少任务启动延迟。
  • Off:GPU 在没有任务时进入未初始化状态,节省功耗。

Bus-Id:GPU 连接到主板的 PCI 总线 ID,格式为 Domain:Bus:Device.Function,如 00000000:00:1C.0。这个字段在多 GPU 系统中很有用。

Disp.A (Display Active):显示该 GPU 是否用于驱动显示器:

  • On:GPU 正用于驱动显示器。
  • Off:GPU 未连接到显示器,通常在服务器或计算节点上为 Off。

Volatile Uncorr. ECC (Volatile Uncorrectable ECC Errors):GPU 的内存中不可修正的 ECC 错误计数:

  • 0:没有检测到不可修正的 ECC 错误,这是理想状态。
  • >0:有不可修正的 ECC 错误,可能导致数据计算错误。ECC 是 Error-Correcting Code,用于保证 GPU 计算的准确性。
  • N/A:该 GPU 不支持 ECC(Error-Correcting Code)功能

Fan (风扇速度):当前 GPU 风扇的运行速度,单位为百分比(%)。这个值会根据 GPU 温度和负载动态调整,N/A 表示没有独立风扇或者风扇信息不可用。

Temp (温度):GPU 当前温度,单位为摄氏度(°C)。理想温度通常在 30°C 到 85°C 之间,过高温度可能导致性能下降或硬件损坏。

Perf (性能状态):GPU 的性能状态(P-State),范围从 P0P12

  • P0:最高性能状态,表示 GPU 正在满负荷运转。
  • P12:最低性能状态,表示 GPU 几乎处于闲置状态。
Pwr: Usage/Cap(功耗 / 最大功耗)
  • Usage:GPU 当前的功耗,单位为瓦特(W)。
  • Cap:该 GPU 允许的最大功耗。实际功耗在任务执行过程中会动态变化,最大功耗由硬件或 BIOS 设定。
Memory-Usage(显存使用情况)
  • Used:当前 GPU 正在使用的显存量。
  • Total:GPU 的总显存量。
  • 显存使用率反映了计算任务对显存的需求,高密集型任务(如深度学习模型训练)会占用大量显存。

GPU-Util(GPU 利用率 %):GPU 的当前利用率,以百分比显示。这个值越高,表示 GPU 的负载越重:

  • 0-10%:空闲或负载极低。
  • 100%:GPU 处于满负荷运转状态。

Compute M. (计算模式):定义了 GPU 如何与多个应用程序共享计算资源

  • Default:默认计算模式,多个进程可以同时访问 GPU 的计算资源。这是大多数应用场景的默认模式,允许多个任务共享 GPU。

  • Exclusive Process:在这个模式下,只有一个进程能够使用 GPU 的计算资源,但该进程可以有多个线程。这种模式通常用于防止不同进程之间的竞争,提高性能的一致性。

  • Exclusive Thread:更严格的模式,只有一个线程能够访问 GPU。这种模式不常用。

  • Prohibited:禁止使用 GPU 的计算资源。在这个模式下,GPU 不能执行任何计算任务。这种模式下,GPU 只能用于显示输出。

MIG M.(多实例 GPU 模式):NVIDIA A100 和其他 Ampere 架构 GPU 引入的一项新功能

  • Enabled:表示 MIG 模式已启用。在启用 MIG 的情况下,一张 GPU 可以分割为多个逻辑 GPU,每个逻辑 GPU 分配固定的计算和显存资源。这允许多个用户或应用程序独立使用 GPU,避免资源竞争。

  • Disabled:表示 MIG 模式未启用。GPU 以传统方式运作,作为单一计算单元使用。

  • N/A:该 GPU 不支持 MIG 模式。例如,只有支持 MIG 的 NVIDIA GPU(如 A100 或 H100)才会显示 MIG 相关的信息,而其他不支持的 GPU 显示 N/A

③. 进程列表(Processes Section)

在 GPU 信息表的下方,显示当前使用 GPU 资源的进程信息。包括:

GPU :显示每个 GPU 的编号,表示进程在哪个 GPU 上运行。

PID (进程 ID):进程的唯一标识符,可以用来进一步排查系统中运行的进程或调试特定任务。

Type (进程类型):进程的类型:

  • C(Compute):表示计算任务,通常是深度学习或并行计算任务。
  • G(Graphics):表示图形任务。
  • V(Video):表示视频任务,例如视频编码或解码。

Process Name (进程名称):显示正在运行的进程名称或路径,如 /usr/bin/python,用于识别具体的应用程序或任务。

GPU Memory Usage(显存使用量):该进程使用的显存量,单位为 MiB(Mebibytes)。如果多个进程同时运行,显存可能被多个进程共享。

 

参考

        Linux查看CPU状态:htop命令

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2208726.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

18770 差值最大

### 思路 为了找到两个数x和y使得x - y的值最大,并且x在y的右侧,我们可以使用以下方法: 1. 从右向左遍历数组,记录当前遍历到的最大值max_right。 2. 对于每个元素a[i],计算max_right - a[i],并更新最大差…

我的研究生周报模板

2022.12.12——2022.12.18周报 本周计划 文献阅读:(说明是打算读哪方面的论文) 实验:(打算做什么实验,目的是什么) 项目:(打算完成项目中哪一部分) 本周进…

fastadmin 多商户模式下侧边栏跳转路径BUG

记录:仅作自己项目记录,在一个域名下部署多套项目时,若是多商户模式项目会出现跳转路径问题。 修改 \manystore\library\Auth.php 文件的 getSidebar 方法 // 1 改为: $v[url] isset($v[url]) && $v[url] ? $v[url] :…

Reqable抓包演示

1.Reqable下载 官网:Reqable 下载对应平台版本即可。 多个客户端。 2.使用教程 打开后如下图所示 根据提示安装完证书后即可使用。 这里以小猿口算的练习模式的抓包为例 1.打开雷电模拟器 在模拟器上安装Reqable,并安装证书,一定要安装…

【C++】基于红黑树封装set和map

🚀个人主页:小羊 🚀所属专栏:C 很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~ 目录 前言一、更高维度的泛型二、模版参数三、比较逻辑的重写四、迭代器4.1 const迭代器4.2 重载4.3 - -重载 五、完整代…

EXCEL SUM系列求和函数大全

大家好,这里是效率办公指南! 📊 在数据分析中,求和是一项基础而频繁的操作。Excel 提供了一系列求和函数,可以帮助我们快速汇总数据。今天,我们将介绍 Excel 中常用的求和函数,包括它们的语法和…

java 自定义填充excel并导出

首先在resources下面放一个excel模板 1. 方法签名和请求映射 RequestMapping(value "/ExportXls") public ResponseEntity<byte[]> rwzcExportXls(HttpServletRequest request, RequestBody JSONArray jsonArray) throws IOException { RequestMapping(val…

YOLO11改进 | 注意力机制 | 结合静态和动态上下文信息的注意力机制

秋招面试专栏推荐 &#xff1a;深度学习算法工程师面试问题总结【百面算法工程师】——点击即可跳转 &#x1f4a1;&#x1f4a1;&#x1f4a1;本专栏所有程序均经过测试&#xff0c;可成功执行&#x1f4a1;&#x1f4a1;&#x1f4a1; 上下文Transformer&#xff08;CoT&…

【MySQL 保姆级教学】数据库基础(重点)(2)

目录 1. 什么是数据库1.1 数据库的定义1.2 mysql 和 mysqld1.3 文件和数据库 2. 数据库的分类3. 连接数据库3.1 数据库的安装3.2 连接服务器&#xff08;数据库&#xff09;3.3 服务器 数据库 表 三者的关系 4. 数据库-表 和目录-文件 的关系5. MySQL 框架6. SQL 分类7. 储存引…

人工智能AI等级划分

人工智能等级划分 第一级“聊天机器人”。 第二级“推理者”水平。这一级别的AI系统具备类似拥有博士学位教育但未配备任何工具的人类&#xff0c;能执行基础的问题解决任务。据悉&#xff0c;OpenAI的管理层在会议中还向员工们展示了涉及GPT-4 AI模型的一个研究项目&#xff…

【面试宝典】深入Python高级:直戳痛点的题目演示(下)

目录 &#x1f354; Python下多线程的限制以及多进程中传递参数的⽅式 &#x1f354; Python是如何进⾏内存管理的&#xff1f; &#x1f354; Python⾥⾯如何拷⻉⼀个对象&#xff1f; &#x1f354; Python⾥⾯search()和match()的区别&#xff1f; &#x1f354; lambd…

生成式专题的第一节课---GAN图像生成

一、GAN的起源与发展 1.GAN的起源 GAN &#xff08;生成式对抗网络&#xff09;诞生于 2014 年&#xff0c;由 Ian Goodfellow 提出&#xff0c;是用于生成数据的深度学习模型&#xff0c;创新点是对抗性训练&#xff0c;即生成器与判别器的竞争关系&#xff0c;为图像生成、…

多态常见面试问题

1、什么是多态&#xff1f; 多态&#xff08;Polymorphism&#xff09;是面向对象编程中的一个重要概念&#xff0c;它允许同一个接口表现出不同的行为。在C中&#xff0c;多态性主要通过虚函数来实现&#xff0c;分为编译时多态&#xff08;静态多态&#xff09;和运行时多态…

DDoS攻击快速增长,如何在抗ddos防护中获得主动?

当下DDoS攻击规模不断突破上限。前段时间&#xff0c;中国首款3A《黑神话&#xff1a;悟空》也在一夜之内遭受到28万次攻击DDoS攻击&#xff0c;严重影响到全球玩家的游戏体验。Gcore发布的数据也显示了 DDoS攻击令人担忧的趋势&#xff0c;尤其是峰值攻击已增加到了令人震惊的…

腾讯IM SDK:TUIKit发送多张图片

一、问题描述 在使用腾讯IM DEMO&#xff08;https://github.com/TencentCloud/chat-uikit-vue.git&#xff09;时发现其只支持发送一张图片&#xff1a; 二、解决方案 // src\TUIKit\components\TUIChat\message-input-toolbar\image-upload\index.vue<inputref"inp…

【GaussDB】产品简介

产品定位 GaussDB 200是一款具备分析及混合负载能力的分布式数据库&#xff0c;支持x86和Kunpeng硬件架构&#xff0c;支持行存储与列存储&#xff0c;提供PB(Petabyte)级数据分析能力、多模分析能力和实时处理能力&#xff0c;用于数据仓库、数据集市、实时分析、实时决策和混…

transformers和bert实现微博情感分类模型提升

关于深度实战社区 我们是一个深度学习领域的独立工作室。团队成员有&#xff1a;中科大硕士、纽约大学硕士、浙江大学硕士、华东理工博士等&#xff0c;曾在腾讯、百度、德勤等担任算法工程师/产品经理。全网20多万粉丝&#xff0c;拥有2篇国家级人工智能发明专利。 社区特色…

关于Linux下C++程序内存dump的分析和工具

前言 程序崩溃令人很崩溃&#xff0c;特别是让人找不到原因的崩溃&#xff0c;但是合适的工具可以帮助人很快的定位到问题&#xff0c;在AI基础能力ASR服务开发时&#xff0c;找到了一种比较实用和简单的内存崩溃的dump分析工具breakpad&#xff0c; 可以帮助在Linux下C开发程…

Skyeye 云智能制造 v3.14.8 发布,ERP 商城 + AI

Skyeye 云智能制造&#xff0c;采用 Springboot winUI 的低代码平台、移动端采用 UNI-APP。包含 30 多个应用模块、50 多种电子流程&#xff0c;CRM、PM、ERP、MES、ADM、EHR、笔记、知识库、项目、门店、商城、财务、多班次考勤、薪资、招聘、云售后、论坛、公告、问卷、报表…

(JAVA)2-3树思想与红黑树的实现与基本原理

1. 平衡树 ​ 学习过二叉查找树&#xff0c;发现它的查询效率比单纯的链表和数组的查询效率要高很多。 ​ 大部分情况下确实是这样的&#xff0c;但不幸的是&#xff0c;在最坏情况下&#xff0c;二叉查找树的性能还是很糟糕。 ​ 例如我们一次往二叉树中插入9,8,7,6,5,4,3,…