Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [aspectj-users] ajc performance

Wes,

My guess is that part of the performance problem is at least in part related
to the Eclipse compiler.  I have see on our project (1500+ classes) that it
takes around 10 minutes just for the compile step.

Thanks,

Ron DiFrango


-----Original Message-----
From: Wes Isberg [mailto:wes@xxxxxxxxxxxxxx] 
Sent: Friday, September 05, 2003 6:05 PM
To: aspectj-users@xxxxxxxxxxx
Subject: Re: [aspectj-users] ajc performance


When compiling the 357 java files that make up the
AspectJ tools and rt jars, ajc seems to be 2-3X
slower than javac-jikes.  Because it loads more
slowly, the effect would be more pronounced for
small projects.

Time (seconds) to compile from command-line
on a 233Mhz(!) NT(!) (view with fixed-with font):

              one file all files net   relative
jikes 1.1.8  <1       19        19    1
javac 1.4     6       37        31    1.6   1
javac 1.3     3       39        36    1.9   1.2
ajc 1.1.0    11       67        56    2.9   1.8
ajc 1.1.1    11       67        56    2.9   1.8

(Rerunning produced numbers off by as much as 10%,
but these are about average.)

I'd like to see what the eclipse compiler does
when used from the command line (links?).

Also, someone should try this on projects with
2000+ files.  Any favorite open-source projects?
Someone should also try checking large projects
to see if compiling first with jikes and weaving
with ajc could result in a faster process.

An interesting comparison would be between ajc
compiling code that uses AspectJ to implement
crosscutting concerns, and javac/jikes compiling
Java code implementing the same concerns, but
again, we don't have that test suite.

It would also be interesting to compare jikes
in incremental mode with ajc.  (Or to compare ajc
using AspectJ to change a crosscutting concern with
eclipse and refactoring?) or...

 > Is there any on-going work to speed up ajc?

Yes, but the priority is below language bugs
and some other things.

If/since we have incremental compilation, do you
think that we need to match Javac's batch compilation
speed before teams will adopt AspectJ?

Wes

DiFrango, Ron wrote:

> Mark,
>  
> I would say no!  In my experience, ajc does take longer than javac.  
> In our system it takes around at least 3 to 5 times as longer to 
> compile the entire project with ajc.  In order to mitigate this time, 
> we use the listing file mechanism so that ajc only processors those 
> files that are affect by our aspects.
>  
> And before any one says this is bad we are talking a 2 to 3 minute 
> build using this two-phase approach versus a 10 to 15 minute build 
> time with ajc. This is significant over the course of a day when you 
> are doing heavy development work.
>  
> I have not used jikes so I am uncertain of its performance relative to 
> javac.
> 
> Thanks,
> 
> Ron DiFrango
> 
> -----Original Message-----
> From: Volkmann, Mark [mailto:Mark.Volkmann@xxxxxxxxxxxxx]
> Sent: Friday, September 05, 2003 8:46 AM
> To: aspectj-users@xxxxxxxxxxx
> Subject: [aspectj-users] ajc performance
> 
> 
> 
> Is this statement pretty accurate?
> 
> "Compiling with ajc takes approximately the same amount of time as 
> compiling with javac which takes about five times as long as jikes."
> 
> Is there any on-going work to speed up ajc?
> 
> 
> 
> ----------------------------------------------------------------------
> ------
> --------------
> A.G. Edwards & Sons' outgoing and incoming e-mails are electronically
> archived and subject to review and/or disclosure to someone other 
> than the recipient.
> 
> ----------------------------------------------------------------------
> ------
> --------------
> 
> 
>  
> **********************************************************************
> ****
> The information transmitted herewith is sensitive information intended
only
> for use by the individual or entity to which it is addressed. If the
reader
> of this message is not the intended recipient, you are hereby notified
that
> any review, retransmission, dissemination, distribution, copying or other
> use of, or taking of any action in reliance upon this information is
> strictly prohibited. If you have received this communication in error,
> please contact the sender and delete the material from your computer.
> 

_______________________________________________
aspectj-users mailing list
aspectj-users@xxxxxxxxxxx
http://dev.eclipse.org/mailman/listinfo/aspectj-users
 
**************************************************************************
The information transmitted herewith is sensitive information intended only
for use by the individual or entity to which it is addressed. If the reader
of this message is not the intended recipient, you are hereby notified that
any review, retransmission, dissemination, distribution, copying or other
use of, or taking of any action in reliance upon this information is
strictly prohibited. If you have received this communication in error,
please contact the sender and delete the material from your computer.


Back to the top