Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [aspectj-users] Performance of marker recreation

Hi Thomas,

Please see https://bugs.eclipse.org/bugs/show_bug.cgi?id=289778

Some other people have described that marker generation is taking a
long time.  One reason for this is when you have a binary aspect being
applied to many source files, for each target of the aspect, the
aspect file was being opened and its bit stream was being walked.

I implemented a very simple caching which seems to work in the cases I
tried out.

Could you update to the latest dev build (which is likely to become
the 2.0.1 release) and see if marker generation goes more quickly for
you?

However, I also noticed that marker deletion is taking a while for
you.  So, if you are still experiencing unnecessary slowness, I can
take a deeper look at things.

--a

On Fri, Oct 2, 2009 at 6:02 AM, Thomas Hofmann <email@xxxxxxxxxxxxxxxxx> wrote:
> Hi Andrew,
>
>
>
> I believe you are the one you can answer this question.
>
>
>
> I am having a problem with the time it takes to delete and create the AJDT
> specific markers. I know that it runs asynchronous but it locks parts of the
> workspace so that other jobs may need to wait for the marker creation to
> finish before being able to run. This happens for example when I save a
> modified file or the incremental compilation kicks in.
>
>
>
> I would like to share the times it takes in my workspace. Maybe you can
> comment on the times. I find them to be very high and it really is a problem
> working like this.
>
>
>
> Here’s the output from the AJDT Trace view:
>
>
>
> 14:35:58 AspectJ reports build successful, build was: FULL
>
> 14:35:58 AJDE Callback: finish. Was full build: true
>
> 14:35:58 Timer event: 3384ms: Total time spent in AJDE
>
> 14:35:58 Timer event: 0ms: Refresh after build
>
> 14:35:58 Types affected during build = 25
>
> 14:35:58 Crosscutting model sanity checked with no problems
>
> 14:35:58 Timer event: 123ms: Model sanity check for:
> com.dcx.ivkmds._45_export_import.test.ass
>
> 14:35:58 Timer event: 7756ms: Total time spent in AJBuilder.build()
>
> 14:36:0 Timer event: 102ms: Update visualizer, xref, advice listeners for
> (separate thread): com.dcx.ivkmds._45_export_import.test.ass
>
> 14:36:5 Timer event: 2292ms: Delete markers:
> com.dcx.ivkmds.application.test.common (Finished deleting markers for
> com.dcx.ivkmds.application.test.common)
>
> 14:36:5 Timer event: 0ms: Create markers:
> com.dcx.ivkmds.application.test.common (Finished creating markers for
> com.dcx.ivkmds.application.test.common)
>
> 14:36:5 Timer event: 2301ms: Delete markers:
> com.dcx.ivkmds._50_reports.test.ass (Finished deleting markers for
> com.dcx.ivkmds._50_reports.test.ass)
>
> 14:36:5 Created 0 markers in 1 files
>
> 14:36:5 Timer event: 2284ms: Delete markers:
> com.dcx.ivkmds.application.test.rcs.standalone (Finished deleting markers
> for com.dcx.ivkmds.application.test.rcs.standalone)
>
> 14:36:5 Timer event: 1ms: Create markers:
> com.dcx.ivkmds.application.test.rcs.standalone (Finished creating markers
> for com.dcx.ivkmds.application.test.rcs.standalone)
>
> 14:36:5 Created 0 markers in 1 files
>
> 14:36:6 Timer event: 3284ms: Delete markers: com.dcx.ivkmds.fwk.test.common
> (Finished deleting markers for com.dcx.ivkmds.fwk.test.common)
>
> 14:36:6 Timer event: 0ms: Create markers: com.dcx.ivkmds.fwk.test.common
> (Finished creating markers for com.dcx.ivkmds.fwk.test.common)
>
> 14:36:6 Created 0 markers in 2 files
>
> 14:36:6 Timer event: 3236ms: Delete markers:
> com.dcx.ivkmds._55_archive.test.ass (Finished deleting markers for
> com.dcx.ivkmds._55_archive.test.ass)
>
> 14:36:8 Timer event: 5564ms: Delete markers: com.dcx.ivkmds.fwk.test.rcs
> (Finished deleting markers for com.dcx.ivkmds.fwk.test.rcs)
>
> 14:36:10 Timer event: 4998ms: Create markers:
> com.dcx.ivkmds._50_reports.test.ass (Finished creating markers for
> com.dcx.ivkmds._50_reports.test.ass)
>
> 14:36:10 Created 4 markers in 1 files
>
> 14:36:17 Timer event: 14286ms: Delete markers:
> com.dcx.ivkmds.application.rcs.standalone (Finished deleting markers for
> com.dcx.ivkmds.application.rcs.standalone)
>
> 14:36:22 Timer event: 4775ms: Create markers:
> com.dcx.ivkmds.application.rcs.standalone (Finished creating markers for
> com.dcx.ivkmds.application.rcs.standalone)
>
> 14:36:22 Created 2 markers in 9 files
>
> 14:36:24 Timer event: 21546ms: Delete markers:
> com.dcx.ivkmds.csolver.test.cts (Finished deleting markers for
> com.dcx.ivkmds.csolver.test.cts)
>
> 14:36:31 Timer event: 25289ms: Create markers:
> com.dcx.ivkmds._55_archive.test.ass (Finished creating markers for
> com.dcx.ivkmds._55_archive.test.ass)
>
> 14:36:31 Created 12 markers in 2 files
>
> 14:36:46 Timer event: 43535ms: Delete markers: com.dcx.ivkmds.fwk.test.ass
> (Finished deleting markers for com.dcx.ivkmds.fwk.test.ass)
>
> 14:36:48 Timer event: 46019ms: Delete markers:
> com.dcx.ivkmds._45_export_import.test.ass (Finished deleting markers for
> com.dcx.ivkmds._45_export_import.test.ass)
>
> 14:37:6 Timer event: 63358ms: Delete markers:
> com.dcx.ivkmds.csolver.test.ass (Finished deleting markers for
> com.dcx.ivkmds.csolver.test.ass)
>
> 14:37:46 Timer event: 82448ms: Create markers:
> com.dcx.ivkmds.csolver.test.cts (Finished creating markers for
> com.dcx.ivkmds.csolver.test.cts)
>
> 14:37:46 Created 30 markers in 12 files
>
> 14:37:52 Timer event: 109017ms: Delete markers: com.dcx.ivkmds.testfwk
> (Finished deleting markers for com.dcx.ivkmds.testfwk)
>
> 14:38:5 Timer event: 117351ms: Create markers: com.dcx.ivkmds.fwk.test.rcs
> (Finished creating markers for com.dcx.ivkmds.fwk.test.rcs)
>
> 14:38:5 Created 44 markers in 4 files
>
> 14:39:22 Timer event: 153566ms: Create markers:
> com.dcx.ivkmds._45_export_import.test.ass (Finished creating markers for
> com.dcx.ivkmds._45_export_import.test.ass)
>
> 14:39:22 Created 53 markers in 25 files
>
> 14:39:26 Timer event: 203348ms: Delete markers: com.dcx.ivkmds.csolver.ass
> (Finished deleting markers for com.dcx.ivkmds.csolver.ass)
>
> 14:42:2 Timer event: 249950ms: Create markers: com.dcx.ivkmds.testfwk
> (Finished creating markers for com.dcx.ivkmds.testfwk)
>
> 14:42:2 Created 93 markers in 45 files
>
> 14:42:14 Timer event: 371377ms: Delete markers:
> com.dcx.ivkmds.application.test.ass (Finished deleting markers for
> com.dcx.ivkmds.application.test.ass)
>
> 14:43:45 Timer event: 259496ms: Create markers: com.dcx.ivkmds.csolver.ass
> (Finished creating markers for com.dcx.ivkmds.csolver.ass)
>
> 14:43:45 Created 98 markers in 83 files
>
> 14:44:40 Timer event: 454271ms: Create markers:
> com.dcx.ivkmds.csolver.test.ass (Finished creating markers for
> com.dcx.ivkmds.csolver.test.ass)
>
> 14:44:40 Created 174 markers in 31 files
>
> 14:48:19 Timer event: 736777ms: Delete markers:
> com.dcx.ivkmds._45_export_import.ass (Finished deleting markers for
> com.dcx.ivkmds._45_export_import.ass)
>
> 14:48:31 Timer event: 12038ms: Create markers:
> com.dcx.ivkmds._45_export_import.ass (Finished creating markers for
> com.dcx.ivkmds._45_export_import.ass)
>
> 14:48:31 Created 6 markers in 425 files
>
> 14:53:33 Timer event: 1006732ms: Create markers: com.dcx.ivkmds.fwk.test.ass
> (Finished creating markers for com.dcx.ivkmds.fwk.test.ass)
>
> 14:53:33 Created 572 markers in 24 files
>
> 14:57:32 Timer event: 918334ms: Create markers:
> com.dcx.ivkmds.application.test.ass (Finished creating markers for
> com.dcx.ivkmds.application.test.ass)
>
> 14:57:32 Created 818 markers in 152 files
>
> 14:57:45
> ===========================================================================================
>
>
>
> I am using Eclipse 3.5 and AJDT:
>
>
>
> Version: 2.0.1.e35x-20090727-2200
>
> AspectJ version: 1.6.5.20090618034232
>
>
>
>
>
> _______________________________________________
> aspectj-users mailing list
> aspectj-users@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/aspectj-users
>
>


Back to the top