多核心與同步
在平行程式中,即使增加核心數量,效能仍未如預期成長,下列何者不屬於其原因?
- A鎖的等待等,執行緒之間的同步很多
- B各執行緒的工作量有很大的偏差
- C各執行緒只讀寫自己專用的資料
查看答案與解析
正確答案:C. 各執行緒只讀寫自己專用的資料
妨礙平行化效果的主要原因包括:無法平行化的部分(阿姆達爾定律)、鎖或屏障造成的等待、共用資料或偽共享造成的快取列來回移動、工作的偏差,以及記憶體頻寬不足等。若各執行緒只處理自己專用的資料,就不會產生與其他執行緒的通訊或等待,更接近理想的平行化。
- A. 同步的等待是妨礙成長的典型原因。
- B. 工作的偏差會產生等待慢執行緒的時間。
- C. 正確。只用專用的資料,不會妨礙成長。