What is MASon?

MASon (Million Alignments in Seconds) is a C++ library that uses the advantages of widely distributed and inexpensive high performance architectures to reduce the computing time of NGS analysis pipelines. MASon employs an optimized SW implementation to align NGS reads and exploits graphic cards (CUDA, OpenCL) and CPU vector instructions (SSE, OpenCL). This allows computation of millions of short local pairwise sequence alignments (36bp - 1,000bp) within a few seconds. MASon can be easily integrated into NGS analysis pipelines and allows programmers to optimally utilize modern hardware, ranging from desktop computers to high-end clusters.

System requirements

CPU: SSE enabled
RAM: 4 GB (8 GB recommended)
GPU (optional): CUDA (Nvidia) or ATI Stream Technology (ATI) enabled
OS: Linux (OpenSUSE with gcc 4.3.4 recommended)
Software: CUDA 3.2 (or higher), AMD Accelerated Parallel Processing SDK 2.4 (or higher)

How to install prerequisite

CUDA

Download the CUDA SDK 4.0 from here and follow the install instructions

IMPORTANT: Verify that the PATH environment variable contains the path to the cuda compiler and that LD_LIBRARY_PATH points to the install directory of CUDA.

AMD APP SDK

Download the AMD APP SDK from here and follow the install instructions

IMPORTANT: Verify that the AMDAPPSDKROOT points to the install path of the AMD APP SDK (default: /opt/AMDAPP).

Download

Source code: mason-rev12.tar.gz

How to build MASon

tar xfvz mason-rev12.tar.gz
cd mason-trunk/
mkdir -p build/release
cd build/release/
cmake -DCMAKE_BUILD_TYPE=Release ../..
make

All binaries are located in mason-trunk/bin.For debug mode use -DCMAKE_BUILD_TYPE=Debug.

Documentation

see here

Known issues

  • CUDA doesn't support gcc 4.5 (or higher)
    If your're using gcc 4.5 or higher, install gcc 4.4 and use the following command for building MASon:
    cmake -D CMAKE_C_COMPILER=gcc-4.4 -D CMAKE_CXX_COMPILER=g++-4.4 -DCMAKE_BUILD_TYPE=Release ../..
    

Notes

MASon was tested on openSUSE 11.4 (x86_64) with GCC 4.3.4 and Ubuntu 11.04/11.10 (x86_64) with GCC 4.4.5.

Publications

Rescheneder, P., von Haeseler, A., Sedlazeck, F. J., Mason: Million alignments in seconds, In Proceedings of the International Conference on Bioinformatics: Models, Methods and Algorithms, 2012, Algarve, Portugal, accepted for publication