利用多核的三个层次——观点贴

myan 2006-07-04 07:04:09
利用多核有三个层次。一是系统层次。一个核跑一个OS,每一个程序永远只能用一个核。这样大家都轻松。但是双核的时候我可以跑两个OS,难道4核的时候我需要跑4个OS?8核的时候...,我跑些什么OS呢?所以这个方向不可能很长久。

二是线程层次。就是说每一个新的线程自动利用空闲的core,这样的话应用程序的程序员也不用管,下层的操作系统就包办此事。只要照常写multi- threaded应用就好。我觉得这种模式可以坚持很长时间。因为现在大家一开机器就大概有几十个线程在跑,所以直到比如16核,甚至32核之前,使用这种方法就可以提高性能。问题仅仅在于,多线程程序并不好写,特别是不好调试。所以大家努力学习多线程开发吧。很多客户端程序,可能要求以这种思维重写。 Notepad和Calc的功能越来越强,还真没准要这么重写呢,你还别不信。

三是算法层次。就是说执行每一个具体的算法任务,都尽可能利用多核并行。比如说100个整数相加,在4核CPU上,可以分别让四个核处理25个数的加法,最后将4个结果加起来。这种方法几乎要求我们重写现有的大部分程序,无论是客户端还是服务端的应用。好在似乎只有少数应用需要这么干。而且有OpenMP等帮助我们。

总的来说,无论是第二层次还是第三层次,multicore带来的冲击势必是不可忽略的。
...全文
490 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
现在主频已经感觉不错了,关键是硬盘读写速度和内存存取速度应该提高,相对太落后了。

“每一个新的线程自动利用空闲的core”。我想这只能作为一种默认方式,但不能是唯一的。有的时候必须允许程序员手动控制线程分配。
threenewbee 2006-07-14
  • 打赏
  • 举报
回复
// 难道不能两个CPU一起执行一个线程吗?
这个就是所谓的反向超线程技术,AMD Athlon 64 X2 Socket AM2 版本和 Intel Core 2 Duo 支持。
yaos 2006-07-14
  • 打赏
  • 举报
回复
总的来说,双核的生命周期大概在2010前结束
恐怕要有一种技术来混淆双核多线程的区别

然后,好提升CPU主频

2008可能主频过4的
cpio 2006-07-11
  • 打赏
  • 举报
回复

难道不能两个CPU一起执行一个线程吗?

567

社区成员

发帖
与我相关
我的任务
社区描述
英特尔® 边缘计算,聚焦于边缘计算、AI、IoT等领域,为开发者提供丰富的开发资源、创新技术、解决方案与行业活动。
社区管理员
  • 英特尔技术社区
  • shere_lin
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧