I only came across this question today and I hope this is not too late an answer, but the short answers are yes (to your first question "I have found both Safari and Firefox use a very high amount of CPU during downloads (
>200% CPU usage), can anyone explain as to why this happens?") and yes (to your comment question "Does a higher then
100% percentage mean it is using multiple cores for that process?").
The short explanation is that your Mac contains a multi-core processor - I'm guessing a minimum of
2 given that you are running OS X 10.8 - which supports hyperthreading, and this means that each physical core (a physical CPU in itself) presents multiple "logical" cores to OS X which it treats as independent logical CPUs. A process can use up to 100% of each logical core, so
n logical cores means a maximum of
n x 100% CPU usage per process. Hence your Activity Monitor (like Task Manager in Windows) showing CPU usage bars for each of these logical cores (as long as they are
<= 4, according to Apple technical documentation on CPU usage) and you're getting readings like
157% for Firefox etc. This is not unusual and probably normal if you have multiple downloads, apps, games etc. running at the same time. But note: different app processes live in different parts of the user virtual memory space, so it is also possible to see multiple app processes which have
>100% CPU usage at the same time, e.g. Firefox
157% and iTunes
It is impossible to see a
>100% CPU usage for a process in a single-core CPU system, unless the reporting tool you are using is faulty. Firefox probably spawns a thread for each download (if you have multiple simultaneous downloads), in addition to a number of other threads for tabs, rendering etc. and other stuff going on, and your reading of
157% for the process clearly means some of these threads were being run on at least two different logical cores at the same time. A reading of
296% would indicate at least three cores being used etc. The CPU usage for a process on a multi-core processor / multi-threaded OS system is an aggregate of the CPU usages for all the threads running inside that process.
Note: on a practical level you may want to consult this if your downloading problems are specific to Firefox or are occuring repeatedly.
You can find out information on the number of physical/logical cores in your computer by using the
sysctl command (in the BSD API if you are interested) - if you execute the following command in your terminal app:
$ sysctl -e hw | grep "cpu="
you should see something like this (note the comments I've inserted, not part of the output)
hw.ncpu=4 # no. of cores available to the kernel
hw.activecpu=4 # no. of logical cores actively being used by the kernel
hw.physicalcpu=2 # no. of physical cores
hw.logicalcpu=4 # no. of logical cores