[疑問] 前幾天上計算機組織學
在下才疏學淺
可能完全誤會老師所講授的知識也說不定
請見諒XDDDD
昨天老師在教管線(pipeline) CPU
其中提到data hazard 的問題
因為管線拆的深度越深
其hazard 現象越嚴重
但是為了解決 data hazard 的問題
學者們提出了 靜態 & 動態的解決方法
其中靜態的方法又分為軟體的方法以及硬體的方法
老師說
軟體的解決方法:
是compiler 從高階語言編譯到組合語言的時候,如果發現有data hazard發生的時候
塞入空指令(NOP)
但這無法有效解決data hazard 的問題
所以學者們又提出一個方法: forward (手邊沒書,可能有錯,回家再修改)
將data hazard 區域 上面或是下面不影響結果的組合指令搬到data hazard 的區域
取代NOP
進而將大多數的NOP殺掉
也就是說
原本
1.-------------
2.-------------
3.-------------
4.-------------
5.-------------
6.-------------
7.-------------
8.-------------
經過forward 之後
可能會變成
1.-------------
2.-------------
5.-------------
6.-------------
3.-------------
4.-------------
7.-------------
8.-------------
雖然指令順序不一樣
但是結果卻是正確的
這時候我突然出神
想到The Matrix
會不會人們有時候會預知、預見
其實都是因為有這樣指令重排的機制在??
以後才會發生的事情 (ex.第5.6道指令)
因為某種原因 (ex.程式速度、系統穩定)
事先發生
但是因為在處理完第 1.2.3.4道指令之前
邏輯上第5.6道是還沒發生的
等到真正1234道指令完成之後
事情才真正發生
但是因為指令前挪
所以發生預知的現象 ??
我黑白想的
可能荒誕不經、胡說八道
各位大大看看就好 XDDDDDDD
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.134.115.251
※ 編輯: liu2007 來自: 140.134.115.251 (04/14 20:01)
推
04/14 20:23, , 1F
04/14 20:23, 1F
→
04/14 20:24, , 2F
04/14 20:24, 2F
好像沒有這麼高級.....
有點像是絕命終結站那樣
主角會突然看到未來的景象
而不是故意去預知
※ 編輯: liu2007 來自: 118.232.58.39 (04/14 23:28)
推
04/15 00:18, , 3F
04/15 00:18, 3F
推
04/15 00:31, , 4F
04/15 00:31, 4F
→
04/15 00:34, , 5F
04/15 00:34, 5F
→
04/15 00:35, , 6F
04/15 00:35, 6F
→
04/15 00:35, , 7F
04/15 00:35, 7F
人不是指令的執行者
指令的執行者是系統 或是程式
人只是受到指令的結果所影響的client
只能發送要求、接受結果
※ 編輯: liu2007 來自: 118.232.58.39 (04/15 00:56)
推
06/23 08:02, , 8F
06/23 08:02, 8F
→
06/23 08:04, , 9F
06/23 08:04, 9F
→
06/23 08:04, , 10F
06/23 08:04, 10F
→
06/23 08:05, , 11F
06/23 08:05, 11F
→
06/23 08:07, , 12F
06/23 08:07, 12F
→
06/23 08:08, , 13F
06/23 08:08, 13F
→
06/23 08:09, , 14F
06/23 08:09, 14F
推
06/23 08:14, , 15F
06/23 08:14, 15F
推
09/26 20:40, , 16F
09/26 20:40, 16F
推
12/18 02:07, , 17F
12/18 02:07, 17F
TheMatrix 近期熱門文章
PTT影音娛樂區 即時熱門文章