Razlika između inačica stranice Gallium 3D

Izvor: HrOpenWiki
Skoči na: orijentacija, traži
 
Redak 1: Redak 1:
Gallium3D is a free software library for 3D graphics device drivers being developed by VMware, after they acquired Tungsten Graphics[1] – the original authors.
+
 
 
Gallium3D je biblioteka za 3D grafiku (grafička akceleracija) koju razvija VMware nakon što su otkupili originalne autore, Tungsten Graphics.  
 
Gallium3D je biblioteka za 3D grafiku (grafička akceleracija) koju razvija VMware nakon što su otkupili originalne autore, Tungsten Graphics.  
  

Trenutačna izmjena od 15:38, 16. travnja 2011.

Gallium3D je biblioteka za 3D grafiku (grafička akceleracija) koju razvija VMware nakon što su otkupili originalne autore, Tungsten Graphics.

Gallium 3D biblioteka radi kao sloj između grafičkog API-ja i operacijskog sustava sa primarnim ciljem lakšeg pisanja i razvoja drivera, sklapanjem inače dupliciranog koda iz nekoliko različitih drivera na jednom mjestu i podržavati modernu hardversku arhitekturu. Ovo se postiže boljom preraspodjelom poslova, poput prebacivanja upravljanjem memorijom kernelovom DRI driveru.

Gallium 3D je bio dio Mesa od 2009 i trenutno se koristi kao slobodni i otvoreni grafički driver za Nvidia (nouveau projekt), ATI Radeon R300-R900 i djelomično za Intel IGP drivere. Gallium 3D namjerava pružati 3D podrušku čipovima NV2X ili višima; za 3D potrebe na NV0X i NV1X postoji odvojeni projekt koji će podržavati sve u klasičnoj Mesa 3D biblioteci.

Razlika između Mesa 3D

Gallium 3D osigurava jedinstveni API koji obrađuje standardne hardverske funkcije poput shader unita (koji se nalaze na modernom hardveru). Na ovaj način API-ji poput OpenGL 1.x/2.x, OpenGL 3.x, OpenVG, GPGPU infrastruktura ili čak Direct3D (koristi Wine) trebaju samo jedno sučelje koje se zove state tracker, koje cilja Gallium3D API. Za razliku od ovoga, Mesa 3D zahtijeva različita sučelja za svaku hardversku platformu i više različitih API-ja zahtijevaju prijevod u OpenGL što se očituje u dodatnom pretjeranom i nepotrebnom protoku informacija.

Unutar Gallium3D, Direct Rendering Manager (DRM) kernel driveri upravljaju memorijom, a Direct Rendering Interface (DRI2) driveri su orijentirani prema GPU procesiranju. Ovo će riješiti probleme u upravljanju memorijom čija se rješenja smatraju teška/nemoguća unutar mesa 3D.

Korištenje LLVM

Dodatno, korištenje modularne strukture Gallium3D je motiviralo rad na tome da se pojača LLVM kompajler i stvori modul koji optimizira "shader" kod "on the fly". Biblioteka predstavlja svaki shader program koji koristi produljive binarne među-reprezentacije koja se zove Tungsten Graphics Shader Infrastructure (TGSI). Kada Gallium pozove LLVM, TGSI kod se konvertira u LLVM instrukcijski set.

Trenutni status

  1. Prva implementacija i trenutno operativni driveri su Cell SPU i Intel GPU driveri. R300g driver za ATI R300-R500 kartice se također smatraju stabilnima. Započeo je rad na Gallium podršci ATI Radeon R600-R700, Evergreen i Northern Island karticama.
  2. Nouveau tim se bavi prebacivanjem razvoja na Gallium3D, ukljućujući riješenej za starije Nvidia kartice kojima nedostaje mogućnost programabilnih shadera.
  3. Gallium3D je dizajniran kako bi bio neovisan o platformi. Od veljače 2009, Gallium3D se jednako pokreće na Linuxu i na FreeBSD kernelima.
  4. 11. veljače 2009, gallium-0.2 grana se spojila sa glavnom razvojnom granom Mesa, te se razvoj tu nastavio.
  5. 1. svibnja 2009, zack Rusin iz Tungsten Graphics je dodao OpenVG tracker u mesa3D koji omogućuje hardversku akceleraciju 'Scalable Vector Graphics' na bilo kojem Gallium3D baziranom driveru.
  6. Od 13. srpnja 2008 razvoj Nouveau je baziran isključivo za Gallium framework. Stari Dri driver je maknut iz glavne grane mesa repozitorija na Freedsektop.org.
  7. Prva mesa3D koja uključuje Gallium3D je verzija 7.5 na 17. srpnja 2009.
  8. Od rujna 2010, postoje dva Gallium3D drivera za ATI hardver poznati kao R300g i R600g za R100-R500 i R600-Evergreen GPU-e. Inicijalna podrška za Evergreen GPU je dodana u R600 driver 10. rujna 2010.

Izvor

Zanimljivi linkovi

  1. http://zrusin.blogspot.com/2007/09/gallium3d.html
  2. http://mesa3d.sourceforge.net/
  3. http://lwn.net/Articles/257417/
  4. http://stecchino.blip.tv/file/1181861/
  5. http://www.bitblit.org/gsoc/g3dvl/
  6. http://llvm.org/
  7. http://revolf.free.fr/FOSDEM/2010/FOSDEM2010_ALTOS_007_Gallium3D.pdf
  8. http://akademy2008.kde.org/conference/slides/zack-akademy2008.pdf
  9. http://www.lunarg.com/wordpress/technologies/gallium-3d/gallium3d-online-developers-workshop/