Kompilacja oprogramowania

Software Compilation

Please do not run the compilation on the head node!

To compile the software on a cluster we need to access to interactive console. To do this, you must submit interactive job We compile in interactive mode because we get access directly to the machine which we have more resources. The head node is not compileable (and calculated) because it has limited resources only for data viewing and submit job.
Example Slurm:

srun --pty /bin/bash

To access node with a certain number of cores you can add the -n parameter

srun --pty -n 12 /bin/bash

When we want to reserve a certain amount of RAM, we add the --mem parameter

srun --pty -n 12 --mem 16000 /bin/bash

When we access the console directly at the node we need to load the modules with the compilers needed to compile our software.
Example:

module load gcc

The last step is to compile the software in your home directory according to the manufacturer's recommendations
Example:

./configure --prefix=home directory
make
make install

To execute compiles on the declared number of cores, add the -j parameter

make -j 12

INTERACTIVE Job

An interactive job allows a user to obtain a shell on a computational node. Because compiling and running any programs on the head node (ui.inula.man.poznan.pl) is not allowed, interactive job are one way to run graphical user interface software (eg Matlab, Maple, etc.) or compile your application. The following is an example of how to run a task in interactive mode.
With the command line
The easiest way to submit interactive job is to execute the following command.

Interactive job SLURM


Interactive job can be divided into two groups:

  • Interactive job (text mode)
  • Interactive job with X (graphical mode)

Interactive job (text mode)


Submit interactive job in SLURM

srun --pty /bin/bash

You must add the -n parameter to access the node with the specified number of cores

srun --pty -n 12 /bin/bash

When we want to reserve a certain amount of RAM, we add the --mem parameter

srun --pty -n 12 --mem 16000 /bin/bash