Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [aspectj-users] AspectJ 1.6.7 - faster than ever.

Great work Andy!!!!!!!!

Simone

Andy Clement wrote:
I've been a bit quiet on the list lately, I've had my head down in
AspectJ adding some timing infrastructure.  I've just put up a first
blog article about what you can find in the latest AspectJ.  Basically
the latest dev builds will produce profiling information for your
pointcuts allowing you to see which pointcuts are hurting your compile
times.  Information like this:

Pointcut matching cost (total=6532ms for 675000 joinpoint match calls):
Time:482ms (jps:#168585) matching against
    (staticinitialization(*y*.()) && persingleton(SimpleAspect))
Time:3970ms (jps:#168585) matching against
    (execution(* *t*.*(*)) && persingleton(SimpleAspect))
Time:538ms (jps:#168584) matching against
    (execution(* *f*(..)) && persingleton(SimpleAspect))
Time:1536ms (jps:#168584) matching against
    (execution(* java.lang.CharSequence+.*e*(..)) && persingleton(SimpleAspect))
Time:4ms (jps:#662) matching against
    (within(*p*) && persingleton(SimpleAspect))

Post is here:
http://andrewclement.blogspot.com/2009/11/aspectj-profiling-pointcut-matching.html

Please have a read and try it out.  Based on the results of it I've
changed a few key algorithms internal to AspectJ.  What difference
does it make? Well just to wet your appetite:

Aspect:
aspect SimpleAspect {
  before(): execution(* CharSequence+.*e*(..)) {}
}

AspectJ1.6.6:
ajc -timers SimpleAspect.aj -inpath rt.jar -outjar woven.jar
Compiler took 19260ms

AspectJ1.6.7 dev builds:
ajc -timers SimpleAspect.aj -inpath rt.jar -outjar woven.jar
Compiler took 12531ms

I'll put out a second article about matching improvements shortly.  It
will cover what is faster (and why it is faster) and how you can make
sure you benefit from the speed up.

cheers,
Andy
_______________________________________________
aspectj-users mailing list
aspectj-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/aspectj-users


--
Simone Gianni            CEO Semeru s.r.l.           Apache Committer
http://www.simonegianni.it/



Back to the top