对多核的一些疑问

tsinghualangzi 2008-05-15 04:26:06
intel_cyu:

你好!
我对多核了解不是很了解,现在想向你请教几个问题!
1、对于单线程,多核比单核有优势吗?
2、对于多核的性能,是不是需要操作系统的支持?现在单机版的操作系统的调度任务算法好像是针对一个核的(从这里来看,可以认为整个系统是一个单线程程序),网络系统所针对的CPU好像与现在的多核不是一回事吧?多核与多CPU有区别吗(我说的CPU是网络系统中所指的那中CPU的概念)?现在都有那些操作系统支持多核?
3、在多核系统中,各个核有主次之分吗?对于线程由哪个核来处理调配、线程之间的协调是由那个核来处理的?当系统切换进程的时候,是不是所有的核的线程都要切换?切换的时机由那一个核来决定?当系统进行把运行着的程序挂起并移出内存时,由那个核来决定?
4、多核的各个核是不是共用一个cache?对内存数据的读取是不是共用总线?


先谢谢intel_cyu!
...全文
110 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
intel_cyu 2008-05-15
  • 打赏
  • 举报
回复
1. 单线程的应用程序本身不能从分发挥多核的性能。 但是,单线程的应用程序在多核也可能得到提升。 这是因为,通常系统会有多个线程同时运行(其他应用程序,或OS线程),当单线程的程序运行于单核的系统中,通常并不能保证完全占有处理器。在多核的系统中,该单线程的程序有可能被调度到更多的处理器资源。

2.现代的OS都支持多核调度(Windows XP, Linux).

3.没有主次之分。多核与SMP机器的基本思想是不限定某一个核或处理器处理特定功能。 OS 进行线程调度的时候, 不一定所有的线程都要切换。 OS的调度程序也没有限制要运行于某一个特定的"核"上。

4.各个核都有自己的独立的L1 的Cache. L2 Cache 是否共享与处理器相关。有共享也有分开的。内存数据读取都是通过前端总线。

567

社区成员

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

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