NeuroPoly

Poly-Grames

Poly-Grames Network Account

A Poly-Grames network account is required to have access to various computation resources available in the laboratory.

In order to request a Poly-Grames network account you need to have your Polytechnique ID number.

You can request a Poly-Grames network account here.
Program: Biomedical Engineering
Director: Julien Cohen-Adad

If you want to find out who is behind u/pXXXXXX Grames account, type this:

getent passwd <GRAMES_ACCOUNT>

Poly-Grames Groups

The list permissions for shared folders on duke are available here.

Connect to Poly-Grames Server

Use Microsoft Remote Desktop Connection on creer51, creer52, creer53.

Computer : creer51.grames.polymtl.ca

Username: grames\your_polygrames_username

Password: your_polygrames_password

List of Computers at NeuroPoly

Are you new to NeuroPoly and looking for a desk and a station? Please check the list of Desktop/Server/Clusters computers and Printers so you can pick one that is free. If you’d like a particular desk and someone else is using a station remotely, please ask the admins to move the station to another location.

If you prefer to work on your laptop, please let the admins know and we will give you a screen you can connect your laptop to.

Connect to NeuroPoly Computers

Locally

To log into a local station at NeuroPoly use your GRAMES account.

VPN

When working remotely from off-campus you need to use the VPN.

To connect to the VPN, you need to have an account with École Polytechnique, specifically with CAS. Students should already have this. Consultants and Research Associates will need to have an account created for them.

Contact Alexandru Foias to request VPN access be activated for your CAS account. When activated, Gestion des Codes will report “VPN_* = Actif”.

The VPN is a Cisco AnyConnect server. For Linux and macOS you can reach it by first installing openconnect:

brew install openconnect

Open your Keychain program and click ‘+’ to add a new password:

  • Name: poly-vpn

  • Account: your YOUR_CAS_USERNAME (corresponds to your GRAMES username)

  • Password: enter your password here.

Then, create the following script:

#!/bin/bash
# vpn.sh

set -eo pipefail

USER="<YOUR_CAS_USERNAME>"
PASS="$(security find-generic-password -a "${USER}" -s poly-vpn -w)"
GROUP=PolySSL # or PolyInvites, depending on your account's status
echo -n "$PASS" | sudo openconnect -u "$USER" --authgroup "$GROUP" --passwd-on-stdin ssl.vpn.polymtl.ca
apt install openconnect

Then, create the following script:

#!/bin/bash
# vpn.sh

set -eo pipefail

USER="<YOUR_CAS_USERNAME>"
PASS="<YOUR_CAS_PASSWORD>"
GROUP=PolySSL # or PolyInvites, depending on your account's status
echo -n "$PASS" | sudo openconnect -u "$USER" --authgroup "$GROUP" --passwd-on-stdin ssl.vpn.polymtl.ca

To connect to the VPN, you need to run:

./vpn.sh

SSH (command line)

Once the VPN connection established, connect via ssh using the STATION you want:

 ssh <POLYGRAMES_USERNAME>@<STATION>.neuro.polymtl.ca

Note: For Windows systems, you can install Microsoft’s ssh package, WSL, PuTTY, or cmder.

Optionally, this shortcut. It allows you to just type ssh <STATION> and be connected:

cat >~/.ssh/config_neuropoly <<EOF
# GPU servers
Match Host romane,rosenberg,bireli
HostName %h.neuro.polymtl.ca

# CPU servers
Match Host joplin,abbey,tristano
HostName %h.neuro.polymtl.ca

# Workstations
Match Host ferguson,davis
HostName %h.neuro.polymtl.ca

# data servers
Match Host data
HostName %h.neuro.polymtl.ca
User git
PreferredAuthentications publickey

Match host *.neuro.polymtl.ca
User <POLYGRAMES USERNAME> # fill in your username and remove this comment
# passwords are required to access /mnt/duke: https://github.com/neuropoly/computers/issues/90:
PreferredAuthentications password
EOF

echo 'Include ~/.ssh/config_neuropoly' >> ~/.ssh/config

Add this to your ~/.ssh/config to make multiple ssh connections faster and without retyping your password:

Host *
ControlMaster auto
ControlPath ~/.ssh/%r@%h:%p
ControlPersist 3s

SFTP (Mount a remote station)

ssh also allows accessing remote files, via sftp.

The best way to do this is sshfs, which makes them appear as if they were a drive on your computer:

Install sshfs, if not yet installed:

sudo apt install -y sshfs
brew install --cask osxfuse
brew install sshfs

Then mount the folder

mkdir cluster_folder
sshfs <STATION>: cluster_folder

If you use ~ or nothing (as shown) after the :, the connection will be relative to to your remote home directory, e.g.

sshfs <STATION>:~/project1/ cluster_folder

will attach the remote /home/GRAMES.POLYMTL.CA/$USER/project1/ to the local ./cluster_folder, and

sshfs <STATION>:project1/ cluster_folder

will do the exact same.

However if you use / after the :, the mount will be relative to the remote root directory, e.g.

sshfs <STATION>:/tmp/ cluster_folder

will attach the remote /tmp/ to the local ./cluster_folder

VNC (graphical interface)

  1. Open Finder

  2. Click Cmd+K

  3. In the “Server Address”, type (using the STATION you want): vnc://STATION.neuro.polymtl.ca

  4. You can use your local/network account information or the shared account credentials

  1. Establish a VNC connection using vinaigre.

  2. In the “Server Address”, type (using the STATION you want): vnc://STATION.neuro.polymtl.ca

  3. You can use the password from shared account credentials

Linux stations

On Linux targets, a VNC server needs to be started manually before the above instructions will work.

  1. Create configuration file under ~/.vnc/xstartup with the following contents:

 #!/bin/sh
 # Uncomment the following two lines for normal desktop:
 unset SESSION_MANAGER
 unset DBUS_SESSION_BUS_ADDRESS
 startxfce4 &
 [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
 [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
 xsetroot -solid grey
 vncconfig -iconic &
  1. Give the right permissions to the file ~/.vnc/xstartup

 chmod +x ~/.vnc/xstartup
  1. Start VNC server

 vncserver -geometry 1600x1200 :<PORT_NUMBER>

Note: To list all running vncservers, use: ps -ef | grep vnc`

After starting the vncserver, connect to it as above.

Note

Note:

  • On the first start of the vncserver, you will have to set a personal password for your vnc session

  • The resolution can be defined by changing the value of the -geometry flag.

  1. Stop VNC server - mandatory at the end of your session

 vncserver -kill :<PORT_NUMBER>

CPU/GPU Clusters

The following CPU and GPU clusters are available for internal use at NeuroPoly.

Warning

IMPORTANT: Indicate in the calendar below if you plan to launch intensive calculations on a computer (even if it is on your station, in case you leave for holidays but are still using your station). If you don’t have writing permission on this calendar please contact alexandrufoias@gmail.com.

https://calendar.google.com/calendar/u/0/embed?src=4mg6bgd9pv55thf9486t2miht8@group.calendar.google.com

rosenberg

Spec

Description

Model

8 x P100 GPU

OS

Ubuntu 18.04.2

Hostname

rosenberg.neuro.polymtl.ca

VNC

For system administrators: Please log all the changes on the station by updating the ansible scripts from https://github.com/neuropoly/computers.

bireli

Spec

Description

Model

2 x Tesla GPU

OS

Ubuntu 16.04

Hostname

bireli.neuro.polymtl.ca

VNC

NeuroPoly Internal Document: Bireli TeamViewer Credentials

joplin

Spec

Description

Model

64-core CPU

OS

Ubuntu 20.04.4

Hostname

VNC

The server is bound to the GRAMES domain.

Connect to the server via ssh using the Poly-Grames account.

To access the sct_testing_management development webpage use the username: sct_test_user; passwd: management.

For fast I/O, use the NVMe hard drive, which is automatically mounted on your home at: ~/data_nvme_XXX (XXX being your GRAMES matricule)

abbey

Spec

Description

Model

Xeon 12-core

OS

Ubuntu 20.04.3

Hostname

Credentials

NeuroPoly Internal Document: Abbey Teamviewer Credentials

fitzgerald

Spec

Description

Model

OS

Windows 7

Hostname

Credentials

NeuroPoly Internal Document: Fitzgerald TeamViewer Credentials

tristano

Spec

Description

Model

Mac Mini

OS

Ubuntu 16.04

Hostname

Credentials

NeuroPoly Internal Document: Tristano VNC Credentials

For SCT database interface use: SCT annotations

vnmrj

Spec

Description

Model

PC Intel Duo Quad Core

OS

RedHat

Hostname

Credentials

NeuroPoly Internal Document: VNMRJ VNC Credentials

idea3t - Siemens Pulse sequence programming for VE11C (Prisma)

Spec

Description

Model

PC

OS

Windows 10

Hostname

idea3t.neuro.polymtl.ca

Credentials

NeuroPoly Internal Document: Idea3t Remote Credentials

This computer is to be used for programming pulse sequences within the Siemens IDEA environment for VE11C (Prisma).

Troubleshooting

Warning

Possible error: “The certificate or associated chain is not valid.”
Solution: Install remote Desktop v10 or higher (v8 does not work)

idea7t - Siemens Pulse sequence programming for VE12U (Terra)

Spec

Description

Model

PC

OS

Windows 10

Hostname

idea7t.neuro.polymtl.ca

Credentials

NeuroPoly Internal Document: Idea7t Remote Credentials

This computer is to be used for programming pulse sequences within the Siemens IDEA environment for VE12U (Terra).

peterson - CST simulations

Spec

Description

Model

PC

OS

Windows 10

Hostname

peterson.grames.polymtl.ca

Credentials

NeuroPoly Internal Document: Peterson Remote Credentials

This computer is to be used for CST simulations. The station is bound to the Poly-Grames domain.

Printers

Modix

Spec

Description

Model

Raspberry Pi

OS

OctoPrint

Hostname

http://132.207.154.91

Credentials

NeuroPoly Internal Document: Modix Remote Credentials

The Modix 3D printer is remotely controlled using OctoPrint. To access the control interface go to the hostname and use the credentials provided above.

Connect to the Polytechnique public disk

Finder –> Go –> Connect to server Server address:

smb://genie06.polymtl.ca/public

Then enter your ID and password at poly.

Retrieve an old backup

duke (/mri, /projects, /sct_testing) is backed up on grappelli every evening at 21:00 EST. In order to retrieve old backup you have to contact Jean-Sébastien Décarie.

Software Installed

Installed on each station (local)

MRI

  • FSL

  • ANTS

  • FreeSurfer

  • mricron (for dcm2nii conversion)

  • Osirix

  • ITKsnap

  • MITKworkbench

  • Diffusion Toolkit (with quicklook plugin) + Trackvis

Programming

  • git

  • source tree –> visualiser of git

  • Xcode (with command line tools)

  • PyCharm (Python editor)

  • Sublime Text (code editor)

Misc

  • Google Sketchup

  • Google Chrome

  • VirtualBox

  • Endnote

  • Dropbox

  • X11 Quartz

  • Microsoft suite (Installation kit can be found on the GRAMES server. Please see section below.)

  • Matlab (Installation kit can be found on the GRAMES server. Please see section below.)

  • Slack

  • NDP view

  • QuickLook:

    • Nifti viewer

  • Tanguy’s app to open Nifti files with FSLview

Admin

Technical details about station management and documentation is found on this repository.