SMP performance

Andrew Horsfield <[email protected]>
Newsgroups gmane.network.myrinet.general
Message-ID <[email protected]>
Hi,

We have a cluster of pentium III's (four boxes, each dual processor)
running RedHat Linux (kernel 2.4). We have been looking at SMP performance
on one box. We originally expected to find that the performance using a
ping-pong test to be independent of the MPI implementation we used, but
this is not the case.

 i) MPICH using the ch_p4 device and comm=shared delivers a peak data
    transfer rate of 255MB/s on messages of size 32KB. For large messages
    we get an assymptotic transfer rate of 115MB/s.

ii) MPICH running over GM delivers a peak data transfer rate of 977MB/s on
    messages of size 32KB. For large messages we get an assymptotic
    transfer rate of 233MB/s.

Thus there is a factor of about 4 in the peak rates, and of about 2 in
assymptotic rates.

The memory bus has a clock speed of 133MHz, so we should be able to get
about 1064MB/s transfer rate between one processor and memory. This
correlates with the MPICH/GM peak result, suggesting data is being written
from cache on one processor into shared memory readable by the other.
Larger messages cannot fit into L1 cache (L1=16K, and L2=256K), so degrade
performance.

The peak rate for the MPICH/ch_p4, and the assymptotic rate for MPICH/GM,
suggest that they both require 4 memory reads/writes.

The assymptotic MPICH/ch_p4 rate corresponds to 8 reads/writes.

Can anyone explain these results?

Cheers,

Andrew
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.