推 kyuudonut: 題目那個只是舉個例子吧 (D)只要舉i=0跟i=1分別到 09/11 00:07
→ kyuudonut: 不同的thread 就會有hazard了 都會用到 a[101] 09/11 00:07
→ kyuudonut: 然後你看(E) 他就把相依的兩個指令放在同一個for 09/11 00:09
→ kyuudonut: 注意題目舉的例(0,25,50,75) 是由compiler分配 09/11 00:11
→ kyuudonut: (D) 是直接丟給 4core 執行 09/11 00:11
推 aa06697: 題目是假設core隨機使用data 若你用message passing(你 09/11 12:38
→ aa06697: 可以去看一下MPI怎麼實作)可以分配特定data給core執行 就 09/11 12:38
→ aa06697: 可以像你所說的不會有data hazard 09/11 12:38
→ kyuudonut: D即使分成原po那樣依然有data hazard @@ 09/11 13:01
→ aa06697: QQ被原po騙惹我假設他說的是對的 09/11 13:44
→ aa06697: 給原po參考 應該要先寫再讀 但你分開就有可能先讀再寫 09/11 13:46
當初看到題目的時候也沒想到說還要再繼續把讀寫都列出來一個一個檢查,
誤導大家了真是抱歉,謝謝你們的回答!
※ 編輯: angel861047 (1.175.238.139), 09/11/2016 22:14:46
※ 編輯: angel861047 (1.175.59.68), 02/05/2017 20:55:12