Coding best practices
As a programmer, there are various ways you can use Neon and SVE technology.
Programming in any high-level language is a tradeoff between the ease of writing code, and the amount of control that you have over the low-level instructions that the compiler outputs.
The different options available for writing code include the following:
Neon and SVE-enabled math libraries, such as Arm Performance Libraries.
Note: An SVE-enabled library is introduced in Arm Compiler for Linux version 19.3+.
- Auto-vectorization features in your compiler can automatically optimize your code to take advantage of Neon and SVE.
Intrinsics are function calls that the compiler replaces with appropriate Neon or SVE instructions. These intrinsics gives you direct access to the exact Neon or SVE instructions you want.
For a searchable index for Neon intrinsics, see the Neon Intrinsics Reference.
The SVE intrinsics are defined in the Arm C Language Extensions for SVE specification.
- For very high performance, hand-coded Neon or SVE assembly code can be an alternative approach for experienced programmers.