Q

3 – Using InfiniPath MPI Getting Started with MPI

Here ./cpi designates the executable of the example program in the working directory. The -npparameter to mpirun defines the number of processes to be used in the parallel computation. Now try it with four processes:

$ mpirun -np 4 -m mpihosts ./cpi Process 3 on hostname1 Process 0 on hostname2 Process 2 on hostname2 Process 1 on hostname1

pi is approximately 3.1416009869231249, Error is 0.0000083333333318

wall clock time = 0.000603

If you run the program several times with the same value of the -npparameter, you may get the output lines in different orders. This is because they are issued by independent asynchronous processes, so their order is non-deterministic.

The number of processes can be greater than the number of nodes. In this four-process example, the mpihosts file listed only two hosts, hostname1 and hostname2. Generally, mpirun will try to distribute the specified number of processes evenly among the nodes listed in the mpihosts file, but if the number of processes exceeds the number of nodes listed in the mpihosts file, then some nodes will be assigned more than one instance of the program.

Up to a limit, the number of processes can even exceed the total number of processors on the specified set of nodes, although it is usually detrimental to performance to have more than one node program per processor. This limit is eight processes per node with the QHT7140, and four processes per node with the QLE7140. See section 3.5.9 for further discussion.

Details on alternate means of specifying the mpihosts file are given in section 3.5.6. Further information on the mpirun options are in section 3.5.5, section 3.5.9 and section 3.5.10.

3.3.2

Examples Using Other Languages

This section gives more examples, one for Fortran77, one for Fortran90, and one for C++. Fortran95 usage will be similar to that for Fortran90.

fpi.f is a Fortran77 program that computes pi in a way similar to cpi.c. Compile and link it with:

$ mpif77 -o fpi3 fpi3.f

and run it with:

$ mpirun -np 2 -m mpihosts ./fpi3

pi3f90.f90 in the same directory is a Fortran90 program that does essentially the same computation. Compile and link it with:

$ mpif90 -o pi3f90 pi3f90.f90

IB6054601-00 D

3-3

Page 45
Image 45
Q-Logic IB6054601-00 D Examples Using Other Languages, Run it with, $ mpif77 -o fpi3 fpi3.f, $ mpif90 -o pi3f90 pi3f90.f90

IB6054601-00 D specifications

The Q-Logic IB6054601-00 D is a high-performance InfiniBand adapter card designed for data centers and enterprise applications requiring robust connectivity and low-latency communication. This adapter is part of QLogic's extensive portfolio of networking solutions, catering to the needs of high-performance computing (HPC), cloud computing, and virtualization environments.

One of the standout features of the IB6054601-00 D is its capability to support data transfer rates of up to 56 Gbps. This makes it ideal for applications demanding large bandwidth and quick data processing. The adapter is optimized for RDMA (Remote Direct Memory Access) technology, which allows data to be transferred directly between the memory of different computers without involving the CPU. This reduces latency and CPU overhead, leading to enhanced overall system performance.

The architecture of the IB6054601-00 D includes support for a dual-port design, which offers increased bandwidth, redundancy, and fault tolerance. This dual-port configuration is especially advantageous for environments that require high availability and reliability, such as financial services and mission-critical applications.

The adapter utilizes advanced error detection and correction mechanisms, ensuring that data integrity is maintained during transmission. With features like adaptive routing and congestion management, the IB6054601-00 D is capable of optimizing the handling of data flows, thereby enhancing performance even under heavy loads.

In terms of compatibility, the Q-Logic IB6054601-00 D supports a wide range of operating systems and virtualization technologies, making it easy to integrate into diverse IT environments. It also includes drivers and software packages that facilitate seamless deployment and management.

In addition to high-speed connectivity, the adapter is designed with power efficiency in mind. It adheres to Energy Star regulations, helping organizations lower their operational costs while minimizing their environmental footprint.

Overall, the Q-Logic IB6054601-00 D stands out for its high throughput, low latency, and reliability. Its combination of advanced features and technologies positions it as an excellent choice for organizations looking to enhance their data center performance and maximize the efficiency of their network infrastructure. With the growing demands for faster and more efficient data transfer, solutions like the IB6054601-00 D are essential in meeting the evolving needs of modern enterprises.