Kalign is a fast multiple sequence alignment program for biological sequences. It aligns protein, DNA, and RNA sequences using a progressive alignment approach with multi-threading support.
Prerequisites: C compiler (GCC or Clang), CMake 3.18+, optionally OpenMP.
mkdir build && cd build
cmake ..
make
make test
make installOn macOS, brew install libomp for OpenMP support.
Requires zig version 0.12.
zig buildpip install kalign-pythonSee README-python.md for the full Python documentation.
kalign -i <input> -o <output>
Kalign v3.5 has three modes:
| Mode | Flag | Description |
|---|---|---|
| default | (none) | Best general-purpose. |
| fast | --fast |
Fastest. Same as kalign v3.4. |
| precise | --precise |
Highest accuracy, ~10x slower. |
# Align sequences
kalign -i sequences.fa -o aligned.fa
# Fast mode
kalign --fast -i sequences.fa -o aligned.fa
# Precise mode (ensemble + realign)
kalign --precise -i sequences.fa -o aligned.fa
# Read from stdin
cat input.fa | kalign -i - -o aligned.fa
# Combine multiple input files
kalign seqsA.fa seqsB.fa -o combined.fa
# Save ensemble consensus for re-thresholding
kalign --precise -i seqs.fa -o out.fa --save-poar consensus.poar
kalign -i seqs.fa -o out2.fa --load-poar consensus.poar --min-support 3--format Output format: fasta, msf, clu. [fasta]
--type Sequence type: protein, dna, rna, divergent. [auto]
--gpo Gap open penalty. [auto]
--gpe Gap extension penalty. [auto]
--tgpe Terminal gap extension penalty. [auto]
--ensemble N Run N ensemble alignments. [off]
--refine Refinement: none, all, confident. [none]
-n Number of threads. [auto]
kalign -i input.fa -f msf -o output.msf
kalign -i input.fa -f clu -o output.cluLink Kalign into your C/C++ project:
find_package(kalign)
target_link_libraries(<target> kalign::kalign)Or include directly:
add_subdirectory(<path>/kalign EXCLUDE_FROM_ALL)
target_link_libraries(<target> kalign::kalign)Lassmann, Timo. "Kalign 3: multiple sequence alignment of large data sets." Bioinformatics (2019). DOI
Apache License, Version 2.0. See COPYING.

