Hello, the new logging profiler is now usable on Linux, and I'd like some feedback and bug reports.
It is described here: http://www.mono-project.com/LoggingProfiler and in the mono.1 man page in svn. Open issues (for now): - The default name of the output file should contain the application name, and not just be "profiler-log.prof". - The allocation profiler still attributes object creations to wrappers instead of the caller method. - I should check why the decoder is not properly installed and also change its name to something more usable. - The statistical profiler tries to get the names of unmanaged functions using dladdr, but if this fails, it has an "oprofile like" behavior: it saves the IP value and at *decoding* time examines the elf files (using nm) looking for the symbol name. This is a bit sophisticated (it looks at all the memory regions of the process using /proc/self/maps at run time so that the correct file is examined at decoding time), and works fairly well (better than dladdr). However, this is fragile: if the decoding time happens when some of the relevant elf files has changed, the info is lost and the data in the log file is useless (and there is no warning of this). I am moving code from the decoder to the profiler, so that the symbols are all looked up at runtime, but this code is not ready yet. - The heap analysis features technically work, but are not yet exposed to the user by the decoder program. That's it... have fun :-) Ciao, Massi _______________________________________________ Mono-list maillist - Mono-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-list