cbrc
MAFFT version 7

Multiple alignment program for amino acid or nucleotide sequences

Supported in versions ≥6.8

Multithreading

% mafft --thread -1 input > output
% mafft --thread n input > output
% mafft --thread n --globalpair (other options) input > output

Separately specifying the number of threads for each calculation stage  Updated (2017/Jul)

% mafft --thread n --threadtb m --threadit p --globalpair (other options) input > output
  1. --thread: For all-to-all pairwise comparison, the number of threads specified with the --thread option are used.  The wall-clock time for this stage linearly decreases with the number of threads.
  2. --threadtb: For progressive alignment stage, the efficiency is not high (requiring large RAM) when using a large number (≫20) of threads. 
  3. --threadit: For iterative refinement stage, too, the efficiency is not high when using a large number (≫20) of threads.  The number of threads in this stage is automatically restricted but can be increased or decreased by --threadit
  4. The iterative refinement step can return different results for different runs, when using mutitple threads.  To obtain the same result for every run, add the --threadit 0 flag, which disables multithreading only for iterative refinement step. (added 2020/Dec)