新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 技術白皮書:多核系統(tǒng)編程技術

技術白皮書:多核系統(tǒng)編程技術

作者: 時間:2009-04-13 來源:網絡 收藏



圖2:典型的應用程序,它展示了編程所具有的與生俱來的并行特性。

基于文本的如C語言等,在代碼中利用特殊標記來表示并行化代碼,創(chuàng)建并行任務(也就是創(chuàng)建獨立的線程)。管理這些多線程的應用程序將是一個挑戰(zhàn)。

在C語言中,用戶必須使用鎖操作、互斥量、原子操作和其他高級編程技術來管理同步。當多線程變得難于跟蹤調試,通常的編程缺陷便出現(xiàn)了,如下所示:
1. 由于線程太多而導致效率低下。
2. 死鎖——線程一直在等待某些而不能進行處理。
3. 競爭狀況- 代碼運行的時序沒有被正確管理,在需要數(shù)據(jù)時,數(shù)據(jù)不是沒有準備好就是已經被覆蓋掉了。
4. 存儲器沖突——與代碼中存儲器管理相關的問題。

由于使用C語言進行開發(fā)面臨的這些挑戰(zhàn),程序員們可以獲得比以往更高的效率。

是利用實時SMP支持,處于“Multicore Ready”軟件層的最上層Intel公司定義了用戶需要評估的四個軟件層次來確定多核系統(tǒng)的可用程度。如果所用的應用程序庫和設備驅動不是為多核而設計的,或者操作系統(tǒng)不能夠在多個核心上進行負載均衡,那么并行程序在多核心系統(tǒng)上并不會運行得更快。


上一頁 1 2 3 下一頁

評論


相關推薦

技術專區(qū)

關閉