mirror of
https://github.com/jemalloc/jemalloc.git
synced 2026-04-30 17:17:53 +03:00
Mutex: Make spin count configurable.
Don't document it since we don't want to support this as a "real" setting, but it's handy for testing.
This commit is contained in:
parent
dae24589bc
commit
6f41ba55ee
5 changed files with 18 additions and 9 deletions
|
|
@ -6,6 +6,8 @@
|
|||
#include "jemalloc/internal/tsd.h"
|
||||
#include "jemalloc/internal/witness.h"
|
||||
|
||||
extern int64_t opt_mutex_max_spin;
|
||||
|
||||
typedef enum {
|
||||
/* Can only acquire one mutex of a given witness rank at a time. */
|
||||
malloc_mutex_rank_exclusive,
|
||||
|
|
@ -43,7 +45,7 @@ struct malloc_mutex_s {
|
|||
#else
|
||||
pthread_mutex_t lock;
|
||||
#endif
|
||||
/*
|
||||
/*
|
||||
* Hint flag to avoid exclusive cache line contention
|
||||
* during spin waiting
|
||||
*/
|
||||
|
|
@ -67,12 +69,6 @@ struct malloc_mutex_s {
|
|||
#endif
|
||||
};
|
||||
|
||||
/*
|
||||
* Based on benchmark results, a fixed spin with this amount of retries works
|
||||
* well for our critical sections.
|
||||
*/
|
||||
#define MALLOC_MUTEX_MAX_SPIN 250
|
||||
|
||||
#ifdef _WIN32
|
||||
# if _WIN32_WINNT >= 0x0600
|
||||
# define MALLOC_MUTEX_LOCK(m) AcquireSRWLockExclusive(&(m)->lock)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue