Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >不同的顶层CPU模式是如何相互对应的?

不同的顶层CPU模式是如何相互对应的?
EN

Unix & Linux用户
提问于 2018-02-07 07:12:17
回答 1查看 301关注 0票数 0

我正在使用NumPy和Python3Pool多处理程序在一个服务器上运行一些矩阵乘法,服务器上有4个IntelXeonE5-4620,总共有64个核心。

Solaris模式中的top显示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
top - 16:00:55 up 7 days, 16:42,  2 users,  load average: 292.74, 295.09, 297.44
Tasks: 704 total,   8 running, 696 sleeping,   0 stopped,   0 zombie
%Cpu(s): 76.6 us, 23.4 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem : 52830358+total, 52306323+free,  3022900 used,  2217456 buff/cache
KiB Swap:  6553596 total,  6553596 free,        0 used. 52376304+avail Mem 

PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND
75266 splitti+  20   0 3050540 294912  10808 R 25.0  0.1  27649:20 python3
75264 splitti+  20   0 3050028 292448  10936 R 21.7  0.1  27750:10 python3
75286 splitti+  20   0 3006504 325704  10668 R 20.3  0.1  26831:30 python3
75598 splitti+  20   0 3006820 326264  11164 R 20.2  0.1  27221:56 python3
75288 splitti+  20   0 3006504 325696  10660 R 10.5  0.1  26351:29 python3
75265 splitti+  20   0 3050028 294292  10728 R  1.6  0.1  22889:05 python3
...

在Irix模式下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND    
75266 splitti+  20   0 3050028 292292  10808 R  1494  0.1  27712:54 python3    
75264 splitti+  20   0 3050540 295028  10936 R  1390  0.1  27803:50 python3    
75288 splitti+  20   0 3006504 325696  10660 R  1305  0.1  26395:29 python3    
75598 splitti+  20   0 3006820 326112  11164 R  1240  0.1  27275:08 python3    
75286 splitti+  20   0 3006504 325628  10668 R 752.6  0.1  26874:41 python3    
75265 splitti+  20   0 3050028 294292  10728 R 153.9  0.1  22893:03 python3
... 

在每核心模式下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
top - 16:03:40 up 7 days, 16:45,  2 users,  load average: 299.56, 297.12, 297.83
Tasks: 704 total,   8 running, 696 sleeping,   0 stopped,   0 zombie
%Cpu0  : 76.9 us, 23.1 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu1  : 71.9 us, 28.1 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu2  : 70.4 us, 29.6 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu3  : 74.6 us, 25.4 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu4  : 73.9 us, 26.1 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu5  : 79.9 us, 20.1 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu6  : 80.9 us, 19.1 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu7  : 78.9 us, 21.1 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu8  : 80.3 us, 19.7 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu9  : 78.9 us, 21.1 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu10 : 80.2 us, 19.8 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
...

问题是:这些价值观是如何联系起来的?

如果顶部显示每个核心使用率的80%和每个进程Solaris模式的25%,那么50%的核心使用率在哪里消失?这9个Python进程(我只粘贴了6个)如何使用所有64个内核?

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2018-02-07 07:23:16

这个top命令页描述CPU百分比如下:

自上次屏幕更新以来,任务在经过的CPU时间中所占的份额,表示为总CPU时间的百分比。在真正的SMP环境中,如果进程是多线程的,并且top不在线程模式下运行,则可以报告大于100%的数量。您可以使用H' interactive command. Also for multi-processor environments, if Irix mode is Off, top will operate in Solaris mode where a task's cpu usage will be divided by the total number of CPUs. You toggle Irix/Solaris modes with thei的交互式命令切换线程模式。

在Solaris模式中,百分比显示每个进程正在使用多少CPU容量;因此,带有标识符75266的进程在上一次刷新周期中使用了所有CPU容量的25%。在Irix模式下,百分比显示每个进程使用一个CPU“单元”的多少;因此,标识符为75266的进程在上一次刷新周期中使用的CPU时间相当于14.94个CPU时间(假定它正在运行15个线程或更多的线程,这说明了9个进程如何可以使用9个以上的内核)。

您可以从一种类型的计算到另一种计算,方法是除以或乘以执行单元的数量: 15几乎等于64个的25% (足够接近匹配,考虑到屏幕的“截图”不是相同的刷新周期)。

票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/422558

复制
相关文章
python中bool函数_bool()函数以及Python中的示例
bool() function is used to convert a given value to the Boolean value (True or False) as per the standard truth testing procedures. It accepts a value (like an integer, list, maps, etc) and converts it into a Boolean value.
全栈程序员站长
2022/09/05
1.6K0
python中bool()函数
bool是Boolean的缩写,只有真(True)和假(False)两种取值 bool函数只有一个参数,并根据这个参数的值返回真或者假。
全栈程序员站长
2022/09/03
1.3K0
Github Actions, yes! + docker, yes yes!
最近点开了一下Github Actions的技能树,在说真香之前,不得不说一下我踩过的这些前置任务的坑。找到这篇文章看的朋友大概也知道Github Actions是Github上的持续集成服务,它允许你在一些节点上(如提交代码,特定时间等)触发一些操作。这里我们实现自动部署应用到自己的服务器。
前端小哥哥
2023/05/04
3260
Github Actions, yes! + docker, yes yes!
python中bool函数用法_在python中bool函数的取值方法「建议收藏」
2.当对字符串使用bool函数时,对于没有值的字符串(也就是None或者空字符串)返回False,否则返回True。
全栈程序员站长
2022/08/12
2.9K0
python中string和bool的转
python中字符串“True” 和 “False"转为bool类型时, 不能通过bool(xx)强转。
py3study
2020/01/08
1.6K0
iOS检测是否有网络连接
如果你的工程里面是用的AFNetworking请求网络数据的话,那么可以直接使用 AFNetworkReachabilityManager.h来判断网络状态!如果是用的ASI的话,里面自带的有Reachability.m和 Reachability.h这两个类,下面会分开介绍这两个的使用方法。
用户7705674
2021/10/29
1.6K0
Flutter Boost 接入实践(iOS 篇)
我们给 Android 接入 Flutter Boost 之后,现在我们来看看如何给 iOS 工程(OC)接入 Flutter Boost。
QQ音乐前端团队
2020/04/22
2.9K0
C++基础----C++ 布尔类型(bool)及BOOL和bool的区别
C语言里面是没有bool(布尔)类型的,C++里面才有,这就是说,在C++里面使用bool类型是没有问题的。bool类型有只有两个值:true =1 、false=0。
Twcat_tree
2022/11/29
2.3K0
iOS-UIApplication详解iOS-UIApplication详解
iOS-UIApplication详解 ✨建议收藏,用到时候一查就明白了 xx_cc UIApplication简介 UIApplication对象是应用程序的象征。 每一个应用程序都有自己的UIApplication对象,而且是单例。 一个iOS程序启动后创建的第一个对象就是UIApplication对象。 通过UIApplication *app = [UIApplication sharedApplication];可以获得这个单例对象。 利用UIApplication对象能进行一些应用级别的操作。
xx_Cc
2018/05/10
1.6K0
iOS iOS与html进行交互
实现的 效果就是上边那样:首先通过webview 进行网络请求 然后进行显示。          然后点击下一页的按钮 通过js的响应显示另一个网页          最后通过下一页的按钮可以返回到首页。     本文仅仅是h5跟ios 的交互的入门 所以没有做细致的描述。 首先先说一下思路:我的项目中是那样的:首先h5从后台拿到数据,然后我请求h5的界面,然后通过h5的按钮进行选择,通过ios控制按钮到那个界面。 这个小demo不涉及数据传输,只是界面的交互。 1 我自己写了两个小网页。 代码如下 首页的
用户1219438
2018/02/01
2.4K0
iOS将单个控制器设为横屏、页面横屏
最近项目中拍照页面需要设置为横屏,需求如下 进入拍摄页面后将页面强制设为横屏,拍照结束后回复竖屏。 简述为:A->B(横屏) 屏幕快照 2016-07-29 下午5.50.02.png 1. 首先在
BY
2018/05/11
2.7K0
iOS13 Scene Delegate
iOS13以后,SceneDelegate将负责AppDelegate的某些功能。 window(窗口)的概念被window(场景)的概念所代替, 一个scene现在可以作为您应用程序的用户界面和内容的载体。iOS13以前一个应用程序可以有不止一个window,同样现在一个应用程序也可以有不止一个scene。
conanma
2021/11/04
5.6K0
iOS开发之抽屉效果实现
  说道抽屉效果在iOS中比较有名的第三方类库就是PPRevealSideViewController。一说到第三方类库就自然而然的想到我们的CocoaPods,今天的博客中用CocoaPods引入PPRevealSideViewController,然后在我们的工程中以代码结合storyboard来做出抽屉效果。   一.在工程中用CocoaPods引入第三方插件PPRevealSideViewController.     (1).在终端中搜索PPRevealSideViewController的版本
lizelu
2018/01/11
1.9K0
iOS开发之抽屉效果实现
iOS 微信支付开发流程
项目中要用到支付功能,需要支付宝支付、支付宝网页支付、微信支付、银联支付、Apple_pay,所以打算总结一下,方便以后的查阅,也方便大家, 用到的地方避免再次被坑。 今天我们就主要介绍一下微信支付,其他支付也写了对应教程,并且给出了连接。
网罗开发
2021/01/29
1.6K0
iOS 微信支付开发流程
c语言调用bool函数,C语言中 bool的用法
布尔型变量可用于逻辑表达式,也就是“或”“与”“非”之类的逻辑运算和大于小于之类的关系运算,逻辑表达式运算结果为真或为假。
全栈程序员站长
2022/09/01
3.5K0
c语言调用bool函数,C语言中 bool的用法
iOS开发技巧篇
在iOS开发中,有一些技巧可以提高程序猿的开发效率。 1,Xcode真机调试 Xcode 7推出之前,想要真机调试,iOS开发者必须花$99购买苹果开发者账号,而且步骤繁琐,需要下载证书认证。随着苹果公司推出了Xcode 7之后,大幅度的简化了真机调试的步骤。但是如果要测试推送等,还是需要证书的。 第一步:准备Mac电脑,Apple ID, iPhone手机,Xcode 集成开发环境; 第二步:打开Xcode选择屏幕左上角Xcode->Preferences->Account。 第三步,点击左下角的+
xiangzhihong
2018/02/06
1.7K0
iOS开发技巧篇
iOS数据持久化
// // AppDelegate.m // // import "AppDelegate.h" import "Person.h" @interface AppDelegate () @end @implementation AppDelegate (void)dealloc { [_window release]; [super dealloc]; } (BOOL)application:(UIApplication )application didFinishLaunchingWith
大师级码师
2021/10/29
5230
xcode11新增SceneDelegate文件
好久之前跟新到Xcode11,跟新完成后打开以前老项目并未有什么太大变化,也就没有在意,今天新建一个项目,创建完成后,发现多了个SceneDelegate的.m和.h文件,这是什么鬼?它有什么用呢?
honey缘木鱼
2019/12/11
1.9K0
iOS开发系列——第一个iOS程序和运行过程
这里我想强调一下,前面的知识是你日后开发IOS的基础,没有那些知识你开发IOS会很痛苦,现在很多开发人员做开发都是一知半解,程序质量确实令人担忧,所以还是希望大家能够熟练掌握前面的内容,开发过程中多思考,彻底理解程序运行的原理、机制
Kris大鲨
2018/05/05
2K5
iOS开发系列——第一个iOS程序和运行过程
点击加载更多

相似问题

回到AppDelegate

14

如何将AppDelegate类添加到AppDelegate.cs中?

13

无法将BOOL设置为yes

21

NSUserDefaults registerDefaults to set initial BOOL - BOOL值的存在是否返回YES

21

设置BOOL类型的默认值为YES

50
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文