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
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
Nazwa padła ofiarą szantażystów, inni polscy hosterzy też zagrożeni?
22
Darmowy Internet od Aero2. Jak go zdobyć i jakie są prawdziwe koszta? Instrukcja krok po kroku
11
Programowanie w środowisku Android – wprowadzenie do projektowania aplikacji dla urządzeń mobilnych
17
Premiera Diablo 3 wzbudziła dyskusję na temat gier, które zawsze chcą być online
19
Nowy problem z Windows 8: bootuje się za szybko
10
Amerykańscy rodzice straszeni „e-narkotykami” dostępnymi w Sieci
21
Anonymous upubliczniają 1,7 GB danych wykradzionych Departamentowi Sprawiedliwości USA
12
Blueseed: libertariańska sztuczna wyspa przyciągnęła już ponad sto startupów z całego świata
8
Rewolucja w Firefoksie, nowa łatka czterokrotnie ograniczyła zużycie pamięci
20
Darmowy Internet od Aero2. Jak go zdobyć i jakie są prawdziwe koszta? Instrukcja krok po kroku
11
CVDazzle: makijaż jest w stanie pokonać automatyczne systemy ulicznego monitoringu
3
Programowanie w środowisku Android – wprowadzenie do projektowania aplikacji dla urządzeń mobilnych
17
Ubuntu 12.04 LTS już dostępny: stabilna dystrybucja na następne pięć lat?
28
Zostań webmasterem polskiego rządu, zarobisz na komfortowe życie dla siebie i swojej rodziny
33
Społeczność
anga star za droga ludzie wy myślicie!?Jestem 4 klasistką rodzice się nigdy nie...
Jan Zwyczajnych filmów tak kręcić się nie da co najwyżej krótkie scenki jak w...
piotrek____ @asdfgh - yup, też tak sądzę.
Tak jak wtedy ten przeciek o żołnierzu...
gonzales Javowcy pozdrawiają dotnetowców xD
kaziks Galaxy S II - u mnie po aktualizacji Firefox działa strasznie zacina się...
Doniek Szkoda że strona z demo nie działa - non stop się przeładowuje
bartez Niech zaczną jeszcze bardziej ograniczać programistów, to zdziwią się ilu...
- Najdmen.pl: Konta www z wyłączonym licznikiem transferu od IONIC.pl (1)
- 2BE.PL: [Oferta] Promocja jak złoto w 2BE.PL (1)
- 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)
Polecane książki
Praca
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