to foxtm大
您說的是,的確用嘴巴來寫程式是最容易的 , 這我不否認...
您提到的 Data Dependency or Thread Loadbalance 其實也沒那麼嚴重啦...
要跑thread base program 之前,Programmer必須把thread 程式給做好一定的規劃
當然要餵給thread的資料必須要進行標準化 , 標準化從何而來? 當然還是要預先把資料
經過一定的程序,先將彼此之間無關的資料拉出來,做好整理再交給每一個thread 去跑運算
這過程就是降低Data Dependency , thread loadbalance 這個topic到目前應該比較不成問題
因為以前還是單核心CPU為主的年代, 這個topic就很重要 , 以免被某個thread給佔住CPU resource 太多的時間
而現在呢? 情況恰好相反 , 多核心CPU滿街跑 , 所以這個topic只要注意如何分配時間給thread
控制好就可以了 , 拜半導體之賜 , 這個問題幾乎可以不算是問題了!!
所以回到10個孕婦這個例子,在生這個小孩之前,當然可以預先規劃出生的這個小孩身高
體重/手長/腳長/血液重量/五臟大小等等之類的項目,都可以先做好規劃,或許用汽車生產線
來做比喻會更為洽當!! 所以,這個就降低了Data Dependency 問題...
現在最大的問題是,有多少Programmer 能夠不透過相關thread tool ,而能夠設計thread base程式 ??
我為何會問這個問題?? 很簡單,因為我敢說 , 沒幾個人真正認清thread base程式的真正面貌 !!
PS: 以前我還曾看過,有人把Process 當做thread 來看待 , 說實在還差蠻多的....
在這個Subject之下,我只想強調的是 thread清楚的觀念是非常重要的 ,很可惜沒有多少人很清楚!!
