The speed of exception handling !?!
Christoph Kulla
Christoph.Kulla at tu-clausthal.de
Mon Apr 6 07:05:45 PDT 1998
Tim Wilkinson <tim at transvirtual.com> writes:
> I suppose I always considered exceptions to be, well the exception - so
> the speed didn't really matter. But now someone's demonstrated how
> awful it actually is I thought I'd take a look.
In some applications exceptions are very usefull to control the control flow
of the proram. In some of my programms a thousand exceptions are generated
per minute (writing a pattern matcher - developing an interpreter for a
rule based language). Kaffe slows things down. In my oppinion many people
dont´t use exceptions because they think that exceptions should be only the
exception. But it´s a rich feature of modern languages, which makes life
easier.
> Seems to me that the thing to do is not so much fixup findMethodFromPC
> (though this would undoubtable help) but to avoid calling it in the
> first place. At the moment an exception constructs an array of
> character strings to hold the backtrace (rather like how Sun's JVM does
> it I believe). This is basically stupid - instead you should build an
> array of Method/PC pairs (or for the JIT just PC's) and only construct
> the textual backtrace on demand.
:-)
> I've now implemented this and will upload it to CVS in the next few
> days. I haven't done any timings yet but it should essentially
> eliminate the need to call findMethodFromPC except when you actually
> want to print the backtrace info. Any thrown and caught exceptions will
> never need to call it.
I do the timings :-).
Is this what you call the final version 10.0 ? Is there a public CVS account ?
More information about the kaffe
mailing list