[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [aspectj-users] New AspectJ compiler is very slow under AJDT

Hi Andy

I don't have a memory monitor installed. Can you recommend one for Eclipse 3.1.2?
I hadn't tried the event trace before, but here're the stats from inserting a space into a Dao in the CoreModel and saving the file (the CoreRuntime and Portal projects are dependent on the CoreModel).

12:01:22     Successfully unregistered Java Build Path property pages
12:01:22     AJDTContentProvider.selectionChanged(): Marking visualiser content as out of date
12:01:26     ===========================================================================================
12:01:26     Build kind = AUTOBUILD
12:01:26     Project=CoreModel         kind of build requested =Incremental AspectJ compilation
12:01:26     build: Examined delta - source file changes in required project CoreModel
12:01:26     Timer event: 422ms: Time to first compiled message
12:01:26     Timer event: 422ms: Time to first woven message
12:01:27     AspectJ reports build successful, build was: INCREMENTAL
12:01:27     Timer event: 1532ms: Total time spent in AJDE
12:01:28     Timer event: 188ms: Create element map (503 rels in project: CoreModel)
12:01:28     Types affected during build = 1
12:01:28     Timer event: 15ms: Add markers (165 markers)
12:01:28     Timer event: 1812ms: Total time spent in AJBuilder.build()
12:01:28     ===========================================================================================
12:01:28     Build kind = AUTOBUILD
12:01:28     Project=CoreRuntime         kind of build requested =Incremental AspectJ compilation
12:01:28     Timer event: 640ms: Time to first compiled message
12:01:28     Timer event: 687ms: Time to first woven message
12:01:29     AspectJ reports build successful, build was: FULL
12:01:30     Timer event: 1984ms: Total time spent in AJDE
12:01:30     Timer event: 0ms: Create element map (1 rels in project: CoreRuntime)
12:01:30     Types affected during build = 10
12:01:30     Timer event: 0ms: Add markers (1 markers)
12:01:30     Timer event: 2015ms: Total time spent in AJBuilder.build()
12:01:30     ===========================================================================================
12:01:30     Build kind = AUTOBUILD
12:01:30     Project=Portal         kind of build requested =Incremental AspectJ compilation
12:01:31     Timer event: 1110ms: Time to first compiled message
12:01:31     Timer event: 1500ms: Time to first woven message
12:01:32     AspectJ reports build successful, build was: FULL
12:01:32     Timer event: 2891ms: Total time spent in AJDE
12:01:32     Timer event: 31ms: Create element map (40 rels in project: Portal)
12:01:32     Types affected during build = 54
12:01:32     Timer event: 0ms: Add markers (10 markers)
12:01:32     Timer event: 2938ms: Total time spent in AJBuilder.build()

/Jeppe

Andy Clement wrote:
thanks for all the stats!

Are you using the AJDT event trace view to determine it is slower? (it records compile timings for projects) - or it just feels much worse?  I am aware of a small slowdown in that build you mention but that should be gone very soon when I can get the next AJ build into AJDT - that will hopefully happen in the next day or so depending on how my AOSD conference preparation goes today ...  these are dev builds and things have radically changed recently in the code base (using the asm toolkit for processing some types now, optimizing the structure model to death, reducing bytecode info stored between compiles), so there are bound to be a couple of builds where things are still settling down.

Do you have the memory monitor setup in your Eclipse 3.1.2?  I'd be interested in changes you see in memory usage with the next few builds ...

if you want to keep up to date on performance/memory work for 1.5.1 , add yourself to
  https://bugs.eclipse.org/bugs/show_bug.cgi?id=128650

Andy.

On 16/03/06, Jeppe Cramon <jeppe@xxxxxxxxx> wrote:
Hi Andy

I'm using version 1.3.1.20060313062224 which seems to use AspectJ version 1.5.0.20060313062224
In my workspace I have the following projects with AspectJ support enabled:
- 1 web project
- 4 Java projects
All in all we probably have roughly around 300 classes that are exposed to weaving.

I have 5 aspects which all in all crosscut 52 classes.
The pointcuts are matching about 100 places.
50 out of the 100 are actually advised by Springs AbstractTransactionAspect which means that they really result in 4 advises coming into effect (before, after, after throwing, after returning advises)

/Jeppe

Andy Clement wrote:
Interesting ...

Can you tell me exactly the date of the build you are using?

Can you tell me the rough size of the project you are building and how much crosscutting you are doing? Are your pointcuts matching 10s of places or 1000s of places?

We have been specifically testing on the recent builds for performance and memory usage - memory is getting much better and should be at no cost to performance. (not all changes are in AJDT yet)

Andy.

On 15/03/06, Jeppe Cramon <jeppe@xxxxxxxxx> wrote:
Hi

I updated to the latest AJDT 1.3.1.x build a couple of days ago and then
tried again this morning (using Eclipse 3.1.2).
Before the weaving part of AJDT was fairly fast, but has now become sooo
slooow, that I'm thinking about removing AspectJ compile time weaving
and only use load time weaving.

Has anyone else experienced the same decrease in speed?

Thanks in advance

/Jeppe Cramon
_______________________________________________
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