English version
Accueil     À propos     Téléchargement     Ressources     Contactez-nous    

Ce site est rarement mis à jour. Pour les informations les plus récentes, rendez-vous sur le nouveau site OCaml à l'adresse ocaml.org.

Browse thread
[Caml-list] native mode backtrace patch for 3.06
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2003-09-28 (18:36)
From: Chris Hecker <checker@d...>
Subject: Re: [Caml-list] native mode backtrace patch for 3.06

At 07:52 9/28/2003 -0400, Yaron Minsky wrote:
>Does the patch have any performance implications?

The instrumentation code it adds (to every function, even small ones, although that could be changed relatively easily by adding some kind of function-length metric, maybe what the inliner uses) will take some time, but in the brief test I did it didn't make much difference in my game, which was a pleasant surprise (even when it was added to tiny things like a 2D vector addition that's used everywhere).  Maybe inlining happens before cmmgen or something, I don't know.

>Another thought: it
>might be nice to get it to dump the failure into something analogous to a
>core dump file, so that it wouldn't confuse an ordinary user, but it would
>save the backtrace which could be recovered for debugging purposes.

That would be easy, since the printout is in C and just fprintfs to stderr.  I should also add a caml interface to it in Sys or something, that just returns the data, so you can put a try ... with _ -> Sys.get_debug_native_backtrace () around your whole program (or in an atexit) and do whatever you want with it.

>Anyway, please do send me the patch.  Though I hope eventually this patch
>or one like it ends up in the standard distribution.

A couple others have asked for it, so I'll clean it up and post it on my website.  I'll send mail to the list when I do that.

At 03:04 9/28/2003 +0400, malc wrote:
>Cross platform support for this was done, nearly one year ago..
>(Link is dead, but im not)

Ah, I probably should have searched, but it sounds like yours is not available anymore, and it's also part of something bigger?  Did you instrument in cmmgen.ml as well, or do it differently?


To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners