Hello all, Now that 1.6.0 is out there and the hard work of moving to be based on the Eclipse 1.6 compiler is done, we are looking at working on performance and memory usage through a series of quite substantial refactorings in the codebase. I'm trying to track the work under:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=231396 Today I've committed the first serious change and this will benefit users of iajc that are weaving into jar files or anyone binary weaving into jars on the command line. The change will be in todays dev build. For my own benchmark on this I wrote an aspect to weave before/after advice into every public method and also before advice on a number on the staticinitialization join point in a number of classes. I then applied this aspect to the JDK rt.jar (as an example of a large jar file). This advised 121,431 join points. I timed the application of this aspect to rt.jar over a number of runs and averaged it: 1.6.0 takes ~ 58,000ms to do the weave 1.6.1 dev builds take ~ 31,500ms to do the weave Now there are a few factors affecting these numbers - rt.jar is a particularly large jar containing 13000 classes and this change I've made really shines as the jar gets larger and larger. So you may not see a similarly huge performance boost for small jars, but hopefully you will see some kind of benefit. Any feedback appreciated on that bugzilla entry I linked above. cheers, Andy. _______________________________________________ aspectj-users mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/aspectj-users
