Google Chrome 7: pełna akceleracja sprzętowa grafiki przez OpenGL
Zespół pracujący nad Internet Explorerem 9 nie ma łatwego życia. Powolny cykl rozwojowy przeglądarki Microsoftu sprawia, że wprowadzane w niej innowacje zostają podchwycone przez konkurencję i umieszczone w browserach, których finalne wersje pojawią się na długo przed finalną wersją IE9. Taki los spotkał m.in. sprzętową akcelerację grafiki 2D. Wpierw jej wprowadzenie zapowiedziała Mozilla, a teraz Google poinformowało o całkowitej przebudowie systemu graficznego Chromium.
Na łamach oficjalnego bloga projektu Chromium, inżynierowie z Mountain View potwierdzili, że siódma wersja Google Chrome będzie korzystała z procesora graficznego, aby przyspieszyć „cały model rysowania, w tym wiele typowych operacji 2D, jak kompozycja (compositing) i skalowanie obrazów”.
U podstaw sprzętowej akceleracji grafiki w Chromium leży nowa architektura programu. W liście aktywnych procesów przeglądarki można znaleźć teraz coś, co nazwano „GPU process”. Przejmuje on polecenia dla podsystemu grafiki od rendera i przekierowuje je do OpenGL, lub poprzez bibliotekę translacyjną ANGLE, do DirectX na Windows. Proces GPU został zaprojektowany tak, aby umożliwić dostęp do systemowego interfejsu 3D zarówno z poziomu sandboksu, w którym normalnie działa renderer, jak i jeszcze bardziej restrykcyjnego „więzienia”, w którym działa platforma uruchomieniowa kodu binarnego Native Client.
Dzięki takiemu podejściu możliwe staje się rozdzielenie procesu renderowania strony na wiele niezależnych warstw. Oddzielnie mogą być renderowane warstwy obrazów, CSS, wideo, canvas, czy grafiki 3D (WebGL), korzystając z wielowątkowości oferowanej przez nowoczesne procesory graficzne. Przyjmowane przez proces GPU polecenia zostały przygotowane tak, aby jak najbardziej pasować do API OpenGL-a ES 2.0. Całość jest komponowana również na poziomie GPU, ponieważ wykorzystanie do tego głównego procesora tylko spowolniłoby cały proces.
Są trzy główne zalety takiego podejścia. Oferuje ono bezpieczeństwo, dzięki temu że praktycznie cała logika procesu renderowania pozostaje zamknięta w sandboksie renderera, solidność, ponieważ awarie procesu GPU nie zawieszają przeglądarki oraz uniformizację – wybór Open GL 2.0 ES pozwoli na utrzymanie jednolitej bazy kodu dla wszystkich platform, na których przeglądarka Chrome działa.
Więcej o rozwiązaniu Google'a można poczytać w artykule na stronie sites.google.com/a/chromium.org/dev/developers/design-documents/gpu-accelerated-compositing-in-chrome. Aby włączyć w najnowszych deweloperskich wersjach programu sprzętową akcelerację dla kompozycji, należy uruchomić przeglądarkę z flagą z --enable-accelerated-compositing.
Efekt jest znakomity – uruchomione w ten sposób Chromium z łatwością radzi sobie z testami przygotowanymi przez Microsoft, które miały demonstrować zalety sprzętowej akceleracji w IE9. Biorąc pod uwagę tempo, w jakim rozwija się i jest wydawana przeglądarka Google'a, można się spodziewać, że jeszcze jesienią obsługa GPU będzie domyślnie włączona w wersji stabilnej Chrome.
źródło: blog.chromium.org
Polecamy
Reklama
Komentarze
Aby dodać komentarz, musisz podać swój nick, treść komentarza oraz poprawnie przepisać oba słowa z obrazka
(słowa muszą być rozdzielone spacją).
W treści komentarza można używać języka formatowania BBcode.
Popularne
MSWiA zamówiło narzędzia do „złamania” Tora i podsłuchiwania internautów. Czy złamało przy tym prawo?
89
Korea Północna: korzystasz z telefonu komórkowego? Jesteś więc zbrodniarzem wojennym
5
Nowa polityka prywatności Google'a już za miesiąc wejdzie w życie. Mamy się czego bać?
16
Firefox 10 już jest. Wiele atrakcji dla programistów, użytkownicy raczej nic nie zauważą
9
Pobieraczek.pl pozwie internautów, którzy nie chcą płacić abonamentu
1451
Linux wypiera z korporacyjnych serwerów już nie tylko Uniksy, ale i Windows
11
Źle się dzieje z Chrome, ze stabilnością coraz gorzej. Gdzie się podziała słynna izolacja procesów?
23
MSWiA zamówiło narzędzia do „złamania” Tora i podsłuchiwania internautów. Czy złamało przy tym prawo?
89
[Aktualizacja] Facebook zablokował Demotywatory.pl. W czym zawiniły?
36
FBI zamknęło Megaupload. Anonimowi dali się sprowokować. Teraz ich akcja uzasadni potrzebę SOPA?
17
Pobieraczek.pl pozwie internautów, którzy nie chcą płacić abonamentu
1451
Rząd Tuska zablokował dostęp do tańszych leków z internetowych aptek
61
Programowanie w środowisku Android – wprowadzenie do projektowania aplikacji dla urządzeń mobilnych
15
„Donald matole, twój rząd dopadną kibole” – hakerska elita przyłącza się do walki z ACTA
23
Społeczność
matrixik A ja już długi czas temu przesiadłem się z Konnecta na Mirandę i jestem...
hipertracker @slawek22, ORM wcale nie musi tworzyć nieoptymalnych kwerend. Poza tym...
Rumcajs Kolejna PRowska ściema Donka. Już mnie krew zalewa.
Artykuł 41...
zalesz o Pan Sławek :)
Patrzę nic się nie zmieniło, w sumie to nic się nie...
slawek22 Jeszcze taka dygresja na poparcie tezy, akurat sobie czytałem o node...
slawek22 Tylko po co mi 5, 10 albo nawet 15 razy szybszy JRuby skoro całą "moc...
pobieraczek.pl zapłacicie wszyscy ;D
- gardius: Dobra hurtownia sportowa (1)
- gardius: Tanie książki gdzie warto kupować? (1)
- Najdmen.pl: PROMOCJA, 500 DOMEN .EU ZA 1 PLN NETTO ! (1)
- VMLine: [Oferta] Serwery VPS Xen-HVM/OpenVZ z darmową administracją (2)
- Marek: Generowanie PDFa (2)
- Marek: problem z menu (2)
- Marek: Własne checkboxy w HTML,CSS (1)
Polecane książki
Praca
Obsługa księgowa z językiem niemieckim
Tech Support Engineer with fluent English and German, French, Italian or Spanish
Młodszy Specjalista w Dziale Należności ze znajomością języka francuskiego
Analityk Baz Danych i Systemów Monitorowania
Menedżer ds. Klienta Biznesowego
Starszy Programista Aplikacji Internetowych/Team Leader
Czytaj Webhosting
Chcesz być na bieżąco z naszymi informacjami? Zapisz się na Newsletter.
Zarejestruj domenę
Sprawdź dostępność swojej domeny:
| .pl: | 0 zł | .com: | 19.90 zł | |
|---|---|---|---|---|
| .com.pl: | 0 zł | .eu: | 19.90 zł |









#1 grzesiek2 2010-08-28 20:02:13 0
IP: 90.156.104.[...] Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.127 Safari/533.4
#2 ke_be® 2010-08-28 20:03:59 0
IP: 195.150.49.[...] Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.3 (KHTML, like Gecko) Chrome/6.0.472.51 Safari/534.3
#3 Anonim 2010-08-28 20:08:27 0
IP: 93.179.208.[...] Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.6 (KHTML, like Gecko) Chrome/7.0.503.0 Safari/534.6
#4 grzesiek2 2010-08-28 20:10:17 0
IP: 90.156.104.[...] Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.127 Safari/533.4
#5 grzesiek2 2010-08-28 20:17:17 0
IP: 90.156.104.[...] Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.127 Safari/533.4
#6 dan 2010-08-28 20:38:55 0
IP: 178.37.91.[...] Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8
#7 wujekbogdan 2010-08-28 21:12:59 0
IP: 89.75.16.[...] Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.6 (KHTML, like Gecko) Chrome/7.0.503.0 Safari/534.6
#8 Serpher® 2010-08-29 18:51:05 0
IP: 77.255.62.[...] Opera/9.80 (Windows NT 5.1; U; pl) Presto/2.6.31 Version/10.70
#9 dan 2010-09-01 11:32:25 0
IP: 62.233.215.[...] Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8
#10 look997 2010-12-26 13:27:55 0
IP: 86.63.66.[...] Mozilla/5.0 (Windows NT 5.1; rv:2.0b9pre) Gecko/20101225 Firefox/4.0b9pre