mirror of
https://github.com/microsoft/mimalloc.git
synced 2025-05-06 23:39:31 +03:00
Merge branch 'dev' into dev-slice
This commit is contained in:
commit
9bb29b177a
1 changed files with 11 additions and 6 deletions
|
@ -89,6 +89,14 @@ typedef struct mi_option_desc_s {
|
||||||
#define MI_DEFAULT_RESERVE_OS_MEMORY 0
|
#define MI_DEFAULT_RESERVE_OS_MEMORY 0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef MI_DEFAULT_GUARDED_SAMPLE_RATE
|
||||||
|
#if MI_GUARDED
|
||||||
|
#define MI_DEFAULT_GUARDED_SAMPLE_RATE 4000
|
||||||
|
#else
|
||||||
|
#define MI_DEFAULT_GUARDED_SAMPLE_RATE 0
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
static mi_option_desc_t options[_mi_option_last] =
|
static mi_option_desc_t options[_mi_option_last] =
|
||||||
{
|
{
|
||||||
|
@ -145,11 +153,8 @@ static mi_option_desc_t options[_mi_option_last] =
|
||||||
{ 0, UNINIT, MI_OPTION(guarded_min) }, // only used when building with MI_GUARDED: minimal rounded object size for guarded objects
|
{ 0, UNINIT, MI_OPTION(guarded_min) }, // only used when building with MI_GUARDED: minimal rounded object size for guarded objects
|
||||||
{ MI_GiB, UNINIT, MI_OPTION(guarded_max) }, // only used when building with MI_GUARDED: maximal rounded object size for guarded objects
|
{ MI_GiB, UNINIT, MI_OPTION(guarded_max) }, // only used when building with MI_GUARDED: maximal rounded object size for guarded objects
|
||||||
{ 0, UNINIT, MI_OPTION(guarded_precise) }, // disregard minimal alignment requirement to always place guarded blocks exactly in front of a guard page (=0)
|
{ 0, UNINIT, MI_OPTION(guarded_precise) }, // disregard minimal alignment requirement to always place guarded blocks exactly in front of a guard page (=0)
|
||||||
#if MI_GUARDED
|
{ MI_DEFAULT_GUARDED_SAMPLE_RATE,
|
||||||
{ 4000,UNINIT, MI_OPTION(guarded_sample_rate)}, // 1 out of N allocations in the min/max range will be guarded(= 1000)
|
UNINIT, MI_OPTION(guarded_sample_rate)}, // 1 out of N allocations in the min/max range will be guarded (=4000)
|
||||||
#else
|
|
||||||
{ 0, UNINIT, MI_OPTION(guarded_sample_rate)},
|
|
||||||
#endif
|
|
||||||
{ 0, UNINIT, MI_OPTION(guarded_sample_seed)},
|
{ 0, UNINIT, MI_OPTION(guarded_sample_seed)},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -180,7 +185,7 @@ void _mi_options_init(void) {
|
||||||
_mi_warning_message("option 'allow_large_os_pages' is disabled to allow for guarded objects\n");
|
_mi_warning_message("option 'allow_large_os_pages' is disabled to allow for guarded objects\n");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
_mi_verbose_message("guarded build: %s\n", mi_option_get(mi_option_guarded_max) > 0 ? "enabled" : "disabled");
|
_mi_verbose_message("guarded build: %s\n", mi_option_get(mi_option_guarded_sample_rate) != 0 ? "enabled" : "disabled");
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue