UVA Research Computing

Research Computing

Creating innovative solutions for researchers

/category/hpc

  • Image Processing & Scientific Visualization on Rivanna

    Available Software To get an up-to-date list of the installed image processing and visualization tools, log on to Rivanna and run the following command in a terminal window: module keyword vis To get more information about a specific module version, run the module spider command, for example: module spider blender/2.78c

    List of Image Processing and Visualization Software Modules function searchFunction() { var input, filter, table, tr, td, i, txtValue; input = document.getElementById(“searchInput”); filter = input.value.toUpperCase(); table = document.getElementById(“moduleTable”); tr = table.getElementsByTagName(“tr”); for (i = 0; i -1) { tr[i].style.display = “”; } else { tr[i].


  • IDEs and Editors

    Editors Several text editors are available on Rivanna. Most provide features such as syntax coloring. Vim (Vi iMproved) Vim is an updated version of the early Unix text editor vi (for “visual”). It provides many extensions over plain vi. On Rivanna, the vi command is equivalent to the vim command. Vim is primarily utilized through keyboard commands. Once learned, it is extremely efficient to use. Many tutorials can be found online such as https://vim.fandom.com/wiki/Tutorial. Emacs Emacs is another well-known Unix text editor. Like vim, it is largely operated through the keyboard. It can run a compiler and debugger so has some of the capabilities of an IDE.
  • Bioinformatics on Rivanna

    Overview Many commonly used bioinformatics software packages on Rivanna are available as individual modules or as Python packages bundled in the bioconda modules. General considerations Most bioinformatics software packages are designed to run on a single compute node with varying support for multi-threading and utilization of multiple cpu cores. Accordingly, the SLURM job scripts should contain the following two SBATCH directives: #SBATCH -N 1 # request single node #SBATCH –cpus-per-task=<X> # request multiple cpu cores Replace <X> with the actual number of cpu cores to be requested. Requesting more than 8 cpu cores does not provide any significant performance gain for many bioinformatics packages.
  • Chemistry on Rivanna

    Overview Many popular software packages for computational chemistry are available on Rivanna. General considerations Most computational chemistry packages utilize MPI for parallel execution. Accordingly, the SLURM job scripts should contain the following two SBATCH directives: #SBATCH -N <M> # request M nodes (replace with a number) #SBATCH –ntasks-per-node=<L> # request L MPI processes per node You should launch your program with srun as the MPI executor, for example for Quantum Espresso srun pw.x -in mymol.in Please see the page of the particular package you wish to use for more details. VASP Users The Vienna Ab-Initio Simulation Package, is licensed by individual groups and we do not have a common installation.
  • Engineering on Rivanna

    Overview Several software packages for computer-aided engineering are available on Rivanna. General considerations Some engineering software packages utilize single node, multi-core or multi-node MPI for parallel execution. Accordingly, the SLURM job scripts should contain either of the following two SBATCH directives: Single Node Multi-Core #SBATCH -N 1 # request single node #SBATCH –cpus-per-task=<X> # request X multiple cpu cores Replace <X> with the actual number of cpu cores to be requested. Multi Node MPI #SBATCH -N <M> # request M nodes (replace with a number) #SBATCH –ntasks-per-node=<L> # request L MPI processes per node You should launch your program with srun as the MPI executor, for example for Quantum Espresso
  • Jupyter Lab on Rivanna

    Overview Jupyter Notebooks are documents which can combine executable code, formatted text, and interactive graphics into a single file. Because Notebooks can be shared, they provide developers with a tool for capturing and explaining their computational results. To use a Jupyter Notebook, a web application, such as JupyterLab, is needed. We now provide a web portal where JupyterLab can be accessed on Rivanna. However, to use JupyterLab, you must have an account on Rivanna. Accessing JupyterLab To access JupyterLab, you will begin by connecting to our Open OnDemand portal: Open a web browser and go to https://rivanna-portal.hpc.virginia.edu. Use your Netbadge credentials to log in.
  • Libraries on Rivanna

    Available Software Libraries To get an up-to-date list of the installed software libraries, log on to Rivanna and run the following command in a terminal window: module keyword lib To get more information about a specific module version, run the module spider command, for example: module spider hdf5/1.10.4
    List of Software Library Modules function searchFunction() { var input, filter, table, tr, td, i, txtValue; input = document.getElementById(“searchInput”); filter = input.value.toUpperCase(); table = document.getElementById(“moduleTable”); tr = table.getElementsByTagName(“tr”); for (i = 0; i -1) { tr[i].style.display = “”; } else { tr[i].style.display = “none”; } } } } Module Category Description armadillo numlib Armadillo is an open-source C++ linear algebra library (matrix maths) aiming towards a good balance between speed and ease of use.

  • Math & Statistics on Rivanna

    Overview Many popular math and statistics software packages are available on Rivanna. General considerations Available Math & Statistics Software To get an up-to-date list of the installed math applications, log on to Rivanna and run the following command in a terminal window: module keyword math To get more information about a specific module version, run the module spider command, for example: module spider mathematica/12.1
    List of Math & Statistics Software Modules function searchFunction() { var input, filter, table, tr, td, i, txtValue; input = document.getElementById(“searchInput”); filter = input.value.toUpperCase(); table = document.getElementById(“moduleTable”); tr = table.getElementsByTagName(“tr”); for (i = 0; i -1) { tr[i].

  • Matlab on Rivanna

    Matlab MATLAB is an integrated technical computing environment from the MathWorks that combines array-based numeric computation, advanced graphics and visualization, and a high-level programming language. Separately licensed toolboxes provide additional domain-specific functionality. Mathworks provides MATLAB examples and tutorials for all experience levels here. Using MATLAB on Rivanna You must always set up your environment in order to use MATLAB. To load the most recent installed version run module load matlab Available Matlab versions function getToolchain(parent) { return parent } Module Version Module Load Command You can work in the MATLAB desktop on the Rivanna frontend nodes; we recommend FastX for this application.
  • Perl on Rivanna

    Overview Perl is a general-purpose interpreted programming language, originally developed for text manipulation and now used for a wide range of tasks including system administration, web development, network programming, GUI development, and bioinformatics. Perl on Rivanna The default Perl is required for system purposes and is generally too old for applications. We offer more recent versions of Perl as modules. To see all available versions, run module spider perl function getToolchain(parent) { return parent } Module Version Module Load Command perl 5.24.0 module load perl/5.24.0 To load the perl/5.
  • Physics on Rivanna


  • Python on Rivanna

    Overview Python is an integrated technical computing environment that combines sophisticated computation, advanced graphics and visualization, and a high-level programming language. Learning Python The Research Computing groups offers a free 10-part video series called “Python for Scientists & Engineers”. Click here to start learning Python. Python on Rivanna The default Python is required for system purposes and is generally too old for applications. We offer Python through the [Anaconda]() distribution from Continuum Analytics. Anaconda bundles a large number of popular modules and packages, as well as the Spyder IDE, an iPython console, and Jupyter notebooks. To see all available versions, run
  • R and RStudio on Rivanna

    Overview R is a programming language that often is used for data analytics, statistical programming, and graphical visualization. Loading the R module On Rivanna, R is available through our module system. To load R, simply type: module load gcc R Notice that we included gcc in the load command. There are two reasons why including gcc is important: R was built with the gcc compiler. Due to its hierarchical layout, the module system must be told which build of R is needed. R has many computationally-intensive packages that are built with C, C++, or Fortran. By including gcc, we ensure that the same environment used for building R is loaded for any package installs.
  • RStudio Server on Rivanna

    Overview RStudio Server is a web-based interface to RStudio – a development environment for R programming. Research Computing provides a web portal where RStudio Server can be accessed on Rivanna. However, to use RStudio Server, you must have an account on Rivanna. Instructions for setting up an acccount can be found here. Accessing RStudio Server To access RStudio Server, you will begin by connecting to our Open OnDemand portal: Open a web browser and go to URL: https://rivanna-portal.hpc.virginia.edu. Use your “Netbadge” credentials to log in. On the top right of the menu bar of the Open OnDemand dashboard, click on “Interactive Apps”.
  • The Make Tool

    Overview Make is a program used primarily on Unix systems to manage compiling and linking (building) programs written in C, C++, Fortran, or other compiled languages. Make operates on targets using rules to create those targets. It has a set of built-in rules but users may write their own or override the default rules. Make scans the dependencies of each target looking for files newer than the target. If it finds them, it recreates the target. Targets may and usually do depend on other targets; make will work its way through the chain to rebuild the final target, which is typically an executable.
  • Abinit on Rivanna

    Description ABINIT is a package whose main program allows one to find the total energy, charge density and electronic structure of systems made of electrons and nuclei (molecules and periodic solids) within Density Functional Theory (DFT), using pseudopotentials and a planewave or wavelet basis. Software Category: chem For detailed information, visit the Abinit website. Available Versions The current installation of Abinit incorporates the most popular packages. To find the available versions and learn how to load them, run: module spider abinit The output of the command shows the available Abinit module versions. For detailed information about a particular Abinit module, including how to load the module, run the module spider command with the module’s full version label.
  • Amber on Rivanna

    Description A suite of biomolecular simulation programs. It began in the late 1970's, and is maintained by an active development community.
    Software Category: bio For detailed information, visit the Amber website. Local support is not available. Available Versions The current installation of Amber lags behind the latest release due to license restrictions. To find the available versions and learn how to load them, run: module spider amber The output of the command shows the available Amber module versions. For detailed information about a particular Amber module, including how to load the module, run the module spider command with the module’s full version label.

  • ANSYS on Rivanna

    Description ANSYS simulation software enables organizations to confidently predict how their products will operate in the real world. We believe that every product is a promise of something greater.
    Software Category: Local support is minimal; users should make an account at the student forum through the ANSYS website for technical support and for obtaining detailed information. Available Versions The current installation of ANSYS incorporates the most popular packages. To find the available versions and learn how to load them, run: module spider ansys The output of the command shows the available ANSYS module versions. For detailed information about a particular ANSYS module, including how to load the module, run the module spider command with the module’s full version label.

  • Bowtie2 on Rivanna

    Description Bowtie 2 is an ultrafast and memory-efficient tool for aligning sequencing reads to long reference sequences. It is particularly good at aligning reads of about 50 up to 100s or 1,000s of characters, and particularly good at aligning to relatively long (e.g. mammalian) genomes. Bowtie 2 indexes the genome with an FM Index to keep its memory footprint small: for the human genome, its memory footprint is typically around 3.2 GB. Bowtie 2 supports gapped, local, and paired-end alignment modes. Software Category: bio For detailed information, visit the Bowtie2 website. Available Versions The current installation of Bowtie2 incorporates the most popular packages.
  • BWA on Rivanna

    Description Burrows-Wheeler Aligner (BWA) is an efficient program that aligns relatively short nucleotide sequences against a long reference sequence such as the human genome. BWA provides three alignment algorithms: BWA-backtrack BWA-SW BWA-MEM The BWA-backtrack algorithm is exclusively used for short sequence reads up to 100bp, the latter two can be used for sequence reads of up to 1MB. The BWA-MEM algorithm can also be used for high-quality short Illumina sequence reads (< 100bp) in many cases with better performance compared to the original BWA-backtrack algorithm. Therefore, the more universal BWA-MEM algorithm is recommended as a starting point for most alignment scenarios.
  • CellProfiler on Rivanna

    Description CellProfiler is an image processing package to generate morphometric measurements. Software Category: bio For detailed information, visit the CellProfiler website. Available Versions To find the available versions and learn how to load them, run: module spider cellprofiler The output of the command shows the available CellProfiler module versions. For detailed information about a particular CellProfiler module, including how to load the module, run the module spider command with the module’s full version label. For example: module spider cellprofiler/2.2.0 function getToolchain(parent) { return parent } Module Version Module Load Command cellprofiler 2.
  • Code Debugging on Rivanna

    TotalView TotalView is a full-featured, source-level, graphical debugger for applications written in C, C++, Fortran (77 and 90/95/2003), assembler, and mixed source/assembler codes. It is a multiprocess, multithread debugger that supports multiple parallel programming paradigms including MP and OpenMP. The University has a near-site license (256 tokens) for Totalview on all versions of Linux. Visit the TotalView website for detailed documentation. Getting started with TotalView. Your code must be compiled appropriately to use Totalview. For most Unix compilers, the debug flag -g must be added to the compilation options, just as it would be for other debuggers such as gdb.
  • Gaussian on Rivanna

    Description Gaussian is a suite of electronic-structure codes. Software Category: chem For detailed information, visit the Gaussian website. Available Versions To find the available versions and learn how to load them, run: module spider gaussian The output of the command shows the available Gaussian module versions. For detailed information about a particular Gaussian module, including how to load the module, run the module spider command with the module’s full version label. For example: module spider gaussian/g16 function getToolchain(parent) { return parent } Module Version Module Load Command gaussian g16 module load gaussian/g16 gaussian grads16 module load gaussian/grads16 GaussView The GaussView graphical interface is available on Rivanna.
  • GROMACS on Rivanna

    Description GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the Newtonian equations of motion for systems with hundreds to millions of particles. Software Category: chem For detailed information, visit the GROMACS website. Available Versions To find the available versions and learn how to load them, run: module spider gromacs The output of the command shows the available GROMACS module versions. For detailed information about a particular GROMACS module, including how to load the module, run the module spider command with the module’s full version label. For example: module spider gromacs/5.1.2 function getToolchain(parent) { return parent } Module Version Module Load Command gromacs 5.
  • IMSL on Rivanna

    Description IMSL Libraries provide optimized mathematical and statistical algorithms that can be embedded into C, C++, .NET, Java™, and Fortran applications, including many databases. IMSL enhances application performance, reliability, portability, scalability, and maintainability as well as developer productivity. IMSL provides high-performance computing software and expertise needed to develop and execute sophisticated numerical analysis applications. These libraries free you from developing your own code by providing pre-written mathematical and statistical algorithms that you can embed into your Fortran applications. Currently we provide only the Fortran libraries. The numerical algorithms of the IMSL Fortran Library can be accessed using Fortran 77 or using Fortran 90 language constructs.
  • Julia on Rivanna

    Description Julia is a high-level programming language designed for high-performance numerical analysis and computational science. Distinctive aspects of Julia’s design include a type system with parametric polymorphism and types in a fully dynamic programming language and multiple dispatch as its core programming paradigm. It allows concurrent, parallel and distributed computing, and direct calling of C and Fortran libraries without glue code. A just-in-time compiler that is referred to as “just-ahead-of-time” in the Julia community is used. Ref: Wikipedia There are several website resources for Julia. Intro to Julia Intro to Julia for data science Julia vs. Python: Which is best for data science?
  • Keras on Rivanna

    Description Keras is a high-level neural networks application programming interface (API), written in Python and capable of running on top of TensorFlow, CNTK, or Theano. On Rivanna, we provide TensorFlow containers that include the Keras API. Since version 1.12.0, TensorFlow contains its own Keras API implementation as described on the TensorFlow website. Using Keras with TensorFlow containers Like TensorFlow itself, Python code that utlizes the Keras package can be run interactively as Jupyter Notebooks, in interactive shell jobs, or non-interctively as SLURM batch jobs. Rivanna provides several nodes with graphics processing units (GPUs) that should be used when running Keras code.
  • LAMMPS on Rivanna

    Description LAMMPS (Large-scale Atomic/Molecular Massively Parallel Simulator) is a molecular-dynamics code. The code is designed to be easy to modify or extend with new functionality. LAMMPS can run on a single core but is designed to be highly efficient running on a large number of cores in parallel using message-passing techniques and a spatial decomposition of the simulation domain. It solves systems ranging from single atoms through polymers and proteins to rigid collections of particles. A variety of force fields is supported. Local support is not available. LAMMPS has documentation and tutorials at its Website. It has a large and active community of users; to search or join the mailing list see the instructions here.
  • Mathematica on Rivanna

    Description Mathematica is an integrated technical computing environment that combines numeric and symbolic computation, advanced graphics and visualization, and a high-level programming language. There are several website resources with Mathematica tutorials and parallel Mathematica training sessions. Software Category: For detailed information, visit the Mathematica website. Available Versions To find the available versions and learn how to load them, run: module spider mathematica The output of the command shows the available Mathematica module versions. For detailed information about a particular Mathematica module, including how to load the module, run the module spider command with the module’s full version label. For example: module spider mathematica/11.
  • NCBI Blast on Rivanna

    Description Basic Local Alignment Search Tool, or BLAST, is an algorithm for comparing primary biological sequence information, such as the amino-acid sequences of different proteins or the nucleotides of DNA sequences. Software Category: bio For detailed information, visit the NCBI Blast website. Available Versions To find the available versions and learn how to load them, run: module spider blast The output of the command shows the available NCBI Blast module versions. For detailed information about a particular NCBI Blast module, including how to load the module, run the module spider command with the module’s full version label. For example: module spider blast/2.
  • QuantumEspresso on Rivanna

    Description Quantum ESPRESSO is an integrated suite of computer codes for electronic-structure calculations and materials modeling at the nanoscale. It is based on density-functional theory, plane waves, and pseudopotentials (both norm-conserving and ultrasoft). Local support is not available. For detailed documentation and tutorials, visit the QuantumEspresso website. QuantumEspresso (QE) has a large and active community of users; to search or join the mailing list see the instructions here. Software Category: chem Available Versions We built versions of QE incorporating the most popular optional packages. To find the available versions and learn how to load them, run: module spider quantumespresso
  • SAMTools on Rivanna

    Description SAM Tools provide various utilities for manipulating alignments in the SAM format, including sorting, merging, indexing and generating alignments in a per-position format. Software Category: For detailed information, visit the SAMTools website. Available Versions The current installation of SAMTools incorporates the most popular packages. To find the available versions and learn how to load them, run: module spider samtools The output of the command shows the available SAMTools module versions. For detailed information about a particular SAMTools module, including how to load the module, run the module spider command with the module’s full version label. For example: module spider samtools/1.
  • SAS on Rivanna

    Description Statistical analysis package Software Category: math For detailed information, visit the SAS website. Available Versions To find the available versions and learn how to load them, run: module spider sas The output of the command shows the available SAS module versions. For detailed information about a particular SAS module, including how to load the module, run the module spider command with the module’s full version label. For example: module spider sas/9.4 function getToolchain(parent) { return parent } Module Version Module Load Command sas 9.4 module load sas/9.4 Note: SAS scripts may be run on Rivanna through the SLURM queueing system in batch mode, but production interactive jobs on the frontend are not permitted.
  • SmrtLink on Rivanna

    Description PacBio’s open-source SMRT Analysis software suite is designed for use with Single Molecule, Real-Time (SMRT) Sequencing data. You can analyze, visualize, and manage your data through an intuitive GUI or command-line interface. You can also integrate SMRT Analysis in your existing data workflow through the extensive set of APIs provided Software Category: For detailed information, visit the SmrtLink website. Available Versions To find the available versions and learn how to load them, run: module spider smrtlink The output of the command shows the available SmrtLink module versions. For detailed information about a particular SmrtLink module, including how to load the module, run the module spider command with the module’s full version label.
  • VASP on Rivanna

    Description The Vienna Ab initio Simulation Package (VASP) is a computer program for atomic scale materials modelling. Local support is not available. The package is supported by its developers through their documentation site. VASP is licensed software and licenses are issued to individual research groups. Each group must build and maintain its own copy of the code. Software Category: chem For detailed information, visit the VASP website. Available Versions To find the available versions and learn how to load them, run: module spider vasp The output of the command shows the available VASP module versions. For detailed information about a particular VASP module, including how to load the module, run the module spider command with the module’s full version label.
  • High Performance Computing

    Research Computing supports all UVA researchers who are interested in writing code to address their scientific inquiries. Whether these programming tasks are implemented interactively, in a series of scripts or as an open-source software package, services are available to provide guidance and enable collaborative development. RC has specific expertise in object oriented programming in Matlab, R, and Python. Examples of service areas include: Collaborating on package development Reviewing and debugging code Preparing scripts to automate or expedite tasks Developing web interfaces for interactive data exploration Advising on integration of existing software tools UVA has two local HPC facilities available to researchers: Rivanna and Ivy.