Tuesday, September 2, 2008

Chrome and muli-core processors

Google is releasing their own web browser Chrome tomorrow! Here you can know about the cool features of Chrome, described in a perfect Googly way.
One of the main design decisions for Chrome is making it multi-process, that is, each tab runs as a different process. It has many advantages like less memory leak, sandboxing etc. as they have mentioned in the above link.
One aspect they have not mention is enhanced parallelism and the speedup on a multi-core processor due to that. As all modern processors have more than one cores, any application with multiple threads/ processes should be able to take advantage of that by running truly parallelly (in traditional single-core processors, even if the application is multi-threaded/ multi-process, instructions from different threads/ processes are interleaved, not run parallelly). I hope that the processes in Chrome actually spawn native processes and are not just virtual processes managed by some single-threaded virtual machine (like many Java applications).
I'm eagerly waiting to get my hands on it :)

Update: Chrome does spawn native processes for each tab :)


4 comments:

Ashwin said...

I'm using Chrome on a dual core, but I don't see any performance benefit on 2 cores. I usually have more than 4 tabs open. Once we hit 8+ cores the benefit should really kick in!

Arnab De said...

@Yodha: Even with dual core, you should see some speedup. If you have more than 4 cores open, that does not mean that all of them are simultaneously using CPU! Look at your CPU usage.

pm said...

i hope you have explored the task manager which also gives the pids of the spawned processes

Arnab De said...

@Preeti: Yes I did!