Options that tune how an algorithm runs.
An option tunes the way an algorithm runs: the width of its loop step, the type it computes in, what it may assume of its ranges. Every algorithm carries a default set, tuned for the common case, and takes options between brackets, before its arguments, one pair per option; those a call passes override the defaults, and those it leaves out keep their default value:
The options come in three kinds, listed below: the lanes and the types an algorithm computes on, the shape of its loop, and the preconditions a call asserts on its ranges.
Contents | |
| Lanes and types | |
| Options that choose the lanes an algorithm computes on, and the types it computes in. | |
| Loop | |
| Options that shape the loop: its step, its alignment, what it fuses, how it searches. | |
| Range preconditions | |
| Preconditions on the ranges, which an algorithm turns into a shorter loop. | |