作者MOONRAKER (㊣我仅略尽棉薄之力而已.)
看板Programming
标题Re: [问题] 硬体 多核/多执行绪 与 软体运作
时间Mon Nov 3 17:16:04 2008
※ 引述《JohnLinq (林约翰)》之铭言:
: ※ [本文转录自 C_and_CPP 看板]
: 作者: JohnLinq (林约翰) 看板: C_and_CPP
: 标题: [问题] 硬体 多核/多执行绪 与 软体运作
: 时间: Mon Nov 3 11:45:18 2008
: 目前正在学习函数指标,
: 资料上说,函数指标的运作,有可能会造成分支预测失败,流水线(管线)断流;
: 到处乱看了一堆资料之後,感觉相当地混乱,所以想跟大家请教一下。
: 流水线(管线)、分支预测、非循序(乱序)执行、指令级并行、执行绪级并行,哇啦哇啦
: 1. 硬体上:
: 1.1 多核心,拥有多个CPU
: [请了多个工人]
: 1.2 多执行绪,一颗CPU拥有许多不同的处理单元
: 整数运算单元、浮点运算单元、逻辑运算单元,取指令单元等等
: 当 执行绪-A 在使用 整数运算单元 的时候
: 执行绪-B 可以使用 浮点运算单元
: [一个工人拥有三头六臂]
: 2. 软体上:
: 程式没有复杂到需要另起一个Process,
: 但是,又希望能够将 工作细项 分割开来,以利分工合作,
: 於是,一个Process可以再细分为多个Thread。
: Q0. 以上,我的理解对吗?
不对,pipeline是在instruction-level,不是thread-level。
Thread-level multitasking是OS在做,靠context switching来达成。
: Q1. 多执行绪的CPU,是不是就会有多个Pipeline啊?
不必要。虽然现代的CPU全都有pipeline,但是pipeline不是实现
multithreading的要件。而且真的有multithreading CPU这回事吗?
: Q2.
: 看起来,一般电脑上的软体Thread还是采用分时多工的方式,
: 同一时间内只有一个Thread能够被执行。是这样吗?
: [一般电脑:不是 伺服器/工作站 也不是 嵌入式系统]
你真的觉得这样吗?现在花小钱就可以买到焢肉(CONROE)喔。
--
BATCH 03 : 买张床 - 切达大侠 - 伐木人之歌 -
http://tinyurl.com/3zpyx5
[B4准备中]: 讴歌金钱(7/02) - 单车超人(7/23) -
http://tinyurl.com/66v6vq
[ 番外篇 ]: 包租婆也有过当罗莉的时候(7/17) -
http://tinyurl.com/6j4ale
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
■ 蒙帝派松正体中文计画 ■ Spam-a-lot and enjoy the pythonesque delight!
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ https://www.youtube.com/user/JamesBondXD▄▄
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.115.210.4
1F:→ MOONRAKER:(有啦,P4至少有号称。) 59.115.218.148 11/04 01:17