How many servers do we have?

We have three servers, one CPU server (Cyrus), one GPU server (Nautilus), and one Rstudio server (RSTUDIO).

What is CYRUS?

CYRUS is a CPU computing server intended to serve my graduate students, named after Cyrus the great, who served humanity. This CentOS Linux server supports SSH and FTP services currently running over 32 parallel processors and a total of 64GB RAM. I adminstrate CYRUS with help of Benoit Forest, the computer technician of math department.

What is Nautilus?

Nautilus is the Capitan Nemo's submarine which goes deep in oceans. It is also our GPU computing server, intended to serve my graduate students in training deep neural networks. This Ubuntu Linux server supports SSH and FTP services currently running over 8 CPU that hosts a powerful Tesla K40 GPU server with 12 GB RAM and 2880 CUDA cores on one of its PCI 3.0 express slots. Khalid Laaziri adminstrates Nautilus. To have access first you must ssh using "ssh -x geraduser@ssh.gerad.ca" and then "ssh -x nautilus.gerad.lan"
You must "module load anaconda" and then "source activate keras-gpu" if you want to use keras with GPU acceleration, then run your python code using "python myfile.py". For more details contact Khalid. You may install what you like locally using "conda install".

What is RSTUDIO?

RSTUDIO is a server that I use also as my office desktop. RSTUDIO on our server is equipped with a web interface that mimics the common RStudio Desktop, except that the computations are sent to this server. This server makes RSTUDIO available on cell phones!

CYRUS Hardware


  • Motherboard Asus KGP(M)-D16.
  • Dual core AMD Opteron 6272, each core with 16 CPUs.
  • RAM 64 Giga octets.
  • Graphic Card CUDA Nvidia K420 (192 cores).
  • One hard disk SSD 120 Giga.
  • Two hard disks STATA 10K, one for data and home folders, another mirroring these folders.
  • One hard disk STATA 7.2K for regular backup.
  • Nautilus Hardware


  • Motherboard MB MSI x99s.
  • CPU Intel Core I7 5820 (6 core).
  • RAM 32G LPX DDR4.
  • Graphic Card CUDA Nvidia K420 (192 cores).
  • Tesla K40 GPU computing accelator (2880 cores).
  • One hard disk DDU Samsung SSD 256G.
  • RSTUDIO Hardware


  • Motherboard ASUS SABERTOOTH X58.
  • CPU Intel Core I7 (8 core).
  • RAM 32G.
  • Graphic Card ATI Radeon HD 6800 Series.
  • Two hard disks ATA Disk 128 Giga, one mirroring the other.
  • One removable USB hard disk for regular backup.
  • How can I have access?

    I must create you a username and send you a toy password. I strongly suggest to change your password as soon as you logged in the first time.

    How do I login?

    You can connect to the server using ssh command. If you work on Microsoft Windows, you need to install Putty. Below I describe some basic hints supposing that the server is CYRUS. For Mac or Linux users the following command can be run directly from your terminal
    LOCAL$ ssh username@cyrus.mathappl.polymtl.ca  
    

    How to change password?

    After you login on the server
    CYRUS$ passwd username  
    
    then follow the messages.

    How to copy files?

    If you need to copy files from your computer to the server, or back from the server to your computer, you can use ftp. Install the ftp interface called fireftp on your mozilla firefox browser. The ftp server is cyrus.mathappl.polymtl.ca, see below for more details

    How to use R on CYRUS?

    R is installed on the server. If you need some libraries, you have to install the libraries locally on your space on the server. First make a directory to install your local libraries in.
     CYRUS$ cd /home/username  
     CYRUS$ mkdir Rlibs  
    
    Then launch R and install a library in Rlibs
     CYRUS$ R  
     R> install.packages( "mylibrary", lib = "/home/username/Rlibs" )  
    
    You have to read the library from the Rlibs location that you specified. Call your library after the installation is complete using
     R> library( "mylibrary", lib.loc = "/home/username/Rlibs/" )  
    

    Important tips

  • Save all data that you use in your codes "save( list = ls(),...)" since you may need some of your variables later. Summarize the result in a small file "final.RData" and only save what you need. Only transfer this "final.RData" file to your local computer.
  • Compress your transfering data in one file using the "zip" or "unzip" terminal commands insalled on Cyrus.
  • Cyrus does not have a graophical card, if you need to plot something, you must write your plot using "postscript" or "pdf" commands in R. I suggest that you always save the data that you need, tansfer them to your computer, and make the graph on your local computer.
  • If you need other software to be installed, just let me know by dropping an email.
  • Learn some basic linux terminal commands from here.
  • Write your R codes on you own machine and run it on the server. Do not touch your R codes on the server. If you really needed to see you R codes use "nano" linux command.
  • Check if there is a free node using "top" command before running jobs.
  • Do not run more than 10 parallel jobs on this server. If you need to run more than 10 parallel jobs, ask me.
  • The memory of the server is shared between processors. Do not run demanding memory codes. It will crash the server and quites all jobs.
  • You need to re-insall your libraries if I update R. Check the R version before using your libraries.
  • If you run parallel in C, use MPI.