Technically speaking, what makes Google Chrome fast?
Thursday, December 03, 2009
Earlier this year, we heard from many of you on how important speed is to your daily activities on the web. We kicked off a series of discussions with the Internet community on ways to make the web faster: from Internet protocols and best practices in website development, to improvements in the browser itself.
A lot of engineering effort is involved in making sure that a browser continually provides a fast, responsive, and satisfying experience on the web. We're excited to see modern browsers continue to push the envelope in designing and optimizing browser architecture for speed and performance.
We've often been asked what makes Google Chrome so fast -- from its snappy start-up time and fast page-loading, to the ability to run complex web applications quickly. To walk through some of the thought processes and technical decisions involved in making Google Chrome a fast browser, we've put together three technical interviews on DNS pre-resolution, the V8 JavaScript engine, and DOM bindings. In a future post, we'll also cover other important areas like WebKit and UI responsiveness.
DNS pre-resolution
with Jim Roskind
- What is DNS pre-resolution, and how does it make Google Chrome even faster?
- Why is DNS pre-resolution difficult to do?
- Explain in more detail how adaptive pre-resolution works.
- How else is DNS pre-resolution beneficial? Can it help with browser start-up time?
- How do we measure and benchmark the benefits of DNS pre-resolution?
- What's next for DNS pre-resolution?
V8 JavaScript engine
with Mads Ager
- What is V8?
- What are we currently doing to speed up JavaScript performance on V8?
- How do we achieve big boosts in JavaScript speed, such as the recent 150% improvement since our initial launch?
- How do we measure V8's performance?
DOM bindings and more
with Mike Belshe
- What are DOM bindings?
- What are the most recent improvements in DOM bindings, for Google Chrome as well as other browsers?
- The Google Chrome beta release in August 2009 included improvements in DOM bindings. Tell us more.
- How do we measure and benchmark improvements in DOM bindings?
- In general, what are the biggest performance impediments for a browser?
- What are some of the performance benefits of Google Chrome's multiprocess architecture?

22 comments:
Owen Campbell-Moore said...
I like this, not even developing their own super speedy browser and keeping the speed a secret... Full disclosure and explanations of how they make it faster; This can only be good for the web!
December 3, 2009 2:15 PM
Kerrick said...
Wow, I had no idea so much work went into the speed of Google Chrome - but I love the outcome! Thanks, devs!
December 3, 2009 2:25 PM
Krishna said...
Wow.. You have done a lot to speed up Chrome! Thanks you so much for sharing the knowledge!
December 3, 2009 5:21 PM
Dr D said...
I assume this is intended for Window users and not Mac users. Sunspider tests consistently indicate the Mac beta of Chrome slower than the latest Webkit versions or even Safari.
December 3, 2009 6:29 PM
Richard said...
Awesome work!
How much of this is being migrated back into WebKit so other WebKit-based browsers can take advantage of it?
December 3, 2009 7:52 PM
Wes said...
That's true Dr D, although keep in mind that the Webkit team are the ones who created Sunspider. I'm sure they have a lot more focus on performing well on that particular test than Google has. Nonetheless, I'm sure the mac version of Chrome still has many optimizations to go through.
December 3, 2009 7:55 PM
Roy said...
Really very good hear that so much of efforts has gone into speeding up Chrome. It's always nice to hear that the users are always the focus at Google... Love you Google
December 3, 2009 10:37 PM
loming_cn said...
Oh yeah, the great post!!!
so happy,,,
http://www.zetabead.com
December 3, 2009 11:35 PM
dkgoodman said...
How about tools for making pages less bloated, or at least a tool to evaluate the bloat and rate a page on its loading speed and efficiency of coding?
December 3, 2009 11:45 PM
Rich said...
@dkgoodman:
The WebKit web inspector (included in Chrome) already lets you do something like that. The Resources tab shows you each resource a page had to load, and how much time was spent loading it. If there's a bottleneck, you can see it there.
December 4, 2009 12:39 AM
Wouter van Dongen said...
The browser is fast indeed. But not fast to get around with. I really dislike the interface as in the responsiveness of clicking (rmb -> open in new tab. Needs a firm click.)
Or when you have one of the bookmark folders open, you can't just hover to another folder to let it open instantly. No you'll have to click that one first :(
It's these sort of things that keep me away from using Chrome. Still using Firefox because of these little issues!
December 4, 2009 2:56 AM
Business Plan Writers said...
Hey,
Nice post! You have worked hard on jotting down the essential information. Keep sharing the good work in future too.
Business Plan Service
December 4, 2009 2:57 AM
dovella said...
excuse me link
http://www.basschouten.com/blog1.php/2009/11/22/direct2d-hardware-rendering-a-browser
December 4, 2009 5:56 AM
Andrew Dalke said...
Any thoughts or considerations about the security aspects of doing DNS pre-resolution? For example, if I embed a URL which is in my domain then I can tell if Chrome is being used to view a page, especially an archived page, even without it making an HTTP request from my servers. It is rather weak data leakage.
Stronger would be if the technique were used in HTML viewers in email programs, where it would act as a sort of Disposition-Notification-To/web bug.
December 4, 2009 12:52 PM
Deven said...
I'm proud to say i just watched these vids through chrome.
December 6, 2009 12:11 AM
oz said...
Please add subtitles to this kind of videos. Not everyone can understand what is told so easily. Some of us cannot even hear what is told!
December 6, 2009 9:10 AM
DS said...
There is a direct correlation between people using the internet and people using Google. This gives incentive for Google to make the internet easier to use, no matter what browser the user chooses.
December 6, 2009 12:39 PM
Wickum Herath said...
Hm It's true that Chrome is fast.
Well explained the reasons to such performance and I'll publish this on my web site ColomboPro
December 6, 2009 1:37 PM
sauronsmatrix said...
Chrome is the fastest modern web browser, sure, but it lacks fully working equivalents to Firefox's AdBlock Plus and Greasemonkey. When are we getting those?
December 7, 2009 2:51 PM
prasad said...
Chrome is definitely fast browser And gives same on windows and linux. Its really exciting news that google developing os. I m definitely going to use it. Nice work google team. You make internet technology Easy for us.
December 11, 2009 11:35 AM
Ilya said...
Until they fix the "back" button to actually go back like Opera does (and NOT reload the page by the URL stored in history like the other browsers do), I would never call Chrome "fast". Yes it's fast to load pages, but it's slow to work with -- and ultimately, I don't want to "load pages", I want to surf the web which is a bit more than that. (That's why people invented tabs and mouse gestures - they don't make pages load faster, but they allow to work more efficiently).
January 21, 2010 3:22 AM
porky said...
Opera 10.50 is the fastest!
February 3, 2010 7:36 AM
Post a Comment