Technically speaking, what makes Google Chrome fast? (Part II)

Wednesday, April 14, 2010

If you’ve dug around the many graphs that are displayed when you type “about:histograms” into Chrome’s Omnibox, you’ll notice that we’re still obsessed about measuring, benchmarking, and improving speed and performance on the browser.

Previously, we published a series of video interviews on several key engineering pieces that go into designing a fast, responsive modern browser, namely DNS pre-resolution, the V8 JavaScript engine, and DOM bindings.

In this next installment of technical interviews on Chrome’s speed, we’ll dive into two more areas that contribute to Chrome’s speed: UI responsiveness and WebKit.

WebKit
with James Robinson



1. What is WebKit?
2. How does WebKit contribute to Chrome's speed?
3. Tell us more about current and future work on WebKit and Chrome
4. Tell us more about new WebKit APIs that can further improve performance
5. What are the challenges of developing a new API for the web?
6. Tell us more about optimizing performance hotspots in WebKit, such as strings and repainting


UI responsiveness
with Peter Kasting



1. What is UI responsiveness?
2. What are examples of UI responsiveness in Chrome?
3. How does multi-threading improve UI responsiveness?
4. Tell us about how the backing store cache improves UI responsiveness?
5. How do you benchmark UI responsiveness?
6. How does Chrome's simplicity contribute to a responsive UI experience?
7. What are future plans to further improve UI responsiveness?
8. What motivates you to work on UI responsiveness?


19 comments:

Vasile said...

when you open more than 5 pages, the scrolling is so slow..
especially the pages with lots of flash in it.. when you scroll down the page it lags and its not smooth at all..
for example when you enter Buzz..

Paul said...

Also, when Chrome's been open for a few days, restoring it to full screen after it's been minimized can be horrendously slow to paint the screen and return control to the user (I'm talking 10 seconds or so compared to less than 1 second for any other application). This is on Windows XP with 4 Gigs of RAM. Not sure if it's memory leak related or something else but Firefox seems to perform better for this use case.

Edchick said...

I think Chrome, or Webkit browsers in general still needs lots of polishing under the hood. Chrome is Slower then Firefox on lower Spec Machine. ( However it is much faster then Firefox on new machine ). Chrome is much more memory intensive then Firefox. The on screen rendering still needs work as reported with slow screen draws and recovery from few days of opening.

I hope most of this untidiness can be corrected in upcoming Chrome 5.

renderhjs said...

On my eeePC with a intel Atom processor and a SSD hard drive chrome freezes whenever I open pages that have not yet been cached before.

I get even plugin warnings that for example flash is not responding whereas in reality it is chrome itself that is not responding and causing anything else to freeze. It's certainly not the computer itself freezing because whenever I use Opera next to it I can surf very smooth and fine.

Would it be possible to make the GUI performance less dependable on hard drive speeds or access - Opera works smooth all the time on my eeePC but Chrome really is slow whenever I open new not cached links.
I really like to use Chrome on my netbook because it is so snappy on all my desktop computers.

So maybe it is just like others hinted not so fast on slow hardware like netbooks and slow SSD drives?

kersurk said...

I would prefer that you wouldn't preset the HD quality as Adobe's Flash almost eats up the whole CPU and even moving the mouse cursor to the quality button might be not very responsive task.

bdheeman said...

BTW, Is that removal and, or hiding of protocol part from URL's in navigation bar a UI improvement?

Will it contribute to speed?

I don't think, I hate people and, or developer like you making absurd changes not backed by solid reasons.

Do you have a roadmap?

randall said...

The other WebKit developers deserve tons of credit for where WebKit browsers are today. I remember using Konqueror as a web browser, then early Safari, on up to the latest Chrome dev version.

The original KHTML authors did an incredible job making a browser without a huge development team. And, probably related, they laid the foundation for WebKit to be easy to improve, "hackable" as people always say.

Apple did a bang-up job first tweaking KHTML for compatibility and performance, then doing some impressive API/developer improvements (Web Inspector, querySelector, transitions, 3D, databases...) and under-the-hood work (e.g., SquirrelFish).

Finally, it's great that there's real open source collaboration here: Apple and Google may not agree about whose mobile OS I should use (answer: Palm's, haha), but I think everyone's dedicated to making the Web a powerful, efficient, standards-based, multimedia platform and taking their open source commitments seriously.

avo said...

when i open more than ten tabs in chrome, switching between tabs sometimes page content go blank. i have to wait a minutes before chrome displays the page again

dewa said...

every time i want to save, download or upload anything, Chrome becoming freeze and not responding, in that case i can't do anything except force to closed Google Chrome and there's no crashes report too. can anyone help me to solve this? I used Chrome 4.1.249.1059, using Windows XP Professional SP3, and have done :
- Changing the user profile
- removing all the plugins & extensions
- using the default themes
- Updating the newest google chrome
- updating the javascript Java SE 6 U 20

Vasile said...

@deva - update to the last version ..
delete the one you have and download a new one..

if it wont work either, try the dev version ( also by uninstalling the last version)

download this dev version
http://dl.google.com/chrome/install/375.17/chrome_installer.exe

dewa said...

Google Chrome 4.1.249.1059 that i've used is the last version from the Stable Version. I've done that uninstalling the older and install the last version, but the problem still exist. Is that the dev version guaranteed it stable? which one should i used : the development version or the beta version?

Vasile said...

@deva, the beta version is unstable.. dev is stable.. its for developers..
i recommend downloading it from that link that i gave you

here...
http://dl.google.com/chrome/install/375.17/chrome_installer.exe

i'm using it now :)
(delete the old version)

dewa said...

thank you vasile. i will try that. i will update the progress later

dewa said...

i still getting the problems. right now i've give up with this one. maybe i will go back to use FF again. Thanks everyone.

TXOTXONGILO said...

Chrome is certainly the fastest browser. I have an old PC and it was a pain in the ass to use firefox, but chrome saved me and I could keep using this old PC. On my new laptop the difference is not so noticeable but generally chrome loads sites faster and is more responsive.

Harry said...

I use my roommate's sony VAIO for downloads and stuff and the machine remains switched on for a long time in the day. Chrome visibly slows down after 2 hrs which doesn't seem to be the case with IE or Firefox. Despite deleting cookies the browsing speed hardly improves.

Andrew said...

Google chrome/chromium is not any different from FireFox, google chrome is just looks different from firefox and slower. When i opened 4-7 tabs it takes like few (3-5) minute just to load up the site at the same time. Is there like anything that can speed google chrome/chromium like 5 times faster?

Matthew said...

It is in my experience that for simple browsing for a limited period of time with a smaller number of tabs Chrome is the fastest browser I've yet utilized. However; longer browsing sessions with larger numbers of tabs and sustained operation for days are things I find to be faster and more stable with Firefox. Most of the numbers Google throws around have to do only with the short term concerns of launching the browser and loading a page from scratch.

Emilien said...

@Paul :

you said that chrome take time to "wake up" after staying open for a few days. this is a windows issue, and you will have the same problem with others programs taking lot of memory. what happened : after a while windows take some blocks of ram and put them into the page file (that mean on disk). this happened even if you have plenty of free ram at that time. when you start using your computer again it have to do the reverse operation (reading from disk to ram). if you want to avoid this, just disable the pagefile (google for this) and youre done.