Skip to content

Applications & Software

Overview

SENAI CIMATEC provides several ways to access and manage software on the HPC cluster. This page guides you through the available options for installing and running applications.

Software Modules

The NOC installs and manages commonly used software through the environment modules system. These software packages are available as modules, allowing you to load or unload different combinations and versions of software in your environment as needed.

How to use modules

# List all available modules
module avail

# Search for a specific module
module avail python

# Load a module
module load python/3.10

# List loaded modules
module list

# Unload a module
module unload python/3.10

# Unload all modules
module purge

See our detailed module guide for more information on working with the module system.

Python, Conda & R

You can install your own packages and create isolated environments for Python, Conda, and R. See our specific guides:

  • Python: Create virtual environments and install Python packages
  • Conda: Manage Conda environments and scientific packages
  • R: Install R packages and run statistical analyses

Where to install environments

  • Small environments (< 5 GB): Install in /home/$USER/
  • Large environments: Consider installing in /scratch/projetos/<your_project>/envs/
  • See the file management guide for more details

Containers (Apptainer/Singularity)

For software with complex dependencies or requiring complete isolation, you can use Apptainer containers (formerly known as Singularity).

  • Container Guide: Create containers and port Docker containers to the cluster

Apptainer vs Docker

Docker is not available on the clusters for security reasons. Use Apptainer, which is compatible with Docker images and designed for HPC environments.

Compiling Your Own Software

For software that is not available as a module or package, you can compile your own code from source. Instructions for common procedures:

  • Autotools: Configure, make, make install
  • Make: Compilation using Makefiles
  • CMake: Modern build systems

Best practices for compilation

# Install to local directory
./configure --prefix=$HOME/software/<program_name>
make
make install

# For research projects
./configure --prefix=/scratch/projetos/<your_project>/software/<program_name>
make
make install

Compilation on compute nodes

For resource-intensive compilations, request an interactive job instead of compiling on the login node:

srun --pty --time=02:00:00 --cpus-per-task=4 bash

Specific Software Guides

We provide additional guides for commonly used software:

See the complete list of guides for more specific software.

Requesting Software Installation

If you need software that:

  • Is used by multiple cluster users
  • Has complex installation
  • Requires administrator privileges
  • Should be available globally

Please request the NOC to install the software as a module. Include in your request:

  • Software name and version
  • Official website URL or repository
  • Justification for use
  • Known dependencies

Problems and Support

If you encounter issues with:

  • Modules: Check module spider <name> for dependency details
  • Compilation: Review error logs and our compilation documentation
  • Permissions: Make sure you're installing in your home or project directory

For additional assistance, contact support or email hpc@fieb.org.br.

Additional Resources