主题:多核编程与多线程编程什么关系啊?
feiyuno1987
[专家分:10] 发布于 2011-09-03 15:47:00
在单核下也能写多线程应用,看来多线程不等于多核,两者关系是什么?
回复列表 (共6个回复)
沙发
yeg001 [专家分:14390] 发布于 2011-09-04 00:32:00
你看看你的windows单核计算机有多少个进程? 那也类似于一种并行.
单核当然也可以开多线程, 问题是他们只能排队, 因为一个物理核心同一时间只能执行一个线程. omp允许你打开指定数目的线程来适应你的需要.
板凳
bshine1225 [专家分:720] 发布于 2011-09-04 17:48:00
单核可以开多线程,但同一时间只能执行一个指令,因此单核开多线程或多进程无法提高计算效率。
3 楼
feiyuno1987 [专家分:10] 发布于 2011-09-04 21:11:00
恩,我现在讨论的是双核的。
4 楼
cgl_lgs [专家分:21040] 发布于 2011-09-05 10:21:00
单核有超线程,也可以同一时间执行两条指令。
但一个核拥有一组高速缓存。所以在单核多线程遇不到的问题在多核中可能会遇见!
5 楼
feiyuno1987 [专家分:10] 发布于 2011-09-05 18:41:00
恩,多核并行计算带来的麻烦确实应该让硬件生产商和操作系统生产商好好解决,别让我们瞎操心。
6 楼
cgl_lgs [专家分:21040] 发布于 2011-09-06 13:42:00
但有些是不得不由我们操心的,至少暂时还得操心一阵子:)
比如最有名儿的就是:伪共享问题:)
我来回复