diff --git a/ide/vs2022/mimalloc-override-dll.vcxproj b/ide/vs2022/mimalloc-override-dll.vcxproj index 133b3efa..8af43a88 100644 --- a/ide/vs2022/mimalloc-override-dll.vcxproj +++ b/ide/vs2022/mimalloc-override-dll.vcxproj @@ -427,6 +427,7 @@ + diff --git a/ide/vs2022/mimalloc-override-dll.vcxproj.filters b/ide/vs2022/mimalloc-override-dll.vcxproj.filters index 00d677d3..a63eef84 100644 --- a/ide/vs2022/mimalloc-override-dll.vcxproj.filters +++ b/ide/vs2022/mimalloc-override-dll.vcxproj.filters @@ -96,6 +96,9 @@ Headers + + Headers + diff --git a/include/mimalloc-stats.h b/include/mimalloc-stats.h index 7c1ed770..c952af7e 100644 --- a/include/mimalloc-stats.h +++ b/include/mimalloc-stats.h @@ -49,6 +49,7 @@ typedef struct mi_stat_counter_s { \ /* internal statistics */ \ MI_STAT_COUNTER(arena_rollback_count) \ + MI_STAT_COUNTER(arena_purges) \ MI_STAT_COUNTER(pages_extended) /* number of page extensions */ \ MI_STAT_COUNTER(pages_retire) /* number of pages that are retired */ \ MI_STAT_COUNTER(page_searches) /* searches for a fresh page */ \ diff --git a/src/arena.c b/src/arena.c index d88aeaa3..c2689897 100644 --- a/src/arena.c +++ b/src/arena.c @@ -550,7 +550,8 @@ static bool mi_arena_try_purge(mi_arena_t* arena, mi_msecs_t now, bool force) // reset expire (if not already set concurrently) mi_atomic_casi64_strong_acq_rel(&arena->purge_expire, &expire, (mi_msecs_t)0); - + _mi_stat_counter_increase(&_mi_stats_main.arena_purges, 1); + // potential purges scheduled, walk through the bitmap bool any_purged = false; bool full_purge = true; diff --git a/src/init.c b/src/init.c index f4fc6798..a759ac21 100644 --- a/src/init.c +++ b/src/init.c @@ -76,9 +76,9 @@ const mi_page_t _mi_page_empty = { { 0 }, { 0 }, { 0 }, { 0 }, \ { 0 }, { 0 }, { 0 }, { 0 }, \ \ - { 0 }, { 0 }, { 0 }, { 0 }, \ - MI_STAT_COUNT_NULL(), MI_STAT_COUNT_NULL(), MI_STAT_COUNT_NULL(), MI_STAT_COUNT_NULL(), \ - { 0 }, { 0 }, { 0 }, { 0 }, \ + { 0 }, { 0 }, { 0 }, { 0 }, { 0 }, \ + MI_INIT4(MI_STAT_COUNT_NULL), \ + { 0 }, { 0 }, { 0 }, { 0 }, \ \ { MI_INIT4(MI_STAT_COUNT_NULL) }, \ { { 0 }, { 0 }, { 0 }, { 0 } }, \