Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [aspectj-users] AJDT memory usage

Yes, any solution I put together will work with incremental
compilation.  The structure model changes are much more
straightforward than using typedemotion in a compile time weaving
environment, so I'll get that part of the change out first I think.

Andy

On 14 July 2010 11:29, Emond Papegaaij <emond.papegaaij@xxxxxxxxxx> wrote:
> On Wednesday 14 July 2010 18:19:50 Andy Clement wrote:
>> Yes, that is where I expected memory to be going.
>>
>> > I tried adding -Xset:typeDemotion=true, but that doesn't help (I thought
>> > that option was enabled by default since 1.6.7). I also disabled the
>> > spring-aspect library, reducing the number of aspects to 1, which only
>> > contains declare error statements. The memory usage stayed about the
>> > same.
>>
>> typeDemotion is on by default for loadtime weaving.  Not for compile
>> time weaving (yet).  That is the setting I'll be looking at activating
>> for compile time weaving in addition to the structure model discard
>> code that I'm prototyping in that bug I referenced.
>
> Will that work with incremental compilation? I don't know what the impact will
> be of disabling incremental compilation, but a full rebuild takes several
> minutes.
>
>> > I hope this helps. If you need more information, please let me know.
>>
>> It does, thanks.  I'll let you know when a dev build of AJDT includes
>> something to try out.
>
> Great, I'll give it a try when you say so.
>
> Best regards,
> Emond Papegaaij
>
>>
>> > On Tuesday 13 July 2010 19:14:37 Andy Clement wrote:
>> >> Hi,
>> >>
>> >> I've been exploring some memory shrinking options under
>> >> https://bugs.eclipse.org/bugs/show_bug.cgi?id=278496 for the last few
>> >> releases (specifically reducing memory used under AJDT).  If you are
>> >> able to share heap dumps with me, I'll revisit that work and make some
>> >> appropriate changes.  Would that be possible?  You can email the heap
>> >> dumps to me rather than attaching them to bugzilla.  I would like to
>> >> confirm precisely where the memory is being used to ensure the
>> >> techniques I'm looking at under 278496 will help.
>> >>
>> >> Andy
>> >>
>> >> On 13 July 2010 02:53, Emond Papegaaij <emond.papegaaij@xxxxxxxxxx>
> wrote:
>> >> > Hi,
>> >> >
>> >> > We are thinking about introducing AspectJ into our project, so we
>> >> > started by switching from the Java compiler to the AspectJ Builder to
>> >> > make sure it is at least capable of building the project. It turns
>> >> > out the AspectJ Builder is able to build the project, but its memory
>> >> > usage is way to high to be usable. After a full rebuild, eclipse uses
>> >> > almost 1.2GB, even after a full GC.
>> >> >
>> >> > Inspection of a heap dump shows this memory is all taken by 42 AjState
>> >> > (and referenced) objects (one for each AspectJ project in my
>> >> > workspace). One even takes over 350M. Most of the memory usage seems
>> >> > to be in the AspectJ world.
>> >> >
>> >> > This is on a project with just over 600k lines of Java code, 1 aspect
>> >> > (with a few declare error statements, no advice) and the
>> >> > spring-aspects, mostly for the @Transactional aspect. This project
>> >> > contains 42 modules, all projects in Eclipse. I'm using Eclipse 3.5.2
>> >> > with the latest AJDT development build (2.1.1.e35x-20100712-1300)
>> >> > with AspectJ
>> >> > 1.6.10.20100712130000.
>> >> >
>> >> > Is there any way we can reduce this memory usage? I tried disabling
>> >> > incremental building and disabling the weaving service, but that
>> >> > didn't help.
>> >> >
>> >> > Best regards,
>> >> > Emond Papegaaij
>> >> > _______________________________________________
>> >> > aspectj-users mailing list
>> >> > aspectj-users@xxxxxxxxxxx
>> >> > https://dev.eclipse.org/mailman/listinfo/aspectj-users
>> >>
>> >> _______________________________________________
>> >> aspectj-users mailing list
>> >> aspectj-users@xxxxxxxxxxx
>> >> https://dev.eclipse.org/mailman/listinfo/aspectj-users
>> >
>> > _______________________________________________
>> > aspectj-users mailing list
>> > aspectj-users@xxxxxxxxxxx
>> > https://dev.eclipse.org/mailman/listinfo/aspectj-users
>>
>> _______________________________________________
>> aspectj-users mailing list
>> aspectj-users@xxxxxxxxxxx
>> https://dev.eclipse.org/mailman/listinfo/aspectj-users
> _______________________________________________
> aspectj-users mailing list
> aspectj-users@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/aspectj-users
>


Back to the top