diff options
author | ChiaHungDuan <chiahungduan@google.com> | 2024-03-28 15:28:01 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-28 15:28:01 -0700 |
commit | 6b149f70abc2d0214cc29e7a2aeea428d3719491 (patch) | |
tree | 5dafe439d65fcba347fca490503a6fac375cfa06 | |
parent | 6373577a2c72b0354b6ad6c4d1732f142aaffa80 (diff) |
[scudo] Dump ReleaseToOsIntervalMs (#86887)
This can be adjusted during runtime and it may impact the memory
footprint if it's set to a big value or is disabled.
-rw-r--r-- | compiler-rt/lib/scudo/standalone/primary64.h | 5 | ||||
-rw-r--r-- | compiler-rt/lib/scudo/standalone/secondary.h | 10 |
2 files changed, 9 insertions, 6 deletions
diff --git a/compiler-rt/lib/scudo/standalone/primary64.h b/compiler-rt/lib/scudo/standalone/primary64.h index f5e4ab57b4df..abce4bff321c 100644 --- a/compiler-rt/lib/scudo/standalone/primary64.h +++ b/compiler-rt/lib/scudo/standalone/primary64.h @@ -372,10 +372,11 @@ public: PushedBlocks += Region->FreeListInfo.PushedBlocks; } } + const s32 IntervalMs = atomic_load_relaxed(&ReleaseToOsIntervalMs); Str->append("Stats: SizeClassAllocator64: %zuM mapped (%uM rss) in %zu " - "allocations; remains %zu\n", + "allocations; remains %zu; ReleaseToOsIntervalMs = %d\n", TotalMapped >> 20, 0U, PoppedBlocks, - PoppedBlocks - PushedBlocks); + PoppedBlocks - PushedBlocks, IntervalMs >= 0 ? IntervalMs : -1); for (uptr I = 0; I < NumClasses; I++) { RegionInfo *Region = getRegionInfo(I); diff --git a/compiler-rt/lib/scudo/standalone/secondary.h b/compiler-rt/lib/scudo/standalone/secondary.h index 202c55cc1a92..674af5071775 100644 --- a/compiler-rt/lib/scudo/standalone/secondary.h +++ b/compiler-rt/lib/scudo/standalone/secondary.h @@ -179,10 +179,12 @@ public: uptr Fractional; computePercentage(SuccessfulRetrieves, CallsToRetrieve, &Integral, &Fractional); - Str->append("Stats: MapAllocatorCache: EntriesCount: %d, " - "MaxEntriesCount: %u, MaxEntrySize: %zu\n", - EntriesCount, atomic_load_relaxed(&MaxEntriesCount), - atomic_load_relaxed(&MaxEntrySize)); + const s32 Interval = atomic_load_relaxed(&ReleaseToOsIntervalMs); + Str->append( + "Stats: MapAllocatorCache: EntriesCount: %d, " + "MaxEntriesCount: %u, MaxEntrySize: %zu, ReleaseToOsIntervalMs = %d\n", + EntriesCount, atomic_load_relaxed(&MaxEntriesCount), + atomic_load_relaxed(&MaxEntrySize), Interval >= 0 ? Interval : -1); Str->append("Stats: CacheRetrievalStats: SuccessRate: %u/%u " "(%zu.%02zu%%)\n", SuccessfulRetrieves, CallsToRetrieve, Integral, Fractional); |