Antoine Levy-Lambert wrote:

Hi Jose,

what you are saying is that <antcall/> is slower in ant1.6 than in ant1.5,
and that you can fix the problem partly by moving
to macrodef.

The question is : what made antcall slower in 1.6

The one change I remember is :
Allow references to be properly inherited via antcall Bugzilla Report 21724.


Awesome... =-O
Well done. I was bashing my head against a wall looking into this. :-(
For my simple scripts, ant 1.6 (using crimson as against xerces) was faster than ant 1.5. 8-)
But now this script:


<project default="y">
<fileset id="set" dir=".">
<include name="**/*.xml"/>
</fileset>
<target name="y">
</target>
</project>
Takes 1.5 seconds on ant1.6 against 1.2 on ant 1.5.
and without the id:

<project default="y">
<fileset dir=".">
<include name="**/*.xml"/>
</fileset>
<target name="y">
</target>
</project>

Takes 0.55 on ant1.6 against 1.1 on ant 1.5.

Using antcall makes this effect much worse:
<project default="calls">
<fileset id="set" dir=".">
<include name="**/*.xml"/>
</fileset>
<target name="y">
</target>
<target name="calls">
<antcall target="y"/>
<antcall target="y"/>
<antcall target="y"/>
<antcall target="y"/>
<antcall target="y"/>
<antcall target="y"/>
<antcall target="y"/><project default="calls">
<fileset id="set" dir=".">
<include name="**/*.xml"/>
</fileset>
<target name="y">
</target>
<target name="calls">
<antcall target="y"/>
<antcall target="y"/>
<antcall target="y"/>
<antcall target="y"/>
<antcall target="y"/>
<antcall target="y"/>
<antcall target="y"/>
<antcall target="y"/>
<antcall target="y"/>
<antcall target="y"/>
</target>
</project>
<antcall target="y"/>
<antcall target="y"/>
<antcall target="y"/>
</target>
</project>

Takes 4.5 seconds on ant1.6 against 1.4 seconds on ant1.5.

Peter

I do not know whether this is the culprit.

Antoine

-----Ursprungliche Nachricht-----
Von: Jose Alberto Fernandez [mailto:[EMAIL PROTECTED]
Gesendet: Mittwoch, 10. Dezember 2003 15:48
An: [EMAIL PROTECTED]
Betreff: ANT1.6 much more slower than 1.5


OK, here are some more issues.

I am running the my main build in ANT 1.6 vs 1.5
and I am getting very disapointing numbers:

On ANT1.5 a full build takes 9m23s

On ANT1.6b3 the same build takes 14m12s (!!!!!)

On ANT1.6b3 a modified version of the build takes 11m3s

This is after modifying the build for 1.6 to use
<macrodef> in a couple of obvious places instead of <antcall>.

This is on a build file with over 2500 lines and with
numerous <antcall> and <foreach> loops.

I can extrapolate from this two things:

a) <macrodef> really helps in 1.6.

b) I will have to convert a lot of the code to just
get the performance I had before. If I move the
rest of the developers to 1.6 as is, they will kill me.
They already complain the build takes too long.

Any insight on what we should look into?
We cannot ship 1.6 with such issues, I do not think.

Jose Alberto





---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]







---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to