Python 系統(tǒng)和內存架構

python 系統(tǒng)和內存架構

在設計程序或并發(fā)系統(tǒng)時,需要考慮不同的系統(tǒng)和內存架構樣式。這是非常必要的,因為一個系統(tǒng)和內存樣式可能適合于一個任務,但可能容易出錯其他任務。

 

支持并發(fā)的計算機系統(tǒng)體系結構

michael flynn于1972年對分類不同風格的計算機系統(tǒng)架構進行了分類。該分類法定義了以下四種不同的樣式

  • 單指令流,單數據流(sisd)
  • 單指令流,多數據流(simd)
  • 多指令流,單數據流(misd)
  • 多指令流,多數據流(mimd)。

 

單指令流,單數據流(sisd)

顧名思義,這種類型的系統(tǒng)將具有一個順序輸入數據流和一個單個處理單元來執(zhí)行數據流。它們就像具有并行計算架構的單處理器系統(tǒng)。以下是sisd的架構

sisd的優(yōu)點

sisd架構的優(yōu)點如下 -

  • 它需要更少的電力。
  • 多核之間沒有復雜通信協(xié)議的問題。

sisd的缺點

sisd架構的缺點如下 -

  • sisd架構的速度與單核處理器一樣有限。
  • 它不適合大型應用。

 

單指令流,多數據流(simd)

顧名思義,這種類型的系統(tǒng)將具有多個輸入數據流和多個處理單元,這些處理單元可以在任何給定時間作用于單個指令。它們就像具有并行計算架構的多處理器系統(tǒng)。以下是simd的架構

simd的最佳示例是顯卡。這些卡有數百個獨立的處理單元。如果我們談論sisd和simd之間的計算差異,那么對于添加數組 [ 5,15,20 ] 和 [ 15,25,10 ], sisd架構必須執(zhí)行三種不同的添加操作。 另一方面,使用simd架構,我們可以在單個添加操作中添加。

simd的優(yōu)點

simd架構的優(yōu)點如下

  • 可以僅使用一個指令來執(zhí)行對多個元素的相同操作。

  • 通過增加處理器的核心數量可以增加系統(tǒng)的吞吐量。

  • 處理速度高于sisd架構。

simd的缺點

simd架構的缺點如下

  • 處理器的核心數量之間存在復雜的通信。
  • 成本高于sisd架構。

 

多指令單數據(misd)流

具有misd流的系統(tǒng)具有多個處理單元,其通過在同一數據集上執(zhí)行不同的指令來執(zhí)行不同的操作。以下是misd的架構

misd架構的代表尚未商業(yè)化。

 

多指令多數據(mimd)流

在使用mimd架構的系統(tǒng)中,多處理器系統(tǒng)中的每個處理器可以在不同的數據集并行上獨立地執(zhí)行不同的指令集。它與simd架構相反,在simd架構中,對多個數據集執(zhí)行單個操作。以下是mimd的架構

普通的多處理器使用mimd架構。這些架構主要用于許多應用領域,如計算機輔助設計/計算機輔助制造,仿真,建模,通信開關等。

 

支持并發(fā)的內存架構

在使用并發(fā)和并行等概念的同時,總是需要加速程序。計算機設計者發(fā)現(xiàn)的一個解決方案是創(chuàng)建共享存儲器多計算機,即具有單個物理地址空間的計算機,其由處理器所具有的所有核訪問。在這種情況下,可以有許多不同風格的架構,但以下是三種重要的架構風格

uma(統(tǒng)一內存訪問)

在此模型中,所有處理器均勻地共享物理內存。所有處理器對所有存儲器字具有相同的訪問時間。每個處理器可以具有專用高速緩沖存儲器 外圍設備遵循一系列規(guī)則。

當所有處理器對所有外圍設備具有相同的訪問權限時,該系統(tǒng)稱為 對稱多處理器 。當只有一個或幾個處理器可以訪問外圍設備時,該系統(tǒng)稱為非對稱多處理器 。

非均勻內存訪問(numa)

在numa多處理器模型中,訪問時間隨存儲器字的位置而變化。這里,共享存儲器物理地分布在所有處理器中,稱為本地存儲器。所有本地存儲器的集合形成全局地址空間,可由所有處理器訪問。

僅緩存內存架構(coma)

coma模型是numa模型的專用版本。這里,所有分布式主存儲器都被轉換為高速緩沖存儲器。

下一節(jié):python 線程

相關文章
亚洲国产精品第一区二区,久久免费视频77,99V久久综合狠狠综合久久,国产免费久久九九免费视频