Closed Bug 450778 Opened 16 years ago Closed 16 years ago

Need improved memory stats

Categories

(Tamarin Graveyard :: Garbage Collection (mmGC), defect)

defect
Not set
normal

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: treilly, Assigned: treilly)

References

Details

Attachments

(1 file, 3 obsolete files)

We want to optimize the VM's memory usage and ensure going forward we don't introduce changes that increase memory usage (at least without knowing about it). stats: private bytes (entire process wired/resident non-shared memory) gcheap stats (total/used/free) jit bytes managed vs. unmanaged bytes internal fragmentation #s Anything else? this will all be exposed via the -Dmemstats option in the shell
Windows and Linux private bytes calculation to come. Also fragmentation #'s aren't done, need to account for memory wasted inside each allocation (ie where the size asked for is less than the size class).
Sample output from patch: [mem] ------- gross stats ----- [mem] private 375 (1.5M) 100% [mem] mmgc 288 (1.1M) 76% [mem] unmanaged 12 (48K) 3% [mem] managed 125 (500K) 33% [mem] free 149 (596K) 39% [mem] jit 12 (48K) 3% [mem] other 75 (300K) 20% [mem] bytes (interal fragmentation) 94 (378K) 69% [mem] managed bytes (internal fragmentation) 88 (352K) 70% [mem] unmanaged bytes (interal fragmentation) 6 (26K) 54% [mem] -------- gross stats end -----
Status: NEW → ASSIGNED
Will this work in all builds (Release included) or only Debug/Debugger builds? (If the former, what does the "D" in the flag imply?)
The D is just following the convention for shell flags, I always thought it to mean "define" or enable, just occurred to me that it might mean "debug". This feature works in all builds.
Not asking for review yet, will put in windows and linux impl of GetPrivateMemory first
Attachment #333976 - Attachment is obsolete: true
Attachment #336869 - Attachment is obsolete: true
Windows and Mac are implemented, I can't find an api to this on linux, don't want to hold it up any more. Linux will just report 0 for private bytes until I figure it out.
Attachment #336888 - Attachment is obsolete: true
Attachment #336897 - Flags: review?(stejohns)
Attachment #336897 - Flags: review?(stejohns) → review+
recording some enhancement ideas: 1) show # of objects sweep in sweep messages 2) show # of total objects and calculate average object size for managed and unmanaged memory.
triaging linux is still open issue I believe. works on mac/win.
Flags: flashplayer-triage+
Flags: flashplayer-qrb?
Depends on: 480141
this has been done for while
Status: ASSIGNED → RESOLVED
Closed: 16 years ago
Resolution: --- → FIXED
Status: RESOLVED → VERIFIED
removing QRB request, bug verified
Flags: flashplayer-qrb?
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: