Chromium Blog
News and developments from the open source browser project
OpenGL ES 2.0 Certification for ANGLE
Monday, November 28, 2011
In March of last year
we introduced
ANGLE as the engine that would power Chrome's GPU rendering on Windows. At the time it was announced,
ANGLE
only supported a subset of the OpenGL ES 2.0 API. Thanks to continued work from TransGaming, in collaboration with Google engineers and other contributors, ANGLE has reached an important milestone: It now passes the rigorous OpenGL ES 2.0 test suite and ANGLE version 1.0 has been certified as a compliant GL ES 2.0 implementation. This is a major step forward for the project, and a major event for OpenGL ES support on Windows.
Mac and Linux already enjoy solid OpenGL support, but on Windows OpenGL drivers are not sufficiently widespread to be relied upon. Using ANGLE allows us to issue OpenGL ES commands in Chrome's graphics systems and not worry about the user's computer having OpenGL drivers -- ANGLE translates these commands into Direct3D 9 API calls.
ANGLE helps Chrome use a single, open graphics standard and remain portable across platforms. Because it's a standalone library, open-source project ANGLE can help other software projects in the same way. Firefox, for instance, is already using ANGLE to render WebGL content on Windows.
ANGLE is a necessary step in our continued efforts to push the web platform forward. Without ANGLE, it would be impossible to reliably run WebGL on many Windows computers, so we couldn't enable great applications like
MapsGL
. We hope WebGL developers and implementors will continue to join us in making ANGLE, and the open web platform, successful.
Posted by Vangelis Kokkevis, Software Engineer
A game changer for interactive performance.
Monday, November 21, 2011
Today we are announcing the release of Chrome’s new
incremental garbage collector
(GC) which dramatically improves interactive performance of web apps and HTML5 games.
The V8 project has made
huge progress
improving
peak performance
of web apps. With the advent of technologies like
WebGL
we’re seeing the emergence of highly interactive and graphically intensive apps, such as the
new version of Google Maps
,
new games
and
demos
. But with these new uses comes a need for better
interactive performance
in JavaScript.
Avoiding pauses is vital to achieving good interactive performance. Previously, garbage collection pause times depended on the amount of memory used. Therefore, large interactive apps were impacted by pauses that caused hiccuping. V8’s new GC reduces pause times dramatically while maintaining great peak performance and memory use.
To evaluate the new GC, we took the most memory intensive peak performance test from the V8 Benchmark Suite and used it to make a
stress test
for interactive performance. In our testing the maximum time to render a frame including pause time is reduced from 272ms to 50ms.
The new GC in Chrome improves interactive performance and opens up new possibilities for the interactive web. If you are developing highly interactive web apps or games, please try it out and share your experiences. It is available now on the
dev channel
.
Posted by Vyacheslav Egorov and Erik Corry, Software Engineers
Lossless and Transparency Encoding in WebP
Thursday, November 17, 2011
In September 2010 we announced the
WebP
image format with lossy compression. WebP was proposed as an alternative to JPEG, with
25–34%
better compression compared to JPEG images at equivalent SSIM index. We received lots of feedback, and have been busy improving the format.
Last month
we announced WebP support for animation, ICC profile, XMP metadata and tiling. Today, we introduce a new mode in WebP to compress images losslessly, and support for transparency – also known as alpha channel – in both the lossless and lossy modes.
With these new modes, you can now use WebP to better compress all types of images on the web. Photographic images typically encoded as JPEG can be encoded in WebP lossy mode to achieve smaller file size. Icons and graphics can be encoded better in WebP lossless mode than in PNG. WebP lossy with alpha can be used to create transparent images that have minimal visual degradation, yet are much smaller in file size. Animations compressed as GIFs can use animation support in WebP.
New lossless mode
Our main focus for lossless mode has been in compression density and simplicity in decoding. On average, we get a 45% reduction in size when starting with PNGs found on the web, and a
28% reduction
in size compared to PNGs that are re-compressed with pngcrush and pngout. Smaller images on the page mean faster page loads.
New transparency mode
Today, webmasters who need transparency must encode images losslessly in PNG, leading to a significant size bloat. WebP alpha encodes images with low bits-per-pixel and provides an effective way to reduce the size of such images. Lossless compression of the alpha channel adds just
22% bytes
over lossy (quality 90) WebP encoding. Smaller alpha overhead means richer images on webpages.
You can find a more detailed compression study for these modes
here
and sample images in the
WebP-Gallery
. The bit stream specification has not been finalized, and the encoding and decoding implementations have not yet been optimized for processing speed. We encourage you to
try it out
on your favorite set of images, check out the
code
, and
provide feedback
. We hope WebP will now handle all your needs for web images, and we're working to get WebP supported in more browsers.
Posted by Jyrki Alakuijala, Vikas Arora, and Urvang Joshi, Software Engineers
Labels
accessibility
1
benchmarks
1
beta
1
blink
1
chrome apps
3
Chrome Frame
1
chrome web store
26
chromeframe
3
chromeos
3
chromium
3
cloud print
1
dart
8
devtools
11
extensions
23
gdd
1
googlechrome
12
html5
11
incognito
1
javascript
3
linux
2
mac
1
mobile
2
na
1
native client
8
New Features
5
octane
1
open web
2
releases
2
rlz
1
security
30
spdy
2
ssl
2
v8
5
web intents
1
webaudio
3
webgl
7
webkit
5
webp
5
webrtc
4
websockets
5
webtiming
1
Archive
2017
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2016
Dec
Nov
Oct
Sep
Aug
Jun
May
Apr
Mar
Feb
Jan
2015
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2014
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2013
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2012
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2011
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2010
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2009
Dec
Nov
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2008
Dec
Nov
Oct
Sep
Feed
Google
on
Follow @ChromiumDev
Give us feedback in our
Product Forums
.