計算機體系結構中並行性的條件是什麼?


並行性有各種條件,如下所示 -

  • 資料和資源依賴性 - 程式由多個部分組成,因此需要能夠並行實現程式的各個部分,每個部分在其他部分方面應該是自主的。程式各個部分的依賴關係可能有多種形式,如資源依賴、控制依賴和資料依賴。

    依賴圖可以定義這種關係。程式語句由節點定義,帶有多個標籤的有向邊顯示語句之間的順序關係。分析依賴圖後,可以證明存在並行化和向量化的機會。

    資料依賴性 - 資料依賴性顯示語句之間的關係。資料依賴性有 5 種類型,如下所示 -

    • 反依賴性 - 如果語句 S2 在語句 ST1 之後執行,並且 ST2 的輸出與 ST1 的輸入重疊,則語句 S2 反依賴於語句 ST1
    • 輸入依賴性 - 讀取和寫入是輸入語句輸入依賴性,並非因為涉及相同的變數,而是因為兩個輸入語句都引用了相同的檔案。
    • 未知依賴性 - 在以下方法中無法找到兩個語句之間的依賴關係
      • 變數的下標本身是下標。
      • 下標沒有迴圈索引變數。
      • 下標在迴圈索引變數中是非線性的。
    • 輸出依賴性 - 如果兩個語句建立相同的輸出變數,則它們是輸出依賴。
    • 流依賴性 - 如果存在從 ST1 到 ST2 的表示式路徑,並且至少 ST 的輸出饋送到 ST2 的輸入中,則語句 ST2 流依賴於語句 ST1
  • 軟體並行性 - 軟體依賴性由程式的控制和資料依賴性表示。程式配置檔案或程式流程圖揭示了並行度。軟體並行性是演算法、程式設計風格和編譯器最佳化的函式。程式流程圖顯示同時可執行操作的模式。程式中的並行性在實現期間會發生變化。

  • 硬體並行性 - 硬體並行性由硬體多重性和機器硬體表示。它是成本和效能權衡的函式。它表示同時可執行操作的資源應用設計。它還表示處理器資源的執行。識別硬體中並行性的一種方法是使用每個機器週期發出的多個指令。

更新於: 2021-07-30

7K+ 瀏覽量

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.