Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [aspectj-users] AspectJ Performance

Erik Hilsdale and I recently wrote a paper on "Advice Weaving in AspectJ".
This paper contains a section that explores runtime performance overhead.
The primary conclusion of that work is that the overhead from using AspectJ
is very small.  If you want more details, see the paper at
http://hugunin.net/papers.html.

I think the most interesting paragraph in the performance section is this
one (which I think echoes Robert Wenner's Knuth quote nicely):

"We also found that we could easily modify the AspectJ code to experiment
with different logging designs.  This led to a design which incorporates an
additional static boolean field.  Implementing this change in AspectJ
required changing 2 lines of code vs. 7700 that would be required to change
in the hand-coded implementation.  This slightly altered logging policy has
76% less overhead than the hand-coded implementation.  This ability to
quickly experiment with different designs means that systems built with
AspectJ can often have better performance in practice than their less
flexible hand-coded counterparts."

-Jim

-----Original Message-----
From: aspectj-users-admin@xxxxxxxxxxx
[mailto:aspectj-users-admin@xxxxxxxxxxx] On Behalf Of Robert Wenner
Sent: Tuesday, December 09, 2003 1:02 AM
To: aspectj-users@xxxxxxxxxxx
Subject: Re: [aspectj-users] AspectJ Performance

On Tuesday 09 December 2003 03:29, Abel Perez wrote:
> I'm fairly new to the AOP world and was wondering if there is a
> performance loss when using AspectJ as opposed to regular Java?  If so
> any information will be appreciated, thanks.

"Premature optimization is the root of all evil." -- Donald Knuth
SCNR,

Robert




Back to the top