python並行程式設計學習之緒論

2022-07-31 09:42:16 字數 832 閱讀 5236

電腦科學的研究,不僅應該涵蓋計算處理所基於的原理,還因該反映這些領域目前的知識狀態。當今,計算機技術要求來自電腦科學所有分支的專業人員理解計算機處理的基礎的關鍵,在於知道軟體和硬體在所有層面上的互動。

直到現在,程式設計師可以依賴於硬體設計者,編譯器和晶元廠商,來使他們的軟體程式執行更快或者更有效,而無須改變他們的程式。但是,在實際中,如果乙個程式執行的更快,它肯定是乙個並行程式。儘管很多研究者的目標是保證程式設計師在編寫他們的程式的時,無需注意硬體的並行特徵,但是,要實現這一點,還將需要很多年的時間才有可能。所以在現在,程式設計師需完全的理解硬體和軟體之間的聯絡,以使他們的程式可以在現代計算機結構中有效地執行。

在計算機程式設計中,解決乙個規模較大的問題的典型方式是,將這個問題分成更小的以及獨立的部分,以便同時解決所有問題。並行程式設計,恰恰傾向於使用這種方式,通過使用多個處理器核進行同時工作,來完成乙個共同的任務。每個處理器核解決這個問題的一部分(獨立的部分)。此外,在處理器核計算的過程中,資料資訊的互動將會在它們之間發生,這樣就會涉及到,這麼乙個問題,對資料資訊讀取的先後,即如何解決記憶體訪問衝突的問題,當然,這也跟計算機體系結構有所關係,這將在後續內容中進行總結和分析。

現今,很多軟體應用都要求更強的計算能力,一種方式來實現這個目標是增強每個處理器核的執行速度或者去增強每片晶元的處理器核數目。但是,這種方式會帶來以下的負面影響,例如,提高處理器的執行速度會產生額外的熱能損耗,因此效能的提公升會帶來一瓦特甚至更多的能量損耗,這就對裝置的冷卻效能有所要求;而增強處理器核的數目看起來是一種很好的選擇,因為能量損耗和耗散受到限制,但是,效能卻沒有顯著的提公升。

為了解決這個問題,現在的計算機硬體廠商都採取一種多核架構。而採取並行程式設計,很好的利用這種架構設計,可以使可用計算資源得以充分利用。

python學習 python緒論

在命令提示符視窗輸入python,就可以執行python啦!如果在互動式環境輸入python後出現 python is not recognized as an internal or external command,operable program or batch file.是因為window...

《機器學習》之 緒論

學習的定義 對於某類任務t和效能度量p,如果乙個電腦程式在t上以p衡量的效能隨著經驗e而自我完善,那麼我們稱這個電腦程式在從經驗e中學習。設計乙個學習系統 選取訓練經驗的型別,關鍵屬性是訓練經驗能否為系統的決策提供直接或間接的反饋 學習器可以在多大的程度上控制訓練樣例序列 訓練樣例的分布能多好地表示...

學習筆記 並行程式設計

環境配置見前篇 pragma omp parallel num threads 執行緒數 pragma omp parallel for num threads 執行緒數 pragma omp critical 矩陣乘法 不定長文字分組void func 每個執行緒執行的函式 void rank p...