現在平行運算發展最好的是做在GPU上,
根據多核心去分配運算...
CPU也有平行運算,
補充一下好了,GPU的運算核心都破百個核心了,矩陣運算來算3D沒有你說得像加法一樣那麼簡單,
光是運算量影像假設是60FPS代表每秒要算60張圖,
假設解析度1920*1080每置換一張圖就有2073600個像素需要處理,
假設用加法處理並且每個像速做一次加法,那就要做2073600次加法,每秒要做124416000次加法,
這還是處理最簡單的加法,GPU有破百個核心如果其中一個核心塞車,不就完蛋??
當然是不可能的事情啊!!
組織架構中有上層CPU來控制資料要如何分配到GPU的核心內,以最佳化分配就能達到最快速度。
同樣的CPU也有分上層和下層,某一顆CPU會專門協調要分配給哪一顆CPU做運算,
絕對不會發生一個核心塞車讓全部都等待的鳥事。
除非這個軟體工程師兩光。
aa11zzxx wrote:
這不就凸顯出了你不會寫平行運算= =
現在平行運算發展最好的是做在GPU上,
根據多核心去分配運算...
CPU也有平行運算,但是絕對不是用那粗淺的C語言寫出來的...
看了你寫的短短幾行錯3處
單純為酸而酸?
1. android 3.0 以後支援多核心, 是系統支援不是程式支援.
2. android 程式跑在支援多核心的VM上, 所以不管你的程式有沒有寫成多執行序, 作業系統都可以用多核心同時跑, 並不是程式開發者的問題.
3. 有些人不懂VM. 簡單這麼說吧, 你不能直接存取電腦的硬體, 不能叫CPU1做這做, CPU3做這個, 因為VM的關係Android才能同時支持不同的硬體(intel/ARM) 或是不同數量的核心.
4. 絶大部份的遊戲都支援非同步多執行序.像你在angry bird看到的一支鳥, 一支豬, 一個箱子, 都是一支執行序.
http://picasaweb.google.com/HsiuChe.Shih
內文搜尋

X