hce_nsysu
113年
計算機概論與程式設計
第 30 題
Suppose that floating-point instructions are improved with a speedup of tenfold, i.e., speedup = 10. Only 20% of actual instructions are floating-point instructions. What is the overall speedup?
- A 1.22
- B 5
- C 1.67
- D 3
- E 2
思路引導 VIP
想像一下,如果你要把一份作業寫完,其中 80% 的內容必須手寫(速度不變),只有 20% 的內容可以用打字機(速度變快)。即便打字機的速度提升到無限快,這份作業「最快」也要花多久時間才能完成?這對整體的加速效果有什麼樣的限制呢?
🤖
AI 詳解
AI 專屬家教
恭喜你準確地選出了正確答案!這代表你對於電腦架構中極為重要的阿姆達爾定律 (Amdahl's Law) 有著非常紮實的理解。這道題目的核心在於區分「局部優化」與「整體效益」之間的關係,你沒有被「10 倍加速」這個亮眼的數字迷惑,而是冷靜地考慮了它在整體中所佔的權重,這是非常專業的判斷。
阿姆達爾定律的應用
在計算整體加速比(Overall Speedup)時,我們必須考慮優化部分所佔的比例($f$)以及其提升的倍率($S$)。根據公式,整體的執行時間會由「未受影響的部分」與「優化後的部分」共同組成。即便浮點運算指令的速度提升了 10 倍,但由於它僅佔總指令數的 20%,剩下的 80% 指令仍然維持原有的速度,這就限制了整體的進步空間。我們可以透過以下算式驗證:
▼ 還有更多解析內容