3.9.08

Benchmarks for Google Chrome

Results are coming in;

Google didn’t exaggerate when it claimed that it’s new browser Google Chrome is faster compared to other webbrowsers like Mozilla’s Firefox and Microsoft’s internet explorer. The first speed comparisson tests have been done and they clearly show the power of Google’s new product. Especially Java script blinks out during the test that have been done so far.

Lars Bak, the Google’s technical engineer leader for the Chrome V8 JavaScript engine, said at the launch event Tuesday he’s confident Chrome is “many times faster” than the rivals at running JavaScript, the programming language that powers Google Docs, Gmail, and many other Web applications.

Will Google boost Add On development?

Now that Chrome starts getting its first users, a question pops up.

Does Google have plans on implementing add ons that are standard nowadays for developers and endusers (like Firebug, NoScript etc), or will this field be on the community hands?

Will there be an API like the guys from Mozilla Firefox give out?

Drop a line, what do you think?

Review from arstechnica vol.1

Google launched its first foray into the browser wars today with the official release of Chrome, a new open source web browser that aims to push forward Internet innovation and elevate user expectations. Although Chrome is still a bit light on features, it is surprisingly polished and has an assortment of highly promising capabilities that could influence the future of browser design.

User interface

The Chrome user interface is extremely minimalistic. The Chrome tab bar, which is mounted along the top of the window, seamlessly converges with the application titlebar. The toolbar and URL textbox are displayed below the tabs in a layout that is reminiscent of Opera.

Users can drag the tabs to reorder them or drag them between individual windows. There are some nice visual flourishes that accompany various tab management tasks. Tab reordering shows a smooth sliding animation, for instance, and a translucent thumbnail overlay appears when the user snaps a tab out of the browser. The visual feedback provided by these subtle cues improves usability without disrupting the flow of user interaction.

Although Google obviously invested a lot of effort into fine-tuning the usability of the tab implementation, I identified a handful of weaknesses. The biggest is the lack of support for tab overflow handling. Unlike most browsers, which generally display a menu of some kind with a list of tabs that do not fit into the tab bar, Chrome just keeps making the tabs smaller so that more will fit. With a sufficiently large number of tabs, the labels become completely obscured.

Another frustration is that double-clicking the combined tab/title bar causes the window to maximize instead of creating a new tab. This is the most visible case where Chrome's tendency to mix user interface paradigms creates a clear conflict in expected behavior.

There are a few key features that seem to have been left out, including the complete absence of support for RSS. Most modern browsers have RSS readers integrated directly into the user interface. Chrome doesn't even provide any kind of visual notification when the user browses a page that has a feed. I expected Chrome to have some kind of RSS component that integrates with Google Reader, but no such luck.

One aspect of the Chrome user interface that particularly impressed me is the autocompletion mechanism in the URL textbox, which Google refers to as the Omnibar. This feature is evidently inspired by the Firefox 3 AwesomeBar, but it embellishes on the concept and adds some really nice additional features. In addition to providing completion suggestions based on the user's history and bookmarks, it will also provide domain recommendations and allow users to perform searches.

The domain recommendations seem to be powered by something like Google Suggest. When you start typing in a domain name, the system will offer completions based on the most popular sites that start with the same letters. For instance, when you type "c" it will offer cnn.com even if the user has not previously visited that site.

The default Chrome home page displays thumbnails of the user's most frequently visited sites. This feature looks a lot like Opera's Speed Dial. It also displays the bookmark toolbar, a sidebar with recent bookmarks, and a history search. It brings together a bunch of useful functionality and it loads pretty close to instantly, so it's a nice step up from about:blank.

Review from arstechnica vol.2

The Chrome bookmark user interface looks pretty similar to the one in Firefox 3. Users bookmark a page by clicking a star icon that appears on the left-hand side of the URL textbox. This displays a popup in which the user can specify a title and select the location where the bookmark will be stored. Unlike Firefox, the system doesn't support tagging.

Bookmarks are not displayed in the user interface by default except on the start page, but users can optionally enable a bookmarks bar that clings to the bottom of the main toolbar. Bookmark support is still very limited in Chrome and it lacks a full bookmark management interface.

Incognito mode

Another nice feature that Google has touted is the Incognito mode, which disables history tracking. This is similar to Safari's Private Browsing mode and it's becoming a standard feature in many browsers. Rather than being able to toggle Incognito mode across the entire program, users can open special windows that are set in Incognito mode. To indicate that Incognito mode is enabled, the window panes are rendered in dark grey instead of blue and have an icon of a cloaked man.

In light of what most users will do with the Incognito mode, I think that a Ceiling Cat icon would be far more appropriate:

Internals

The heart of Chrome is the WebKit engine, a lightweight HTML renderer that was developed by Apple with parts of the KDE project's open source KHTML component. WebKit offers a nice balance of performance, standards compliance, and reliability that make it a good choice for browsers. WebKit has also proven to be very portable, scalable, and conducive to embedding.

In addition to serving as the renderer in Apple's Safari browser on both desktop and mobile devices, WebKit has also been adopted for use in numerous other contexts, including the Adobe AIR runtime, Trolltech's Qt toolkit, Nokia's S60 web browser, and Google's Android web browser. It's therefpre unsurprising that Google decided to use WebKit for Chrome.

Chrome provides outstanding performance comparable to other browsers. Load time is extremely fast and the user interface is snappy. Chrome starts up and shuts down quickly and I encountered little lag.

Although Chrome is built on top of WebKit, the Chrome developers decided to eschew SquirrelFish, Apple's new high-performance JavaScript runtime implementation. Instead, Chrome uses V8, a unique virtual machine that was developed by a team of specialists in Denmark. V8 was designed from the ground up to provide good performance for large-scale web applications that make extensive use of JavaScript. It has a built-in JIT compiler that generates native code on the fly. It also has an extremely aggressive incremental garbage collection mechanism that reclaims memory more efficiently.

One of the most intriguing aspects of the Chrome internals is the multiprocess design. Each individual tab and plugin runs within its own process in order to boost stability and prevent memory fragmentation. When a rendering bug within a page causes a crash, the tab will go down but the rest of the browser will remain unaffected.

Users can launch Chrome's built-in task manager to see how how the memory is distributed across the entire browser. This is extremely beneficial because it will make it easy for users to identify which pages are hogging memory. Users often blame the browser for heavy memory use, but the culprit is often poorly-designed web pages. The task manager might give web developers an incentive to be more careful.

Chrome will provide even more detailed information through the about:memory page, which will even compare Chrome's resource consumption against that of other actively running browsers.

We conducted some tests to compare Firefox, Safari, Internet Explorer, and Chrome. Although the results vary widely between tests and shouldn't be considered as an authoritative comparison, Chrome's multiprocess design generally incurs a higher memory overhead than other browsers.

Internet Explorer 8 offers a similar feature, but doesn't do a one-to-one relationship between tabs and processes. IE8 attempts to hit a more even balance between resource consumption and reliability by using fewer processes.

Another similarity between IE and Chrome is that both use Vista's integrity protection security model to insulate the user from web malware and other attacks. In Chrome, individual tab processes are run with low integrity permissions which effectively limits the damage that can be caused by a security exploit.

Market impact

Chrome is still in the early stages of development, but it could have an impact on the browser landscape when it starts to mature. Many have speculated that toppling Internet Explorer is the ultimate goal behind Chrome, but that's not going to happen overnight. The initial audience for Chrome will primarily consist of early adopters and technology enthusiasts, so we can expect to see it cannibalizing some market share from Firefox, Safari, and Opera.

If Google aggressively courts OEMs and gets them to preinstall Chrome on consumer desktops, then the company could start to gain some serious traction against Internet Explorer. If Google doesn't pursue preinstallation opportunities, then it is likely that Chrome will make only modest inroads.

During a press conference today, a Google spokesperson said that the company intends to pursue multiple vectors of distribution, but he declined to provide details about any specific plans.

Google has kicked off Chrome with a strong product. Although the software feels polished and robust, the early stage of development is clearly revealed in its lack of support for advanced features like RSS integration and full bookmark management. If Google continues to invest in moving Chrome forward and manages to build up some community involvement, though, the new browser could quickly become a shiny new contender in the browser market.

CNET editors' take

Google has released the beta version of a new browser, Chrome. In its comic-book preannouncement, Google stated correctly that watching videos, chatting, and even playing Web-based games didn't exist when browsers were first invented. Google wants the browser to help users focus on the applications and pages they are viewing, rather than on browser toolbars and buttons. Google has rethought the Internet browser--some of its basic underpinnings are quite novel--but users will recognize some features as they exist in other, open-source browsers on the market today.

At the moment, only the Windows version of Chrome is available for download. Plans call for Mac OS X and Linux versions in the near future. That said, Google has released Chrome in 43 languages and in 122 countries.

Chrome is based on the open-source project Webkit, the same rendering engine used by Apple Safari. If a page renders in Safari, it will render in Chrome. Webkit is also the basis for Android, Google's mobile platform, so it seems that Google is planning to use Chrome in mobile environments.

The interface in Chrome is very different from other browsers and takes a little getting used to. Instead of the traditional Netscape/IE-style toolbar across the top, Chrome puts tabs across the top. Moreover, the tabs are detachable, so the terms "tabs" and "windows" become interchangeable within Chrome. Detached tabs can be dragged and dropped into the browser, and tabs can be rearranged at any time.

New tab pages display your nine most visited Web pages, as well as the searches you perform most, and your most recent bookmarks. Within each tab are individual controls, such as forward and back buttons. Missing is the search box. Instead, Chrome sports a hybrid address bar, which Google calls the Omnibox. The Omnibox includes not only suggestions for URLs culled from your browser's history, but it also includes search suggestions from Google. URL Auto completion in Chrome is for top-level domains, not just some individual page you last visited on a site. There are also other neat additional elements; for example, if you go to Amazon and type within its search box to find a book or CD, Chrome remembers that Amazon search and when it next suggests the Amazon URL in the Omnibox, it also include a link to Amazon's search box.

Application Shortcuts is a feature that allows you to create desktop icons for Web-only applications, such as Gmail or Calendar.

And there's a stealth mode, as well. Like IE8 InPrivate, Chrome has its own incognito mode. The Incognito window looks different: it's darker and has a little detective character in the upper left corner to help you remember it's not remembering the Web sites you visit. Although the Omnibox in Incognito has access to the regular Chrome history, everything typed into that stealth tab will be erased when you exit, as though you were never there.

Chrome deals with pop-up dialogues in a novel way. Pop-ups associated with a Web page appear within that page's tab, so if you want to see a pop-up in greater detail, just drag it out into its own new window. This carries over to downloads as well. Instead of using a pop-up dialogue, downloads are shunted to the bottom of the tab frame where you can monitor or interact with them if you wish.

Because of isolating each tab's process, if one tab in Chrome crashes, the entire browser does not. This is similar to a feature within IE8 beta 2. In terms of security, isolating tabs means each tab is in its own sandbox. Applets launched on a page within Chrome are read-only, do not install to the operating system, and cannot access data already on the hard drive.

For performance, Google emphasizes speed. According to Google says, most browsers are singled-threaded, so that when a browser starts a Javascript process, it waits until that process ends. Sometimes the process gets stuck and the browser freezes. What Google has done is to create a multithreaded browser, one that can process several Javascripts at once, for example. In Chrome, one tab can be busy doing one thing while you're off on another tab doing something else. In our CNET tests, we did occasionally see the "Aw, snap" page used when Chrome just can't render a site.

To diagnose why a page didn't load, there's a task manager within Chrome, allowing you to see what process is using memory, even within the plug-ins running on that tab. So, if a Shockwave or Flash file is consuming a lot of memory and preventing a page to launch, you can shut down that process and still load the page.

Google acknowledges up front that having separate processes for separate tabs will create more memory usage, but the Mountain View company says the browser will use less memory over time. For example, when you close a tab in Chrome, you end the memory process completely, freeing up more memory for future use. In a traditional browser, fragments remain running in case you want to reopen the closed tab or as an artifact in how new tabs are created in old browsers. Chrome features enhanced garbage collection, migrating or generally sweeping up pointers as needed instead of leaving them behind. The trade-off, of course, is that closed tab pages cannot be reopened, a feature currently available in Firefox 3 and IE8 Beta 2.

Chrome includes its own Javascript Virtual Machine called V8. Google says that existing JVMs were designed to run tiny applets on Web pages, not full applications of the kind that Google makes today. Among the changes within V8, Chrome combines similar Javascript classes for better optimization, and it doesn't interpret Javascript but converts it to machine code to execute on the CPU, which speeds up the process. V8 is also open source and will be available to developers wanting to use it in the future.

How stable is this beta from Google? Google caches hundreds of millions of Web pages for its search engine; the Gears folks say they've been able to test Chrome on millions of pages within seconds of completing each new build. Using Google page rank, they test against the most popular sites. With public beta testing, they'll start testing against some of the more niche pages on the Web.

The story behind Google Chrome

Google chrome -according to its developers- will fully utilize a new Javascript Virtual Machine, developed by a team in Denmark, called V8.
This will allow multithreaded execution of javascript.
Browser will no longer wait for JS to return control to it, resulting in much faster web experience.
Check this video