Metagenomic toolbox designed for high performances and interpretability.
- Runs as an executable that processes metagenomic data through the command-line.
- Also runs as a library for Rust and Python.
- Built with Rust.
- Accelerated with multithreading and GPUs.
Check the demonstrations out for usage examples.
This project is at an early stage. Planned elements are marked with checkboxes.
You can install stelaro with GPU support, which accelerates the algorithms. This approach is
recommended. Your system needs the OpenCL runtime to build the full project. On Linux, follow this
guide
to install the runtime. On Windows, install the OpenCL runtime from the website of the vendor of
your GPU. After installing the runtime, you may have to place the file libOpenCL.so (Linux) or
OpenCL.lib (Windows) in the directory of the project to build stelaro with GPU support.
Build the full Rust library and executable by executing:
cargo build --features opencl
Install the full Python package with Maturin by executing:
maturin develop --features opencl
You can install stelaro without GPU support. All features will be available, but there will be
no hardware acceleration. This approach is only recommended if your system does not support OpenCL.
Build the CPU-only Rust library and executable by executing:
cargo build
Install the CPU-only Python package with Maturin by executing:
maturin develop
demonstrations: Usage examples.documentation: Documentation for Rust and Python.src: Rust source code and OpenCL kernels.stelaro: Python source code.test: Test cases for Rust and Python.
Run the following command to validate the project:
python3 ci.py
This will build all components, run all tests, and validate the coding style.
The dataset used by BERTax is available at https://osf.io/qg6mv/. It contains:
non_similar_dataset.zip: Non-similar sequencessimilar_data.zip: Similar sequence (i.e. within the same genera)
Each identifier of the files contained in this dataset is organized as follows:
>`NCBI Taxonomy ID` `ID`
where NCBI Taxonomy ID is the species / strain identifier of the genome from which the sequence
was sampled and ID is a project-specific identifier.