SGE install

The installation of SimStack on SGE is currently working, but execution of work on the cluster nodes requires the setup of a specific parallel environment called smp. The files you received are split into server components and client components. For the first part of this manual, please download the DATE-nanomatch_server_compontents.zip file in the server directory. Do not download the optional offline addon for now. It is only required if your cluster is not able to communicate with the internet directly.

SGE parallel environment setup

Before starting the setup, please setup a parallel environment called smp. The only settings required in this case is:

pe_name            smp
allocation_rule    $pe_slots

One example file to setup this parallel environment would for example be:

pe_name            smp
slots              99999
user_lists         NONE
xuser_lists        NONE
start_proc_args    NONE
stop_proc_args     NONE
allocation_rule    $pe_slots
control_slaves     TRUE
job_is_first_task  FALSE
urgency_slots      min
accounting_summary FALSE
qsort_args         NONE

Many SGE installations already have a parallel environment setup like this. As the Nanomatch software and SimStack require guaranteed Cores per node, one limitation currently is that SimStack can only execute jobs on a single node.

Installing the Nanomatch software

You can either install the software as your local user or shared for everybody on the server. If you install it shared for everybody, please add another user to your cluster. Afterwards add your own user (here: centos) to the new user's group

# This step is not required for a single user install, it does require root again
sudo -i
useradd nanomatch
# The next step might tell you that the group already exists. Ignore the warning if it pops up
groupadd nanomatch 
gpasswd -a centos nanomatch

We switch to the nanomatch user:

#This step is not required for a single user install
sudo -i
su nanomatch

Choose a directory on the server to install our software stack, e.g.

#Choose this inside your home directory for a single user install
/home/nanomatch

Upload the Nanomatch server archive into this folder and unpack them (first the zip) and then the .tar.gz using the following command

unzip your_date-nanomatch_server_components.zip # You have to substitute the correct date here.
for i in *.tar.gz; do tar xf $i; done

If your cluster does not have any direct access to the internet, please also download the optional offline addon and extract it in the same way. This is optional. It is better not to use it, as you will be able to stay up to date with Anaconda environment updates without the offline installer.

Afterwards enter the directory and run the postinstaller:

cd /home/nanomatch/nanomatch/V4
./postinstall.sh

Finally you have to edit the file customer.config

cp customer.config.template customer.config
vi customer.config

Here you have to enter the IP or hostname to the license server (unused, if it is a trial version), the node-local scratch directory and the path to the Turbomole installation. If you do not have a server with a scratch directory, enter:

export SCRATCH=/scratch
# or export SCRATCH=$HOME/scratch # if you really do not have node-local scratch. This will severely impact your performance


Please set the HOSTFILE variable to

export HOSTFILE=`/path/to/installed/nanomatch/V4/local/bin/sge_hostfile_to_torque.py`  
# Replace the beginning of the path with the directory you extracted the software to

If you chose to have a shared installation, you should also change the read rights to allow all users to access the directory.

#This step is not required for a single user install
chmod -R g+rX /home/nanomatch

Setting up your local user account for passwordless ssh

The rest of the commands are run as your user on your own machine and not the server. You can log out of the server now. Download the client components to your machine now.

SimStack communicates with the server via ssh. You have to setup passwordless ssh to the server for SimStack to connect. If you do not already have a ssh key on your machine, run ssh-keygen like this:

#On most Linux distributions:
ssh-keygen # followed by return, return, return (no passphrases)

#On OSX post Mojave 10.14 (because the key format changed, but also possible on Linux
ssh-keygen -m PEM -t rsa -b 4096 -C "your_email@example.com"

#Afterwards transfer it, by invoking
ssh-copy-id username@hostname_of_slurm_server
#and logging in with your password once.

# Test whether passwordless login works, by logging in using
ssh username@hostname_of_sge_server

Setting up the SimStack client

Unpack the simstack_linux.tar.gz or simstack_osx.tar.gz folders on your client machine and run:

tar xf simstack_linux.tar.gz
# of
tar xf simstack_osx.tar.gz
./run-simstack.command # on osx
./run-simstack.sh # on linux

Unpack the simstack_wanos.zip in a different directory and open the Configuration -> Paths pane and point the workflows directory to a new empty directory and the Wanos directory to the unpacked wanos. Open the Configuration -> Servers Pane and input:

* The hostname of the server we determined above
* Your ssh username on the server
* The ssh port
* The path to the unpacked nanomatch software on the server, e.g. /home/nanomatch/nanomatch withouth the V2,V3,V4 directory.
* basepath: a workspace directory, which does not yet exist on the server. Relative directories will be resolved in your home. You can leave it at the default simstack_workspace most of the time.
* As queueing system please provide sge_smp

Once you finish, click connect and if the symbol turns green you are done. If you get an error message telling you that the submission utilities of your batch system (SGE -> qsub) are not found, you might be required to source another config file, when logging in to your server. In this case, please find out, which profile file needs to be sourced an provide it into the Extra Config File. It will be sourced on login.

The results of the search are