You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ant.apache.org by Peter Reilly <pe...@gmail.com> on 2006/09/21 16:52:02 UTC

Performance

I was looking at a performance thread last year:
http://marc.theaimsgroup.com/?t=111892021000001&r=1&w=2
"Performance difference between 1.6.1 and 1.6.4 (in eclipse)"

There was a performance slowdown between ant 1.6.1 and ant 1.6.4

For script1 I get the following numbers:
ANT 1.6.1	=> 11 sec
ANT 1.6.4	=> 32 sec

For script2 I get the following numbers:

ANT 1.6.1	=> 34 sec
ANT 1.6.4	=> 1 min 16 sec


on discussion it was also noticed that there was a performance slowdown
between ant 1.6.2 and ant 1.6.5

Timing by tasks in Ant 1.6.2:        in Ant
1.6.5
----------- ------ ------ ---------- ----------- ------
19.578,0 ms 175,2%    24x antcall    62.235,0 ms 189,0%
 5.638,0 ms  50,5%   434x see.get     6.308,0 ms  19,2%
 1.957,0 ms  17,5%    25x import
14.238,0 ms  43,2%
 1.269,0 ms  11,4% 15131x property   11.775,0 ms  35,8%
   563,0 ms   5,0%    43x delete        608,0 ms   1,8%
    93,0 ms   0,8%   101x dirname       221,0 ms   0,7%
    47,0 ms   0,4%     1x tstamp         47,0 ms   0,1%

    30,0 ms   0,3%    25x presetdef      16,0 ms   0,0%
    15,0 ms   0,1%   430x basename      453,0 ms   1,4%
     0,0 ms   0,0%    78x mkdir          64,0 ms   0,2%

11.172,0 ms 100,0%     1x TOTAL
32.922,0 ms 100,0%

I do not know the build files used for this test.
There was a number of fixes for performance since ant 1.6.5
in particular: http://issues.apache.org/bugzilla/show_bug.cgi?id=37184

So I decided to investigate the current performance. This
resulted in a number of performance fixes that I commited
yesterday.
I also wrote a small testing build file - placed in
src/etc/performance/build.xml
this creates two build files, one contains lots of property tasks as follows
  <target ..>
    <property name="pro1" value="val"/>
    <property name="pro2" value="val"/>
    ,,,,,
the other contains a lot of <antcall>'s. and nothing else.

There are then run with the different versions of ant;
The results are as follows:

do-times:
c:/svn/ant/trunk/dist
--  props.xml     --: Total time: 2 seconds
-- ant-call.xml   --: Total time: 10 seconds
c:/apps/apache-ant-1.7.0Beta2
--  props.xml     --: Total time: 7 seconds
-- ant-call.xml   --: Total time: 49 seconds
c:/apps/apache-ant-1.6.5
--  props.xml     --: Total time: 36 seconds
-- ant-call.xml   --: Total time: 35 seconds
c:/apps/apache-ant-1.6.2
--  props.xml     --: Total time: 6 seconds
-- ant-call.xml   --: Total time: 37 seconds
c:/apps/apache-ant-1.5.4
--  props.xml     --: Total time: 3 minutes 11 seconds
-- ant-call.xml   --: Total time: 1 minute 42 seconds

We need to have more test files for other features
(directory scanning and file coping for example).

Peter

Re: Performance

Posted by Antoine Levy-Lambert <an...@gmx.de>.
Hello Peter,

this is a very useful work.

Antoine
-------- Original-Nachricht --------
Datum: Thu, 21 Sep 2006 16:11:50 +0100
Von: "Peter Reilly" <pe...@gmail.com>
An: "Ant Developers List" <de...@ant.apache.org>
Betreff: Re: Performance

> **only** for those build files, which are extreme cases,
> hopefully there should be some speed up for most build files,
> but nowhere as much!
> Like I said, we need more example build files to make
> sure that ant can scale for large build files, multiple import files,
> big directory searches / copies etc, and that new versions
> of ant do not cause serious slow downs.
> 
> I was shocked at how bad 1.5.4 was as I assumed that it
> would be a little faster than ant 1.6.*.
> 
> Peter
> 
> 

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


Re: Performance

Posted by Stefan Bodewig <bo...@apache.org>.
On Thu, 21 Sep 2006, Peter Reilly <pe...@gmail.com> wrote:

> I was shocked at how bad 1.5.4 was as I assumed that it
> would be a little faster than ant 1.6.*.

At first I thought it must have been the delayed task instantiation,
this could explain the speedup in antcall - but property?

Great work

Stefan

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


Re: Performance

Posted by Peter Reilly <pe...@gmail.com>.
**only** for those build files, which are extreme cases,
hopefully there should be some speed up for most build files,
but nowhere as much!
Like I said, we need more example build files to make
sure that ant can scale for large build files, multiple import files,
big directory searches / copies etc, and that new versions
of ant do not cause serious slow downs.

I was shocked at how bad 1.5.4 was as I assumed that it
would be a little faster than ant 1.6.*.

Peter


On 9/21/06, Dominique Devienne <dd...@gmail.com> wrote:
>
> > do-times:
> > c:/svn/ant/trunk/dist
> > --  props.xml     --: Total time: 2 seconds
> > -- ant-call.xml   --: Total time: 10 seconds
> > c:/apps/apache-ant-1.6.2
> > --  props.xml     --: Total time: 6 seconds
> > -- ant-call.xml   --: Total time: 37 seconds
>
> Trunk is 3x faster than fastest times. Cool!!!
>
> Thanks Peter. --DD
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
> For additional commands, e-mail: dev-help@ant.apache.org
>
>

Re: Performance

Posted by Dominique Devienne <dd...@gmail.com>.
> do-times:
> c:/svn/ant/trunk/dist
> --  props.xml     --: Total time: 2 seconds
> -- ant-call.xml   --: Total time: 10 seconds
> c:/apps/apache-ant-1.6.2
> --  props.xml     --: Total time: 6 seconds
> -- ant-call.xml   --: Total time: 37 seconds

Trunk is 3x faster than fastest times. Cool!!!

Thanks Peter. --DD

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