3 下列何種處理器的技術或架構,並未積極利用程式中的資料平行性(data parallelism)來提升程式效能?
(A)向量架構(vector architecture)
(B)多媒體延伸指令集(multimedia extensions instruction set)
(C)純量架構(scalar architecture)
(D)超純量架構(superscalar architecture)
答案:登入後查看
統計: A(69), B(93), C(86), D(28), E(0) #3429167
統計: A(69), B(93), C(86), D(28), E(0) #3429167
詳解 (共 1 筆)
#6839441
答案是 (C) 純量架構(scalar architecture)
什麼是資料平行性(Data Parallelism)?
同時對多筆資料執行相同的操作,例如:
ㅤㅤ
ㅤㅤ
A = [1, 2, 3, 4]
B = [5, 6, 7, 8]
C = A + B // 同時計算 4 個加法
各選項分析
❌ (C) Scalar Architecture(純量架構)
- 一次只處理一個資料
- 每個指令只操作單一數值
- 不利用資料平行性
- 例如:傳統的單一 ALU 設計
ㅤㅤ
ㅤㅤ
ADD R1, R2, R3 // 只計算一個加法
✅ (A) Vector Architecture(向量架構)
- 專門設計來利用資料平行性
- 一個指令操作整個向量(多個資料)
- 例如:Cray supercomputers
ㅤㅤ
ㅤㅤ
VADD V1, V2, V3 // 同時計算多個元素的加法
✅ (B) Multimedia Extensions(多媒體延伸指令集)
- 利用 SIMD(Single Instruction Multiple Data)
- 例如:Intel SSE/AVX, ARM NEON
- 用於圖像、影音處理
ㅤㅤ
ㅤㅤ
// 一次處理 4 個浮點數
ADDPS XMM0, XMM1 // 128-bit 暫存器,4×32-bit
✅ (D) Superscalar Architecture(超純量架構)
- 雖然主要利用指令層級平行性(ILP)
- 但也能同時執行多個純量操作
- 多個執行單元可並行處理資料
- 例如:現代 CPU 同時執行多條指令
平行性比較
| 架構 | 平行方式 | 利用資料平行性 |
|---|---|---|
| Scalar | 無 | ❌ 否 |
| Vector | 向量運算 | ✅ 是 |
| SIMD | 單指令多資料 | ✅ 是 |
| Superscalar | 多指令同時執行 | ✅ 有限支援 |
答案:純量架構是最基本的架構,一次只處理一個資料,沒有積極利用資料平行性!
3
0