Table of Contents

Node local directories on the LIGO Data Grid

Compiling code uses a lot of input/output, and so is much better performed using a disk that is local to the machine on which you are running. On the LIGO Data Grid, the ~ home directory is mounted from a shared RAID array, and so isn't local, but all users have a directory on all machines that is.

In particular, if you are compiling the LALSuite stack from the git repository, it is advised to clone the repository into one of these local directories, and compile everything in there before installing back into your ~ home directory.

Atlas

On the atlas system, the local directory is

/local/user/${USER}

Nemo

On the nemo system at UWM, the local directory is

/people/${USER}

CIT/LHO/LLO/Sugar

On the LIGO systems at CIT, LHO and LLO, and the sugar system at Syracuse the local directory is

/usr1/${USER}

Bash detection

The following bash code block will detect the system and set the LOCALDIR variable appropriately, if and only if it is not already set:

HOSTNAME2=$(hostname -f 2>/dev/null || hostname)
if [[ -z "${LOCALDIR}" ]]; then
    if [[ "${HOSTNAME2}" == *phys.uwm* ]]; then
        LOCALDIR=/people/${USER}
    elif [[ "${HOSTNAME2}" == *astro.cf* ||\
            "${HOSTNAME2}" == *atlas.aei* ]]; then
        LOCALDIR=/local/user/${USER}
    elif [[ "${HOSTNAME2}" == *phy.syr* ||\
            "${HOSTNAME2}" == *ligo*caltech* ]]; then
        LOCALDIR=/usr1/${USER}
    elif [[ "${HOSTNAME2}" == *arcca* ]]; then
        LOCALDIR=/scratch/${USER}
    else
        LOCALDIR=${HOME}
    fi
fi
unset HOSTNAME2
export LOCALDIR