VMA Installation Options
VMA can be installed from a dedicated VMA RPM or a Debian package. In this case, please make sure that the MLXN Driver is already installed and that MLNX Driver and VMA versions match so that VMA functions correctly.
This option is suitable for users who receive an OEM VMA version, or a Fast Update Release VMA version which is newer than the installed VMA version.
Installing the VMA Packages
This section addresses both RPM and DEB (Ubuntu OS) installations.
VMA includes the following packages which should be saved on your local drive:
The libvma package contains the binary library shared object file (.so), configuration and documentation files
The libvma-utils package contains utilities such as vma_stats to monitor vma traffic and statistics
The libvma-devel package contains VMA’s extended API header files, for extra functionality not provided by the socket API
Before you begin, please verify the following prerequisites:
Check whether VMA is installed:
For RPM packages, run:#rpm -qil libvma
For DEB packages, run:
#dpkg –s libvma
If the VMA packages are not installed, an appropriate message is displayed.
If the VMA packages are installed, the RPM or the DEB logs the VMA package information and the installed file list.
Uninstall the current VMA:
For RPM packages, run:#rpm -e libvma
For DEB packages:
#apt-get remove libvma
Installing the VMA Binary Package
Go to the location where the libvma package was saved.
Run the command below to start installation:
• For RPM packages:#rpm -i libvma-X.Y.Z-R.<arch>.rpm
• For DEB packages:
#dpkg -i libvma_X.Y.Z-R_<arch>.deb
During the installation process the:
• VMA library is copied to standard library location (e.g. /usr/lib64/libvma.so). In addition VMA debug library is copied under the same location (e.g. /usr/lib64/libvma-debug.so)
• README.txt and version information (VMA_VERSION) are installed at /usr/share/doc/libvma-X.Y.Z/
• VMA installs its configuration file, libvma.conf, to the following location: /etc/libvma.conf
• The vmad service utility is copied into /sbin
• The script vma is installed under /etc/init.d/. This script can be used to load and unload the VMA service utility.
Install the VMA utils Package
Go to the location where the utils package was saved.
Run the command below to start installation:
• For RPM packages:#rpm -i libvma-utils-X.Y.Z-R.<arch>.rpm
• For DEB packages:
#dpkg -i libvma-utils_X.Y.Z-R_<arch>.deb
During the installation process the VMA monitoring utility is installed at /usr/bin/vma_stats.
Installing the VMA devel Package
Go to the location where the devel package was saved.
Run the command below to start installation:
• For RPM packages:#rpm -i libvma-devel-X.Y.Z-R.<arch>.rpm
• For DEB packages:
#dpkg -i libvma-dev_X.Y.Z-R_<arch>.deb
During the installation process the VMA extra header file is installed at /usr/include/mellanox/vma_extra.h.
Verifying VMA Installation
For further information, please refer to .Running VMA v9.4.0.
VMA as an open source enables users to try the code, inspect and modify. This option assumes that VMA (binary package) is already installed on top of NVIDIA® driver, and functions correctly (as explained in Installing the VMA Binary Package). Users can download the VMA sources from libvma GitHub and build a new VMA version. This option is suitable for users who wish to implement custom VMA modifications.
Please visit the libvma wiki page for various “how-to” issues.
For building VMA from sources, please visit the following page: https://github.com/Mellanox/libvma/wiki/Build-Instruction
For adding high debug log level to VMA compile it with:
./configure --enable-opt-log=none <other configure parameters>
For libvma configuration file please visit: https://github.com/Mellanox/libvma/wiki/VMA_Configuration_File.
Verifying VMA Compilation
The compiled VMA library is located under:
<path-to-vma-sources-root-tree>/src/vma/.libs/libvma.so
When running a user application, you must set the compiled library into the env variable LD_PRELOAD.
Example:
#LD_PRELOAD=<path-to-vma-sources-root-tree>/src/vma/.libs/libvma.so sockperf ping-pong -t 5
-i 224.22
.22.22
As indicated in section Running VMA, the appearance of the VMA header verifies that the compiled VMA library is loaded with your application.
Remark: it is recommended to keep the original libvma.so under the distribution’s original location (e.g. /usr/lib64/libvma.so) and not to override it with the newly complied libvma.so.
Please note, VMA can be installed in RHEL 7.2 and above Inbox Drivers.
RHEL 7.x distribution contains RoCE drivers version which can be retrieved by running “yum install”. The NVIDIA® drivers contain a code that was tested and integrated into the Linux upstream. However, this code may be either more or less advanced than MLNX_OFED version 4.0-x.x.x or MLNX-EN v3.4-x.x.x. In this case, you can:
This option is suitable for users who do not wish to change their exiting NVIDIA® driver that comes with RHEL 7.x installation.
RHEL 7.2 with Inbox drivers, please visit: https://github.com/Mellanox/libvma/wiki/VMA-over-RHEL-7.x-with-inbox-driver.
For running VMA over RHEL 7.3 or later with Inbox drivers, execute:
yum install libvma
For libvma configuration file please visit: https://github.com/Mellanox/libvma/wiki/VMA_Configuration_File.
For information on how to uninstall VMA in RHEL 7.x Inbox, please refer to VMA in RHEL 7.x Inbox Uninstallation.
By default “yum install libvma” will install one of past VMA versions. In order to run with latest VMA version, you can compile libvma directly from GitHub.. For further information, refer to Verifying VMA Compilation.
This feature is at beta level.
VMA can be installed from a dedicated VMA DOCA profile. In this case, please make sure to follow the NVIDIA DOCA Installation Guide for Linux - NVIDIA Docs.
For VMA we have a dedicated DOCA profile “doca-vma”, the profile will install vma and all its dependencies. To be able to use VMA there is no need to install any other doca profile exept “doca-vma”.
Please follow the instructions for installing “doca-all” but replace it with “doca-vma”, for example:
sudo yum install -y doca-vma