Main Page | Data Structures | Directories | File List | Data Fields | Globals | Related Pages

Overview and usage

Overview

VI-GM is a fully compliant implementation of the Virtual Interface Architecture. It supports the whole API, for all reliability levels. However, VI-GM does not support (yet) optional RDMA Read operations.

This implementation is a user-level port on top of GM, the low-level communication interface for Myrinet, supported by Myricom. As the main resource used by VI-GM is memory, it supports a very large number of VI objects like Virtual Interfaces (VI), Completion Queues (CQ), etc. The current limits are defined in the include/vipl_config.h file and can be changed by customers, respecting the coding limit indicated for each value.

No configuration is required in VI-GM, only the VI-GM connection manager should be initially running when VI-GM applications are executed (if they need to establish connections, but as VI is connection-oriented, it's almost a requirement). Customers do not need to manage GM ports, VipOpenNic will try to open the first GM port available (starting from port 2).

VI-GM is completely thread-safe, and multiple VI-GM threads spawned from the same process share the same GM port. VI-GM does not use any signals and does not overload any function from the C library. VI-GM supports a very large number of nodes (65000+) and a virtually unlimited number of local threads (the number of NIC handles is limited to comply with the Intel conformance suite).

Usage

VI-GM applications must access the GM include file gm.h and be linked with libvipl.a, libgm.a and libpthread.a as in the following example:
gcc -I/usr/local/gm/include -L/usr/local/gm/lib foo.c -o foo -lvipl -lgm -lpthread

A VI-GM device name is formed by the prefix VINIC followed by the Myrinet interface index, or nothing to specify the first interface :

The host part of a VI-GM net address is identical to the interface MAC address, known as lanai_board_id by gm_board_info. This MAC address is composed of 6 Bytes and always starts with 00:60:dd:7f (Myricom prefix). The name service is fully operational and uses the routing table set by the GM mapper.

VI-GM-1.3 by Myricom © 1997-2006. Documentation generated on 20 May 2006 by doxygen 1.4.4.