圖形執行管理器
圖形執行管理器(英語:Graphics Execution Manager,簡稱GEM)是Intel開發的一套電腦軟體系統,用於為GPU的驅動程式提供主記憶體管理服務。
歷史
GEM由Intel公司於2008年3月開始開發,目標是成為Tungsten Graphics公司所開發的TTM(Translation Table Maps)的輕量且易用的替代品[1][2]。
功能
GEM能管理視訊記憶體(在現代的顯示晶片上尤指處理非統一訪存(即NUMA))並控制圖形相關的執行上下文。GEM允許多個應用程式在不需完整地儲存和恢復顯示卡當前狀態的情況下共享顯示裝置資源,且以管理主記憶體同步的方式保證了應用程式間資料共享時不發生衝突。GEM利用了許多現有的核心子系統來進行操作,因而代碼量也相當小。
應用
從2.6.28版開始,Linux核心就包含了GEM以供Intel顯示卡驅動使用[2]。GEM也被設計成能與BSD核心相容,實際應用仍在開發中[3]。GEM也在原始發布聲明里包含了GEM的API的相關文件[4]。
但是,GEM也給非Intel開發者造成了困擾,並會與當前的X.Org Server開發相衝突(尤其是與DRI2和新的EXA加速架構),導致一些使用者選擇使用「GEM化」的TTM(提供了和GEM相同的介面,但內部仍用TTM實現),如ATI Radeon和VIA S3 Graphics顯示晶片驅動就在此列[5][6]。
參考
- ^ Michael Larabel. Intel's Graphics Execution Manager. Phoronix. May 14, 2008 [2011-10-20]. (原始內容存檔於2011-09-29).
- ^ 2.0 2.1 Michael Larabel. Intel's GEM Merging To Master. Phoronix. June 12, 2008 [2011-10-20]. (原始內容存檔於2011-09-29).
- ^ Michael Larabel. GEM/KMS On FreeBSD Is Working, But Not Ready. Phoronix. July 4, 2011 [2011-10-21]. (原始內容存檔於2011-10-05).
- ^ Keith Packard. GEM - the Graphics Execution Manager. LWN.net. May 27, 2008 [2011-10-20]. (原始內容存檔於2011-10-10).
- ^ Michael Larabel. A GEM-ified TTM Manager For Radeon. Phoronix. August 26, 2008 [2011-10-20]. (原始內容存檔於2011-11-06).
- ^ Michael Larabel. TTM Memory Manager Gets Ready For Release. Phoronix. June 10, 2009 [2011-10-20]. (原始內容存檔於2011-11-21).
外部連結
- GEM update(頁面存檔備份,存於網際網路檔案館) by Keith Packard, 4 Jul 2008
- TTM entry at X.org's wiki
- GEM - the Graphics Execution Manager(頁面存檔備份,存於網際網路檔案館) - detailed GEM information by Keith Packard