[Mono-list] The state of heap-shot profiling in mono
Dan Liew
dan at su-root.co.uk
Wed May 6 22:12:02 UTC 2015
Hi,
I'd like to know what the current state of heap-shot profiling is in
mono (3.12.1). I've been trying to use the heap-shot-gui tool [1] and
it seems pretty broken. Here's what I've tried
## Instructions in heap-shot's README [2]
These tell me to use
$ mono --profile=heap-shot MyProgram.exe
This doesn't work mono reports
```
The 'heap-shot' profiler wasn't found in the main executable nor could
it be loaded from 'mono-profiler-heap-shot'.
```
Taking a look via strace. It seems mono tries to load
``/usr/lib/libmono-profiler-heap-shot.so`` which doesn't exist so I'm
guessing this doesn't work any more?
## Instructions on Mono's website [3]
These instructions tell me to use
$ mono --gc=sgen --profile=log:heapshot MyProgram.exe
This actually does generate a file (output.mlpd) but the heap-shot gui
cannot open it. It throws an exception.
```
System.Exception: Unknown sample event type: 48
at MonoDevelop.Profiler.SampleEvent.Read
(HeapShot.Reader.LogFileReader reader, Byte exinfo) [0x00000] in
<filename unknown>:0
at MonoDevelop.Profiler.Event.CreateEvent
(HeapShot.Reader.LogFileReader reader, EventType type, Byte
extendedInfo) [0x00000] in <filename unknown>:0
at MonoDevelop.Profiler.Event.Read (HeapShot.Reader.LogFileReader
reader) [0x00000] in <filename unknown>:0
at HeapShot.Reader.ObjectMapReader.ReadLogFile (IProgressListener
progress) [0x00000] in <filename unknown>:0
at HeapShot.Reader.ObjectMapReader.Read (IProgressListener progress)
[0x00000] in <filename unknown>:0
ObjectMapFileReader.Read (): Completed in 0.016 s
```
I saw there was a pull request [3] that tries to adapt heap-shot to
the binary format outputted by 3.10.2, this seemed to work for 3.12.2
which I'm using. This seemed to fix my issue.
Is there a reason this pull request has been completely ignored?
Thanks,
Dan.
[1] https://github.com/mono/heap-shot
[2] https://github.com/mono/heap-shot/blob/master/README
[3] http://www.mono-project.com/docs/debug+profile/profile/heapshot/
[4] https://github.com/mono/heap-shot/pull/3
More information about the Mono-list
mailing list