There's a problem using PolyML.profiling 1 on Mac OS X and think this has been discussed before. Time profiling works by setting a timer and then examining the program counter when the timer goes off to determine which function is being executed.

Linux supports per-thread timers and when a timer goes off the thread that is executing receives the signal. Mac OS X has only per-process timers and all signals are sent to the "main" thread, the thread that handles garbage-collection, which means that the profiler cannot work out what function was actually being executed. I've now added an option to "configure", --without-threads, that builds a version of poly that is single-threaded and so allows profiling on Mac OS X. Note that disabling threads also disables signal handling.

David
_______________________________________________
polyml mailing list
polyml@inf.ed.ac.uk
http://lists.inf.ed.ac.uk/mailman/listinfo/polyml

Reply via email to