next up previous
Next: Throughput Up: A PCI based Previous: Host software

Measurements

We have used two benchmarks: Comms1 and Comms2. These benchmarks are based on Parkbench[9]. For both benchmarks, two Pentium Pro 200 MHz PCs, each running a communication process, are interconnected via the DSNIC with a single DS link. Not using a large DS network ensures that we are able to measure the process-to-process communication performance without network influence.

In both Comms1 and Comms2, the processes bounce messages of a certain length. For each message length, we obtain the process-to-process message latency by measuring the message bounce time and halving it. The throughput is obtained by dividing the message length by the message latency. In Comms1, the two processes, using blocking communication, bounce a single message. The link is therefore mainly used unidirectionally. In Comms2, the two processes exchange messages simultaneously, using both blocking and non-blocking communication. The link usage is therefore bidirectional. For an ideal bidirectional link, the maximum throughput in Comms2 is twice the maximum throughput in Comms1.

  
Figure 6: Throughput versus message length for Comms1 for various maximum size packets.

We have performed the Comms1 and Comms2 benchmarks for the following packet sizes: 8, 16, 32, 64, 128, 256, 512, 1024, 2048, and 4096. To ensure readability, we only show the results for packet sizes 8, 1024, and 4096 in the graphs. As a reference, we also show the benchmark results of the T9000 transputer. These results have been obtained on two 20 MHz T9000 transputers, that are interconnected via a C104 switch network. The communication processes on the two T9000 transputers communicate via a single virtual link. The T9000 transputer uses a packet size of 32 bytes.

  
Figure 7: Throughput versus message length for Comms2 for various maximum size packets.





Marcel Boosten
Wed Mar 11 14:25:07 MET 1998