VisIt
Client-server visualization
VisIt requires the same major version between the local client and the remote host, so please try to stick to that to avoid incompatibilities that typically show as a failed handshake when establishing the client-server connection.
Please use the tabs below to select the remote system.
On Cedar and Graham we have two versions of VisIt installed: visit/2.12.3 and visit/2.13.0. To use remote VisIt in client-server mode, on your laptop you need the matching major version, either 2.12.x or 2.13.x, respectively. Before starting VisIt, download the Host Profile XML file host_cedar.xml. On Linux/Mac copy it to ~/.visit/hosts/, and on Windows to "My Documents\VisIt 2.13.0\hosts\". Start VisIt on your laptop, and in its main menu in Options - Host Profiles you should see a host profile called cedar. If you want to do remote rendering on Graham instead of Cedar, set
Host nickname = graham Remote host name = graham.computecanada.ca
For both Cedar and Graham, set your CCDB username
Username = yourOwwUserName
With the exception of your username, your settings should be similar to the ones shown below:
In the same setup window select the Launch Profiles tab. You should see two profiles (login and slurm):
- The login profile is for running VisIt's engine on a cluster's login node, which we do not recommend for heavy visualizations.
- The slurm profile is for running VisIt's engine inside an interactive job on a compute node. If you are planning to do the latter, select the slurm profile and then click on Parallel tab and below it on the Advanced tab and change Launcher arguments from --account=def-someuser to your default allocation, as shown below:
Save settings with Options - Save Settings and then restart VisIt on your laptop for settings to take effect. Start the file-open dialogue and switch the Host from localhost to cedar (or graham). Hopefully, the connection is established, the remote VisIt Component Launcher gets started on the cluster's login node, and you should be able to see the cluster's filesystem, navigate to your file and select it. You will be prompted to select between login (rendering on the login node) and slurm (rendering inside an interactive Slurm job on a compute node) profiles, and additionally for slurm profile you will need to specify the number of nodes and processors and the maximum time limit:
Click Ok and wait for VisIt's engine to start. If you selected rendering on a compute node, it may take some time for your job to get started. Once your dataset appears in the Active source in the main VisIt window, the VisIt's engine is running, and you can proceed with creating and drawing your plot.
VisIt Configuration
For VisIt to connect to the Niagara cluster, you need to set up a "Host Configuration". Choose one of the methods below:
Niagara Host Configuration File
You can just download the Niagara host file, right click on the following link host_niagara.xml and select save as... Depending on the OS you are using on your local machine:
- on a Linux/Mac OS place this file in
~/.visit/hosts/
- on a Windows machine, place the file in
My Documents\VisIt 2.13.0\hosts\
Restart VisIt and check that the niagara profile should be available in your hosts.
Manual Niagara Host Configuration
If you prefer to set up the verser yourself, instead of the configuration file from the previous section, just follow along these steps. Open VisIt in your computer, go to the 'Options' menu, and click on "Host profiles..." Then click on 'New Host' and select:
Host nickname = niagara Remote host name = niagara.scinet.utoronto.ca Username = Enter_Your_OWN_username_HERE Path to VisIt installation = /scinet/niagara/software/2018a/opt/base/visit/2.13.1
Click on the "Tunnel data connections through SSH
", and then hit Apply!
Now on the top of the window click on 'Launch Profiles' tab. You will have to create two profiles:
-
login
: for connecting through the login nodes and accessing data -
slurm
: for using compute nodes as rendering engines
For doing so, click on 'New Profile', set the corresponding profile name, ie. login/slurm. Then click on the Parallel tab and set the "Launch parallel engine". For the slurm profile, you will need to set the parameters as seen below:
Finally, after you are done with these changes, go to the "Options" menu and select "Save settings", so that your changes are saved and available next time you relaunch VisIt.
Prerequisites
You can launch a new cloud virtual machine (VM) as described in the Cloud Quick Start Guide. Once you log into the VM, you will need to install some additional packages to be able to compile ParaView or VisIt. For example, on a CentOS VM you can type:
sudo yum install xauth wget gcc gcc-c++ ncurses-devel python-devel libxcb-devel sudo yum install patch imake libxml2-python mesa-libGL mesa-libGL-devel sudo yum install mesa-libGLU mesa-libGLU-devel bzip2 bzip2-libs libXt-devel zlib-devel flex byacc sudo ln -s /usr/include/GL/glx.h /usr/local/include/GL/glx.h
If you have your own private-public SSH key pair (as opposed to the cloud key), you may want to copy the public key to the VM to simplify logins, by issuing the following command on your laptop:
cat ~/.ssh/id_rsa.pub | ssh -i ~/.ssh/cloudwestkey.pem centos@vm.ip.address 'cat >>.ssh/authorized_keys'
Compiling VisIt with OSMesa
VisIt with offscreen rendering support can be built with a single script:
wget http://portal.nersc.gov/project/visit/releases/2.12.1/build_visit2_12_1 chmod u+x build_visit2_12_1 ./build_visit2_12_1 --prefix /home/centos/visit --mesa --system-python \ --hdf4 --hdf5 --netcdf --silo --szip --xdmf --zlib
This may take a couple of hours. Once finished, you can test the installation with:
~/visit/bin/visit -cli -nowin
This should start a VisIt Python shell.
Running VisIt in client-server mode
Start VisIt on your laptop and in Options -> Host profiles... edit the connection nickname (let's call it Cloud West), the VM host name, path to VisIt installation (/home/centos/visit) and your username on the VM, and enable tunneling through ssh. Don't forget to save settings with Options -> Save Settings. Then opening a file (File -> Open file... -> Host = Cloud West) you should see the VM's filesystem. Load a file and try to visualize it. Data processing and rendering should be done on the VM, while the result and the GUI controls will be displayed on your laptop.