> From: Pollähne. Ullrich [mailto:[EMAIL PROTECTED]
> The script contains a main target that simply calls the others with
> antcall (since it is simpler to edit than editing the depends attribute).
> 
> Doing it this way:
>         <antcall target="removeOldArtifacts" />
...
> 
>         <!-- refresh the eclipse workspace if inside eclipse -->
>         <antcall target="refreshWorkspace"/>
> takes 32 seconds (31 with a fixed heap of 80MB) with ANT 1.6.5.
> 
> Doing it this way:
>         <antcall>
>             <target name="removeOldArtifacts" />
...
> 
>             <!-- refresh the eclipse workspace if inside eclipse -->
>             <target name="refreshWorkspace"/>
>         </antcall>
> just takes 12 seconds (with a fixed heap of 80MB) with ANT 1.6.5.
> And this is nearly the same speed as with ANT 1.6.2.
> So it seems that the dependency checking is slowing down the script.
> 
> The above targets do define some properties and then call the get task
> (indirectly, they call a presetdef). They do not define any dependency,
> just plain '<target name="getBIS6ModulesArtifacts">'.

That's interesting. What you are saying is that <antcall> is expensive
because it creates a new project, which is known Ant wisdom ;-) Using the
new ability to call several targets in a single <antcall> allows you to
create a single Project instead of many, and is thus faster.

What I think is more interesting though, is the possible slow down of
<antcall> between Ant 1.6.2 and 1.6.5. If <antcall> was somehow made 2+
times slower, that's not good.

Would you mind sending the output of the performance listener for the same
script (with heavy <antcall>) on both versions of Ant?

Could be it's the <get> task that's slower rather than <antcall> for
example. Thanks, --DD


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

Reply via email to