Menedżer wykonania grafiki

Graphics Execution Manager lub GEM to menedżer pamięci dla procesorów graficznych zawartych w jądrze Linuksa . Ma na celu odciążenie sterowników graficznych w tym zadaniu.

GEM został początkowo opracowany dla architektur Intela (które charakteryzują się współdzieloną pamięcią ) przez dwóch inżynierów firmy: Keith Packard i Eric Anholt . Sterowniki dla głównych architektur graficznych (Intel, ale także AMD i NVIDIA ) zostały następnie dostosowane, aby je wykorzystać.

Zintegrowanie menedżera pamięci z jądrem Linuksa było warunkiem wstępnym zarządzania trybami wyświetlania przez jądro ( ustawienie trybu oparte na jądrze ).

GEM został również zaprojektowany tak, aby był kompatybilny z jądrem BSD .

Historia

GEM został zaprezentowany przez firmę Intel wMaj 2008jako alternatywa dla menedżera pamięci graficznej Translation Table Maps (TTM) opracowanego przez Tungsten Graphics (nabytego przez VMware wListopad 2008), do którego następnie zwróciła się większość twórców X.Org, aby zintegrować jądro Linuksa .

Włączenie GEM do jądra Linuksa od wersji 2.6.28 wydanej wgrudzień 2008wydaje się zgadzać z Intelem .

W wyniku tego początkowego wahania, bezpłatne sterowniki dla procesorów AMD i NVIDIA przyjmują działanie mieszane. Te wewnętrznie używają menedżera grafiki odpowiadającego TTM, jednocześnie polegając na interfejsie programowania GEM do komunikacji z resztą systemu graficznego.

Wersja 2.6.31 jądra Linuksa zawiera komponenty niezbędne do umożliwienia kartom ATI Radeon czerpania korzyści z tych ulepszeń. Od Linuksa 3.12 TTM uzyskuje dostęp do pamięci poprzez GEM, rozwiązanie staje się powszechne.

Architektury NVIDIA pojawią się w nowym projekcie , a VIA w projekcie OpenChrome kierowanym przez Tungsten Graphics .

Uwagi i odniesienia

  1. (w) zapowiedź GEM przez Keith Packard na liście dyskusyjnej dla programistów z DRI na13 maja 2008
  2. (w) „Great Linux Innovations Of 2008” Michael Larabel, Phoronix,30 grudnia 2008
  3. (w) „A GEM-ified TTM Manager For Radeon” Michael Larabel, Phoronix,26 sierpnia 2008
  4. (in) „Linux Kernel 2.6.31-rc1 Released” Michael Larabel, Phoronix,25 czerwca 2009

Zobacz też

Powiązane artykuły

Linki zewnętrzne