• 數據流體系結構

    編輯
    本詞條由“匿名用戶” 建檔。

    什么是數據流體系結構

    編輯

    數據流體系結構是一種計算機體系結構,直接與傳統的馮·諾依曼體系結構或控制流體系結構進行了對比。數據流體系結構沒有概念上的程序計數器:指令的可執行性和執行僅基于指令輸入參數的可用性來確定,因此,指令執行的順序是不可預測的,即行為是不確定的。



    盡管沒有商業上成功的通用計算機硬件使用數據流體系結構,但已在專用硬件中成功實現了該硬件,例如數字信號處理網絡路由、圖形處理、遙測、以及最近在數據倉庫中。這也是許多軟件架構包括今天非常相關的數據庫引擎設計和并行計算框架。

    同步數據流體系結構可進行調整以匹配實時數據路徑應用程序(例如線速數據包轉發)所提供的工作量。本質上是確定性的數據流體系結構使程序員能夠管理復雜的任務,例如處理器負載平衡,同步和對公共資源的訪問。

    數據流體系結構

    數據流架構主題

    編輯

    靜態和動態數據流機器

    使用常規內存地址作為數據依賴項標簽的設計稱為靜態數據流計算機。這些機器不允許同時執行同一例程的多個實例,因為簡單標記無法區分它們。

    使用內容可尋址內存(CAM)的設計稱為動態數據流計算機。他們在內存中使用標簽來促進并行性。

    編譯器

    通常,在控制流體系結構中,編譯器會分析程序源代碼中指令之間的數據依存關系,以便更好地組織二進制輸出文件中的指令序列。指令是按順序組織的,但是相關性信息本身未記錄在二進制文件中。為數據流計算機編譯的二進制文件包含此依賴項信息。

    數據流編譯器通過為每個依賴項創建xxx的標簽而不是使用變量名來記錄這些依賴項。通過為每個依賴項賦予xxx的標記,它允許二進制文件中的非依賴性代碼段無序且并行地執行。編譯器檢測循環,break語句和各種編程控制語法以獲取數據流。

    程序

    程序被加載到動態數據流計算機的CAM中。當指令的所有加標簽的操作數可用時(即,從先前指令的輸出和/或用戶輸入),該指令被標記為準備好由執行單元執行。

    這稱為激活或觸發指令。一旦執行單元完成了一條指令,其輸出數據(及其標簽)就會發送到CAM。然后,將任何依賴于此特定基準面(由其標記值標識)的指令標記為可以執行。這樣,后續指令將以正確的順序執行,從而避免出現競爭狀況。該順序可能不同于人類程序員所設想的順序順序,即編程順序。

    說明

    指令及其所需的數據操作數將作為數據包(也稱為指令令牌)傳輸到執行單元。類似地,輸出數據作為數據令牌被發送回CAM?。指令和結果的分組化允許大規模并行執行就緒指令。

    數據流網絡將指令令牌傳遞給執行單元,并將數據令牌返回給CAM。與常規的von Neumann體系結構相比,數據令牌不是xxx存儲在內存中,而是暫時性消息,僅在傳輸到指令存儲時才存在。

    內容由匿名用戶提供,本內容不代表www.gelinmeiz.com立場,內容投訴舉報請聯系www.gelinmeiz.com客服。如若轉載,請注明出處:http://www.gelinmeiz.com/108086/

    (3)
    詞條目錄
    1. 什么是數據流體系結構
    2. 數據流架構主題
    3. 靜態和動態數據流機器
    4. 編譯器
    5. 程序
    6. 說明

    輕觸這里

    關閉目錄

    目錄
    91麻精品国产91久久久久