|
![](/i/fill.gif) |
On 05/07/2012 07:38 PM, Warp wrote:
> Orchid Win7 v1<voi### [at] dev null> wrote:
>> I wanted to get a quick preview of the animation being built, so I fired
>> up Virtual Dub. Imagine my surprise when I actually got 62.5% CPU! o_O
>> Somehow, each core is running a compute-bound task, and yet still had
>> enough spare cycles to run a /second/ compute-bound task in the
>> background as well!
>
> I don't understand what's so strange about that. The OS is sharing CPU time
> among the processes. That's completely normal. In fact, it would be quite
> abnormal if it *didn't* do that.
>
> If you have, let's say for example, a 1-megabit internet connection and
> start a big download, you may get (in an optimal situation) a download
> speed of about 100 kilobytes/s.
>
> If you now start another big download, you'll notice how the first one drops
> to about 50 kilobytes/s and the second one gets a similar speed.
>
> That's not strange, and shouldn't be. Why is sharing CPU time any stranger?
If you can get 100 kb/s, and you start a second download, the second
download goes at 50 kb/s, and the first one also slows down to 50 kb/s.
This is not strange.
Now imagine you get 100 kb/s, and you start a second download, and this
/also/ gets 100 kb/s, so your total download rate is now 200 kb/s. THAT
is strange.
This is what I saw happen. 4 tasks, each using 12.5% CPU. I added a 5th
task, and the existing 4 tasks stayed at 12.5%, and the 5th task also
got 12.5%. Even though that's 5 tasks on only 4 cores. Amazing!
Post a reply to this message
|
![](/i/fill.gif) |