mirror of
https://github.com/microsoft/mimalloc.git
synced 2025-07-07 11:58:41 +03:00
add reset_decommit, reset_discard options; maintain more statistics
This commit is contained in:
parent
2cfdbc2cbb
commit
0314373d93
7 changed files with 142 additions and 96 deletions
13
src/page.c
13
src/page.c
|
@ -456,7 +456,7 @@ static void mi_page_free_list_extend( mi_heap_t* heap, mi_page_t* page, size_t e
|
|||
}
|
||||
// enable the new free list
|
||||
page->capacity += (uint16_t)extend;
|
||||
mi_stat_increase(stats->page_committed, extend * page->block_size);
|
||||
_mi_stat_increase(&stats->page_committed, extend * page->block_size);
|
||||
}
|
||||
|
||||
/* -----------------------------------------------------------
|
||||
|
@ -484,13 +484,8 @@ static void mi_page_extend_free(mi_heap_t* heap, mi_page_t* page, mi_stats_t* st
|
|||
if (page->capacity >= page->reserved) return;
|
||||
|
||||
size_t page_size;
|
||||
_mi_page_start(_mi_page_segment(page), page, &page_size);
|
||||
if (page->is_reset) {
|
||||
page->is_reset = false;
|
||||
mi_stat_decrease( stats->reset, page_size);
|
||||
}
|
||||
|
||||
mi_stat_increase( stats->pages_extended, 1);
|
||||
_mi_page_start(_mi_page_segment(page), page, &page_size);
|
||||
_mi_stat_increase(&stats->pages_extended, 1);
|
||||
|
||||
// calculate the extend count
|
||||
size_t extend = page->reserved - page->capacity;
|
||||
|
@ -595,7 +590,7 @@ static mi_page_t* mi_page_queue_find_free_ex(mi_heap_t* heap, mi_page_queue_t* p
|
|||
page = next;
|
||||
} // for each page
|
||||
|
||||
mi_stat_counter_increase(heap->tld->stats.searches,count);
|
||||
_mi_stat_counter_increase(&heap->tld->stats.searches,count);
|
||||
|
||||
if (page == NULL) {
|
||||
page = rpage;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue