NMF-mGPU

NMF-mGPU implements non-negative matrix factorization (NMF) on NVIDIA GPUs to accelerate extraction of interpretable components from high-dimensional biological datasets.


Key Features:

  • Non-negative Matrix Factorization (NMF): Implements the NMF algorithm for extracting interpretable components from data matrices.
  • CUDA acceleration: Executes computations using CUDA (Compute Unified Device Architecture) to perform GPU-based linear-algebra operations.
  • Blockwise memory management: Manages limited on-board GPU memory by blockwise transferring large input matrices from system main memory to GPU memory.
  • Multi-GPU synchronization: Supports synchronization across multiple GPUs using MPI (Message Passing Interface) for parallel execution.
  • CUDA architecture optimization: Optimized for various CUDA architectures to utilize different NVIDIA GPU generations.
  • Performance scaling: Demonstrates approximately 120 times faster processing on a four-GPU setup compared to a single conventional processor and more than four times the speed of a standalone GPU device.

Scientific Applications:

  • Dimensionality reduction: Extraction of interpretable components from high-dimensional biological datasets.
  • Large-scale experimental data analysis: Processing of extensive biological experimental datasets to support downstream biological interpretation.
  • High-performance bioinformatics computing: Accelerated matrix factorization for computationally intensive bioinformatics tasks.

Methodology:

Implements NMF via CUDA for GPU linear-algebra operations, performs blockwise transfers of large input matrices from system main memory to GPU memory, synchronizes multiple GPUs using MPI, and is optimized for various CUDA architectures.

Topics

Details

Tool Type:
command-line tool
Operating Systems:
Linux
Programming Languages:
C
Added:
8/3/2017
Last Updated:
11/25/2024

Operations

Publications

Mejía-Roa E, Tabas-Madrid D, Setoain J, García C, Tirado F, Pascual-Montano A. NMF-mGPU: non-negative matrix factorization on multi-GPU systems. BMC Bioinformatics. 2015;16(1). doi:10.1186/s12859-015-0485-4. PMID:25887585. PMCID:PMC4339678.

Documentation

Links