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.papega...@topicus.nl> 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.papega...@topicus.nl> > 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@eclipse.org >> >> > https://dev.eclipse.org/mailman/listinfo/aspectj-users >> >> >> >> _______________________________________________ >> >> aspectj-users mailing list >> >> aspectj-users@eclipse.org >> >> https://dev.eclipse.org/mailman/listinfo/aspectj-users >> > >> > _______________________________________________ >> > aspectj-users mailing list >> > aspectj-users@eclipse.org >> > https://dev.eclipse.org/mailman/listinfo/aspectj-users >> >> _______________________________________________ >> aspectj-users mailing list >> aspectj-users@eclipse.org >> https://dev.eclipse.org/mailman/listinfo/aspectj-users > _______________________________________________ > aspectj-users mailing list > aspectj-users@eclipse.org > https://dev.eclipse.org/mailman/listinfo/aspectj-users > _______________________________________________ aspectj-users mailing list aspectj-users@eclipse.org https://dev.eclipse.org/mailman/listinfo/aspectj-users