maven-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jörg Schaible <joerg.schai...@gmx.de>
Subject Re: Maven performance
Date Tue, 27 Apr 2010 21:23:39 GMT
Hi Jason,

Jason van Zyl wrote:

> Jörg,
> 
> If you are going to use the maven-eclipse-plugin as your benchmark I think
> it's going to be very hard to pin point where the bottleneck is. It's a
> little universe unto itself. Could be the shared components, resolution
> code, the plugin itself. I see vast improvements in speed in Maven 3.x. I
> don't think you can use the maven-eclipse-plugin as the basis for
> measuring improvement. For example there is behavior in Maven 3.x that is
> "more correct" which may contribute to some slow down and that we're just
> going to have to live with.

Well, it is an indication. Running a plugin that makes a lot usage of the 
Maven infrastructure does tell more than a build including compilation task 
and packaging time. From 2.0.8 to 2.2.1 there have been also changes to 
ensure "more correct" behaviour, but performance got worse. To be honest, I 
was positively surprised by M3 ;-)

However, Arnaud's remark for Linux is also interesting.

> As one user suggested it may be wise to provide execution timings for the
> core and individual plugins and phases. For example if you found that
> Maven's execution time remained constant over all versions of Maven where
> it was the maven-eclipse-plugin that varied then we know it's an
> interaction problem with the plugin and you can go from there.

Yes, that would be the best approach for a first examination in more detail. 
I'm not close enough to the Maven core, but isn't it possible to exchange 
the Plexus component that executes the mojos with a delegate that measures 
the time for each execution? Is there some kind of Plexus configuration that 
can be used to "injected" such a component from the outside e.g. with the 
m2.conf or with system properties?

> Or use a profiler and find out where the actual problem is and tell us.

A profiler gets interesting if you already can put a finger onto some part 
with such a complex application.

> We've done lots of profiling to get Maven 3.x and M2E running faster. But
> gigantic plugins like m-e-p and the assembler plugin will probably have
> problems entirely their own.

Actually I was really impressed by the memory footprint. Especially since it 
is a necessity e.g. with the Eclipse plugin to generate all Eclipse projects 
at once to get these projects linked.

- Jörg


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Mime
View raw message