Loading...
Searching...
No Matches
seqan3::align_cfg::vectorised Class Reference
Sequence Alignment » Configuration

Enables the vectorised alignment computation if possible for the current configuration. More...

`#include <seqan3/alignment/configuration/align_config_vectorised.hpp>`

Inheritance diagram for seqan3::align_cfg::vectorised:
[legend]

## Public Member Functions

Constructor, destructor and assignment
constexpr | vectorised ()=default
| Defaulted.
constexpr | vectorised (vectorised const &)=default
| Defaulted.
constexpr | vectorised (vectorised &&)=default
| Defaulted.
constexpr vectorised & | operator= (vectorised const &)=default
| Defaulted.
constexpr vectorised & | operator= (vectorised &&)=default
| Defaulted.
| ~vectorised ()=default
| Defaulted.

## Detailed Description

Enables the vectorised alignment computation if possible for the current configuration.

In the vectorised alignment computation several pairwise sequence alignments are processed simultaneously in one invocation. To do so, we pack the alignments in so called extended SIMD registers which allow to compute a single instruction on multiple data at the same time. Depending on your processor architecture you can gain a significant speed-up, e.g. by running up to 64 alignments in parallel on the latest intel CPUs. In our mode we vectorise multiple alignments and not a single alignment. This means that you should provide many sequences to compute as one batch rather than computing them separately as there won't be performance gains.

See also
  For further information on SIMD see https://en.wikipedia.org/wiki/SIMD.

### Example

// SPDX-FileCopyrightText: 2006-2025 Knut Reinert & Freie Universität Berlin
// SPDX-FileCopyrightText: 2016-2025 Knut Reinert & MPI für molekulare Genetik
// SPDX-License-Identifier: CC0-1.0
#include <seqan3/alignment/configuration/align_config_vectorised.hpp>
int main()
{
// Enable SIMD vectorised alignment computation.
auto cfg = seqan3::align_cfg::vectorised{};
}
align_config_vectorised.hpp
Provides seqan3::align_cfg::vectorised configuration.
seqan3::align_cfg::vectorised
Enables the vectorised alignment computation if possible for the current configuration.
Definition align_config_vectorised.hpp:39

The documentation for this class was generated from the following file:

- align_config_vectorised.hpp

Hide me