mirror of
https://sourceware.org/git/glibc.git
synced 2025-08-08 17:42:12 +03:00
x86: Add seperate non-temporal tunable for memset
The tuning for non-temporal stores for memset vs memcpy is not always the same. This includes both the exact value and whether non-temporal stores are profitable at all for a given arch. This patch add `x86_memset_non_temporal_threshold`. Currently we disable non-temporal stores for non Intel vendors as the only benchmarks showing its benefit have been on Intel hardware. Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
This commit is contained in:
@@ -944,8 +944,10 @@ struct cpu_features
|
||||
/* Shared cache size for use in memory and string routines, typically
|
||||
L2 or L3 size. */
|
||||
unsigned long int shared_cache_size;
|
||||
/* Threshold to use non temporal store. */
|
||||
/* Threshold to use non temporal store in memmove. */
|
||||
unsigned long int non_temporal_threshold;
|
||||
/* Threshold to use non temporal store in memset. */
|
||||
unsigned long int memset_non_temporal_threshold;
|
||||
/* Threshold to use "rep movsb". */
|
||||
unsigned long int rep_movsb_threshold;
|
||||
/* Threshold to stop using "rep movsb". */
|
||||
|
Reference in New Issue
Block a user