Lumerical on Caviness

Lumerical requires user(s) to purchase a license in order to gain access to the license server to actually use the software. This requires some amount of setup for each workgroup to do in order to use Lumerical on Caviness. Unlike the traditional way of configuring the license for Lumerical software, One has to set an environment variable i.e., LM_LICENSE_FILE to the license server "path" (<port>@<hostname>) in order to use the Lumerical software. This is done as follows.

export LM_LICENSE_FILE=port@hostname

The VALET packages for Lumerical are available to everyone on Caviness and will load as expected. However, in order to use the different Lumerical packages, it will only work if the appropriate license server <port>@<hostname> information is defined as provided upon purchasing a license.

$ vpkg_versions lumerical-fdtd
 
Available versions in package (* = default version):
 
[/opt/shared/valet/2.1/etc/lumerical-fdtd.vpkg_yaml]
lumerical-fdtd  High performance FDTD-method Maxwell solver
  8.21.1781     alias to lumerical-fdtd/2019a-R1
* 2019a-R1      release 2019a R1 (8.21.1781)
$ vpkg_versions lumerical-mode
 
Available versions in package (* = default version):
 
[/opt/shared/valet/2.1/etc/lumerical-mode.vpkg_yaml]
lumerical-mode  Comprehensive Optical Waveguide Design Environment
  7.13.1781     alias to lumerical-mode/2019a-R1
* 2019a-R1      release 2019a R1 (7.13.1781)

Lumerical FDTD does not come with MPI implementation integrated with the installation. Also, the MPI versions expected for the Latest FDTD software are way too older than the actual system-wide installations on Farber or Caviness. Therefore, UD IT made efforts to built suitable openMPI version within the Lumerical FDTD installation and made it available within the valet package.

 [lumerical-fdtd/2019a-R1] {
      contexts: all
      actions: {
        PATH+=[:]/opt/shared/lumerical-fdtd/openmpi/1.6.5/bin (contexts: all)
        LD_LIBRARY_PATH+=[:]/opt/shared/lumerical-fdtd/openmpi/1.6.5/lib (contexts: all)
        LDFLAGS=+[ ]-L/opt/shared/lumerical-fdtd/openmpi/1.6.5/lib (contexts: development)
        MANPATH+=[:]/opt/shared/lumerical-fdtd/openmpi/1.6.5/share/man (contexts: all)
        CPPFLAGS=+[ ]-I/opt/shared/lumerical-fdtd/openmpi/1.6.5/include (contexts: development)
      }
      release 2019a R1 (8.21.1781)
      prefix: /opt/shared/lumerical-fdtd/2019a-R1
      standard paths: {
        bin: /opt/shared/lumerical-fdtd/2019a-R1/bin
        lib: /opt/shared/lumerical-fdtd/2019a-R1/lib
      }
    }
Given the older version of openMPI configured with Lumerical FDTD 2019, it does not have the capability to support the Lustre filesystem on Caviness.

After loading the required valet package, one has to set the license file as mentioned above before attempting to run the actual programs. The ideal sequence of steps would be to determine the way(find the suitable commands from the documentation) to run an FDTD simulation on a generic Linux machine, try running that on Caviness and then set them up in a job script to make it run on the compute nodes.