Make mafft's --nomemsave optional

I only have ~251G RAM. This means that I will often get mafft’s

ERROR: b''

error during the agur align step.

I’ve been getting around this by creating pre-alignments, but it’d save me some hassle if I could just turn off the --nomemsave paramater. I know this is probably included for speed, but it would really help me out if this was an optional parameter when running mafft.

Also, it’d really help me out if I could use mafft’s --large parameter as well (creates temp files instead of loading everything to memory).

Thanks for letting us know! When we started using --nomemsave back in March, we noted in the release notes for Augur version 6.4.2 that we would probably have to add an off-switch or otherwise make this configurable in the longer-term. Indeed, that time may have come. :slight_smile:

It’s worth discussing how to support other arbitrary options for the underlying aligner as well. For augur tree, the --tree-builder-args option is provided. If this has worked out well (maybe @jlhudd can comment?), then maybe an analagous option could be added for augur align too.

An alignment args option could be helpful for augur align. We would need to be clear about what our default arguments for mafft are and allow users to completely override these defaults. For example, our current mafft defaults are incompatible with mafft’s reference-alignment mode arguments.

@ErinYoung, you may be interested in a draft PR for the ncov workflow where we are considering using mafft’s reference alignment mode directly instead of using augur align. We have not had time yet to compare the quality of the alignments from this approach to the current approach, though.