Re: need help making shell script use two CPUs/cores
Carl Johnson put forth on 1/13/2011 11:34 AM:
> Processors Time (seconds)
> P1 66
> P2 36
> P3 25
> P4 20
> P5 20
> P6 20
> P7 20
> P8 20
>
> I am sure the time would have increased if the system had run out of
> memory and had to start swapping. The system is not completely idle
> since I am running a KDE 4.4.5 desktop and VirtualBox with two guest
> OSs (Debian and NetBSD). I suspect it would have closer to linear
> scaling if the system had been completely idle.
Your numbers bear out exactly what I predicted. Look at the decrease in run
time from 1 to 2, 2 to 3, and from 3 to 4 processes:
#CPUs Decremental run time Fractional gain per CPU
2 30s 1/2
3 11s 1/6th
4 5s 1/13th
You can clearly see the effects of serious memory contention when 3 cores are
pegged. Bringing the 4th core into the mix yields almost nothing compared to
three cores, cutting only 5 seconds from a 66 second run time.
I'm anxious to see someone's results for a Phenom II X2 with the 6MB L2 cache to
verify my prediction there. That's a tougher prediction though as I haven't
modeled the cache behavior of Imagemagick's convert program. And the data above
shows it seems to be very memory b/w heavy. Such a test would definitely be
very revealing of the effectiveness of the Phenom II X2's L3 cache, given what
we've seen so far.
--
Stan
Reply to: