AOCL-LibMem is a Linux library of data movement and manipulation
functions (such as memcpy() and strcpy()) highly optimized for AMD
“Zen” micro-architecture. It has multiple implementations leveraging micro-architectures
and ISA capabilities. It supports dynamic-dispatcher for Zen CPUs and
tunable options for choosing the instructions, alignments, and threshold options.
The default choice is the best-fit implementation based on the underlying
micro-architectural support for CPU features and instructions.
This release of the AOCL-LibMem library supports the following functions:
memcpy
mempcpy
memmove
memset
memcmp
memchr
strcpy
strncpy
strcmp
strncmp
strlen
strcat
strncat
strstr
strchr
Note
Behavior may be undefined if AVX512 is disabled in the BIOS configuration for Zen4 and later platforms.