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