圖形執行管理器
圖形執行管理器(英語: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