All modern browsers use many threads per tab (drawing the UI, making multiple simultaneous HTTP requests while still allowing you to use the UI, ...). Threads will not show up in your process list as separate entities.
The fact many threads are being used to get and present the info for the tab doesn't mean that those threads are necessarily going to be split between the multiple cores. I don't know whether Chrysalis's statement is true or false, but if the multiple threads for a tab can only be allocated to the same core then it would be true.
A different tab may very well be allocated to a different core. Or not, if the number of tabs exceeds the core count.
You don't seem to know how threading works in a modern OS. I shall attempt to make a basic, simplified explanation;
Assuming we're using some modern software like FF, Opera, or whatever.
It is generally up to the operating system how the threads are distributed between the cores. When there are a greater number of threads than cores (as is always the case on a modern system), the OS time-slices to provide the illusion of concurrent execution.
The OSes scheduler will decide where and when to run the thread, and the algorithms are usually intelligent enough to move/distribute the threads (and their associated state) in a manner that is as optimal as possible.
However, just because the number of threads is high doesn't mean they will necessarily load your cores at 100%. For instance, you will usually find that certain threads do massively more work than others, transiently or otherwise, and hence you could have many threads performing tasks that provide little or no load whilst one thread hits a single core for 100%.
So there possibly needs to be work on distributing some of the heavier work-load segments into more threads (if possible, there are certain tasks that cannot be parallelised and must be performed sequentially).
Edited by deleted (Fri 24-Jun-11 01:28:22)