[These instructions are for Microway software distributed in RPM or
DEB packages.]

Thanks for purchasing MPI Link-Checker and/or InfiniScope from Microway!

These products are distributed in the following packages:

    For Rocky Linux:

        microway-mmds-common-4.0.2-1.x86_64.rpm
        microway-mmds-infiniscope-4.0.2-1.x86_64.rpm
        microway-mmds-link-checker-4.0.2-1.x86_64.rpm

    For Ubuntu:

        microway-mmds-common_4.0.2-1_amd64.deb
        microway-mmds-infiniscope_4.0.2-1_amd64.deb
        microway-mmds-link-checker_4.0.2-1_amd64.deb

To get either or both products running, do the following:

1. As root, install the microway-mmds-common package on the cluster
   head node.  This package installs the license manager and other files
   used by both MPI Link-Checker and InfiniScope.

2. As root, install your license key in /usr/local/microway/microway.key
   with ownership root:root and mode 644.  For example:

   install microway.key.myorg -o root -g root -m 644 /usr/local/microway/microway.key

   If you want, you can install the packages for both products.
   Don't worry if you have purchased a license for only one product. The
   license key will reflect that, and if you later purchase a license
   for the other product, you will not need to reinstall the software,
   just the license key file.

3. (MPI Link-Checker) As root, install the microway-mmds-link-checker
   package on the cluster head node.

4. (MPI Link-Checker) If necessary, build mpilc.  The
   microway-mmds-link-checker postinstall script will notify you if
   this is the case.  In order to build mpilc, mpicc must be found in
   your PATH.  As root:

   cd /usr/local/microway
   make -f Makefile.mpilc

5. (MPI Link-Checker) Distribute /usr/local/microway/mpilc to all nodes
   you wish to run it on.  With MCMS installed, you can run:

   scom-nodes-parallel -w mkdir -p /usr/local/microway
   scpf-nodes /usr/local/microway/mpilc /usr/local/microway/mpilc

6. (InfiniScope) As root, install the microway-mmds-infiniscope package
   on the cluster head node.

7. (InfiniScope) Make any necessary adjustments to path names in
   /usr/local/microway/Makefile.iscope to reflect the actual locations
   of OFED header files and library files.

8. (InfiniScope) If necessary, build iscollect and flop.  The
   microway-mmds-infiniscope postinstall script will notify you if this
   is the case.  In order to build flop, mpicc must be found in your PATH.
   As root:

   cd /usr/local/microway
   make -f Makefile.iscope

   The program "iscollect" should have protection 4750, owner "root",
   and group "infiniscope".

9. (InfiniScope) Distribute /usr/local/microway/iscollect and
   /usr/local/microway/flop to all nodes you wish to run them on.
   With MCMS installed, you can run:

   scom-nodes-parallel -w mkdir -p /usr/local/microway
   scpf-nodes /usr/local/microway/iscollect /usr/local/microway/iscollect
   scom-nodes chmod 4750 /usr/local/microway/iscollect
   scpf-nodes /usr/local/microway/flop /usr/local/microway/flop

10. (InfiniScope) Add the usernames of the users who will be running
    InfiniScope to the "infiniscope" group.  For example, to add the user
    with username ISCOPE_USER to "infiniscope" group, as root:

    usermod -a -G infiniscope ISCOPE_USER

11. On the cluster head node, edit the configuration files
    link-checker.conf and infiniscope.conf as needed. You may have
    to adjust the ssh or rsh commands and you may set some other
    preferences. You often need mpirun parameter changes such as --bynode
    for openMPI, or -rr for IntelMPI to specify 1 process per node
    instead of the typical maxing of processes per node

    For MPI Link-Checker, you can specify:

    L1. The gui_hostname: the network address, i.e., the name or IP
        address, of the machine on which you are running the GUI. This
        does not have to be specified if you are going to run MPI
        Link-Checker from the head node.

    L2. The remote_shell_command: the prefix of the ssh or rsh command
        used to start programs on the cluster head node remotely from
        the GUI machine. This includes the ssh or rsh command itself,
        the username to which you can log in on the cluster head node,
        and the network address (name or IP address) of the cluster
        head node. This does not have to be specified if you are going
        to run MPI Link-Checker from the head node.

        For example:

        remote_shell_command = ssh myname@headnode

        or:

        remote_shell_command = /usr/bin/rsh -l myname headnode

    L3. The number of processes, "np", usually the number of nodes in
        the cluster (not the number of processors or cores). This is
        optional, but if your cluster never changes, you can save some
        typing by including the default in the configuration file. "np",
        like most other options, can be overridden on the command line.

    L4. The cluster_name. This appears in the window title bar, useful
        for screenshots. It may be omitted, or specified on the command
        line.

    The other configuration lines can be changed too.

    For InfiniScope, you can specify:

    I1. The gui_hostname: the network address (name or IP address),
        of the machine on which you are running the GUI. This does not
        have to be specified if you are going to run InfiniScope from
        the head node.

    I2. The collector_ssh_command: the prefix of the command used to
        start the InfiniScope topology and data collector program. This is
        where you specify whether to use ssh or rsh, the network address
        (name or IP address) of the node on which the collector should
        run, and an alternate user name.  If the GUI is running on the
        head node of the cluster, the default collector node is the second
        node in the cluster; otherwise the default collector node is the
        head node. If you are running the GUI as yourself on the head
        node and ssh works for you, this entry may be omitted or blank.

    I3. The feeder_ssh_command: the prefix of the command issued by the
        collector program to recursively start other instances of
        the collector program ("feeders") to report data back to the
        collector. Usually all you have to specify is ssh or rsh.
        The default is ssh.

    The other configuration lines can be changed too.

12. To run either program, type its name at a shell prompt:

    /usr/local/microway/lc -n <number-of-processes>

    or:

    /usr/local/microway/is

    To avoid having to type the full path of the commands, of course
    you can add /usr/local/microway to your PATH.

    For both programs, you can use the --help option to get a list of
    command line options. Most options can be set in the configuration
    files and overridden on the command line.

    You can open /usr/local/microway/link-checker.html or
    /usr/local/microway/infiniscope.html in a browser to get more
    detailed help.

Revised 2026-03-23
