Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[ajdt-dev] Re: Slow Build and Clean Times ... Where To Start?

Hi Scott,

Bug 70000 relates to runtime classpath resolution with a very high number
of dependencies between projects. In the 1.1.x line, AJDT uses this
runtime classpath resolution at build time, hence the effects of the
problem are potentially very bad, because the resolution is hit many times
during the build process. However, we put in a wrapper around the JDT
runtime classpath resolver, with a cache to avoid this bottleneck. In the
1.2.0 line, we implemented a build time classpath resolver, largely copied
from JDT, which doesn't have the same performance characteristics.

So to know for sure whether this is relevant, we need to know which
version of AJDT you are using, and more details of your setup - do you
have a small number of large projects, or a large number of small ones
with a complicated dependency tree?

The main issue here is probably memory - a JVM which is low on memory will
have to spend lots of time on GC (plus of course the OS might be using
more swap). The memory requirements of AspectJ are typically greater than
javac, and the memory requirements of AJDT are typically greater than
JDT because the AJ versions do more (we are working on reducing the
gap, but this is necessarily something of a long term effort). So one line
of investigation would be to time the clean/build cycle with different
heap sizes, if you have the physical ram to do that - you must be using a
sizeable heap already.

Are you building inside Eclipse? If so you could try not building the
structure model (under AspectJ preferences). You could also compare with
an external build, using something like Ant + ajc, if you are setup to do
that.

Regards,

Matt.

On Tue, 30 Nov 2004 12:29:01 -0600, Scott Delap wrote:
> I just started working on a very large project built on Eclipse 2.1 with 
> about 500 megs of source.  We are using Eclipse 3.0 as our IDE.  The 
> existing developers claim that before AspectJ our build/clean took 10/20 
> minutes.  Now it takes an hour and a half to two hours.  One of them 
> pointed me in the direction of:
> 
> Bug #70000 related to org.eclipse.jdt.launching plug-in
> 
> I'd like to start figuring out where the slowdown is.  I've looked on 
> the Eclipse site but don't see any good starting points to the JDT or 
> the AJDT.  Could someone please point me in thd direction of some 
> resources to start profiling the slowdown of the build clean cycle and 
> where to fix it at.
> 
> Scott



Back to the top