2
0
mirror of https://github.com/boostorg/uuid.git synced 2026-01-19 04:42:16 +00:00

Updated docs with the new SIMD macros, added a release note for SIMD to_chars.

Also clarified the meaning of BOOST_UUID_USE_AVX10_1 in the docs as the previous
wording could be taken that it indicates support for a subset of AVX-512 that
is supported in Skylake-X.
This commit is contained in:
Andrey Semashev
2025-12-16 19:01:29 +03:00
parent ef9c903055
commit 454de03dbd
2 changed files with 9 additions and 1 deletions

View File

@@ -9,6 +9,7 @@
* Added a `noexcept` `operator()` overload to `string_generator`.
* `string_generator` now supports the Unicode character types in addition to `char` and `wchar_t`.
* Most `uuid` accessors, operations, and `to_chars` are now `constexpr` when possible (on {cpp}14 and higher and on recent compilers).
* Added SIMD implementation of `to_chars`, which can offer up to 5.5x performance improvement in UUID formatting.
== Changes in Boost 1.90.0

View File

@@ -25,15 +25,22 @@ However, there are a few options that can be enabled by defining macros prior to
|`BOOST_UUID_USE_SSE3`
|If defined, enables optimizations for https://en.wikipedia.org/wiki/SSE3[SSE3] extensions available in x86 processors.
|`BOOST_UUID_USE_SSSE3`
|If defined, enables optimizations for https://en.wikipedia.org/wiki/SSSE3[SSSE3] extensions available in x86 processors.
|`BOOST_UUID_USE_SSE41`
|If defined, enables optimizations for https://en.wikipedia.org/wiki/SSE4#SSE4.1[SSE4.1] extensions available in x86 processors.
|`BOOST_UUID_USE_AVX`
|If defined, enables optimizations for https://en.wikipedia.org/wiki/Advanced_Vector_Extensions[AVX] extensions available in modern x86 processors.
|`BOOST_UUID_USE_AVX2`
|If defined, enables optimizations for https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#Advanced_Vector_Extensions_2[AVX2] extensions available in modern x86 processors.
|`BOOST_UUID_USE_AVX10_1`
|If defined, enables optimizations for https://en.wikipedia.org/wiki/AVX-512[AVX-512] and https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#AVX10[AVX10.1] extensions available in modern x86 processors.
The library does not require 512-bit vectors and is compatible with CPUs implementing AVX-512F, CD, VL, BW and DQ instruction subsets (i.e. equivalent to Intel Skylake-X).
When defined by user, this macro indicates support for the full set of instructions defined in AVX10.1. Currently, the library does not require 512-bit vectors and is compatible with CPUs implementing AVX-512F,
CD, VL, BW and DQ instruction subsets (i.e. equivalent to Intel Skylake-X), so it may auto-detect and use AVX-512 even if only those subsets are supported.
|===