社区
高性能计算
帖子详情
请教一个多进程、多线程、多CPU、多核的问题
codecola
2011-04-08 02:16:50
在一个多CPU多核的系统中:
1. 一个
单
进程
单
线程的程序,同一时刻能占用
1
个CPU的
1
个核。
2. 一个
单
进程
多
线程的程序,同一时刻能占用
1
个CPU的
多
个核?
3. 一个
多
进程
单
线程的程序,同一时刻能占用
多
个CPU的
1
个核?
4. 一个
多
进程
多
线程的程序,同一时刻能占用
多
个CPU的
多
个核?
我理解的对吗?
...全文
1421
11
打赏
收藏
请教一个多进程、多线程、多CPU、多核的问题
在一个多CPU多核的系统中: 1. 一个单进程单线程的程序,同一时刻能占用1个CPU的1个核。 2. 一个单进程多线程的程序,同一时刻能占用1个CPU的多个核? 3. 一个多进程单线程的程序,同一时刻能占用多个CPU的1个核? 4. 一个多进程多线程的程序,同一时刻能占用多个CPU的多个核? 我理解的对吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Lactoferrin
2011-04-11
打赏
举报
回复
你什么时候见到了一个多进程单线程的程序?拿一个没有线程的进程当摆设,或者那个线程两边来回attach?这里不要管进程的数目。
codecola
2011-04-11
打赏
举报
回复
在一个多CPU多核的系统中:
2. 一个单进程多线程的程序,同一时刻能占用多个CPU的多个核?
3. 一个多进程单线程的程序,同一时刻能占用多个CPU的多个核?
4. 一个多进程多线程的程序,同一时刻能占用多个CPU的多个核?
codecola
2011-04-11
打赏
举报
回复
[Quote=引用 9 楼 ericming200409 的回复:]
这个要看操作系统的实现,有的操作系统只调度进程,有的以线程为单位进行调度
[/Quote]
windows调度是以线程为单位的。
在linux下,每个CPU都有着对应的可执行队列,而一个可执行状态的进程在同一时刻只能处于一个可执行队列中。
2. 一个单进程多线程的程序,同一时刻能占用
1
个CPU的多个核。
codecola
2011-04-11
打赏
举报
回复
[Quote=引用 8 楼 lactoferrin 的回复:]
你什么时候见到了一个多进程单线程的程序?拿一个没有线程的进程当摆设,或者那个线程两边来回attach?这里不要管进程的数目。
[/Quote]
ok
我说的不明确,多进程单线程实际就是多进程,只是不再分多线程。
ericming200409
2011-04-11
打赏
举报
回复
这个要看操作系统的实现,有的操作系统只调度进程,有的以线程为单位进行调度
天上游的鱼
2011-04-08
打赏
举报
回复
楼上说的大体上是对的,只看core,不用说多个cpu
一个执行序列可以对应一个core,一个执行序列就是指基本的调度单位(线程)
Lactoferrin
2011-04-08
打赏
举报
回复
调度的只是线程,不是进程。
多进程单线程,那么只能有一个进程有线程,其它进程都是刚创建的没有线程的,此时只有一个线程可被调度
所以,只用看线程的个数和核的个数
pengzhixi
2011-04-08
打赏
举报
回复
[Quote=引用 3 楼 codecola 的回复:]
引用 2 楼 justkk 的回复:
貌似3是不对的,不确定
一个多进程单线程的程序,貌似不能同时被调度,同一时刻能占用1个CPU的1个核
多个进程为什么不能被同时调度?这些进程间除了父子关系外,没有其他的联系。
[/Quote]因为调度是以线程为单位。
codecola
2011-04-08
打赏
举报
回复
[Quote=引用 2 楼 justkk 的回复:]
貌似3是不对的,不确定
一个多进程单线程的程序,貌似不能同时被调度,同一时刻能占用1个CPU的1个核
[/Quote]
多个进程为什么不能被同时调度?这些进程间除了父子关系外,没有其他的联系。
justkk
2011-04-08
打赏
举报
回复
貌似3是不对的,不确定
一个多进程单线程的程序,貌似不能同时被调度,同一时刻能占用1个CPU的1个核
优化
多核
CPU
的TCP新建连接性能--重排spinlock
人们几乎已经逼近了单
CPU
的处理时延极限,于是人们希望通过多
CPU
的方式来提高处理带宽,从而得到更多的处理容量,理论上讲,这...这里说
一个
典型的,就是Linux内核协议栈的可伸缩性(scalable)
问题
,本文主要描述TC...
一个
CPU
可以为很
多线程
服务
一个
CPU
可以为很
多线程
服务,但
一个
线程无法让多个
CPU
为它服务,如果用JAVA写
多线程
程序,可以有几个线程运行在同
一个
CPU
上,但是其中的
一个
线程一旦被分配到了某个
CPU
,那么这个线程就只由这个
CPU
来提供服务了 ...
nodejs cluster
多线程
同步,nodejs
多线程
共享内存
虽然nodejs的I/O操作开启了
多线程
,但是所有线程都是基于主线程开启的只能跑在
一个
进程当中还是不能充分利用
cpu
资源pm2进程管理器可以解决这个
问题
pm2是
一个
带有负载均衡功能的Node应用的进程管理器.e.
cpu
核数与线程...
IOS
多线程
:『GCD』详尽总结
Grand Central Dispatch(GCD) 是 Apple 开发的
一个
多核
编程的较新的解决方法。它主要用于优化应用程序以支持
多核
处理器以及其他对称多处理系统。它是
一个
在线程池模式的基础上执行的并发任务。在 Mac OS X 10.6 ...
多线程
详解(掌握这篇就够了)
文章目录一、线程简介Process和Thread程序 进程 线程核心概念二、线程创建(重点)1、继承Thread2、实现Runnable接口(推荐使用)3、 实现Callable接口4、龟兔赛跑5、小结继承Thread类实现Runnable接口静态代理Thread...
高性能计算
2,408
社区成员
1,025
社区内容
发帖
与我相关
我的任务
高性能计算
高性能计算
复制链接
扫一扫
分享
社区描述
高性能计算
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章