ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stefan Bodewig <bode...@apache.org>
Subject Re: DirectoryScanner performance
Date Fri, 19 Sep 2008 04:36:45 GMT
Tests on Ubuntu 8.04, Java 1.6, I only tested two svn revisions and
1.7.1 (and used top instead of task manager in my highly scientific
approach to measure memory consumption 8-)

The trends are the same.  Even though the machine is a lot slower than
my work Windows system the times are comparable.  I guess Linux'
tempfs is quite a bit faster than a real NTFS formatted disk.

The pre-tokenization changes have a stronger effect, though.  My guess
- again - is that scanning is stronger I/O bound on the Windows
machine and CPU bound on tempfs on Linux.

It also seems as if I needed to modify the test setup to make it even
larger if I want to compare further tweaks.

Interestingly the effect of followSymlinks=false is far less dramatic
on Linux than on Windows.

I removed memoization of File.list and File.getCanonicalPath (only
local, not yet committed) and it didn't change much, so I'll probably
remove it completely.

I added a new many-roots tests (not part of the timings for "all"
below) that should be sensitive to memoization and pre-tokenization.

tests with default settings
===========================

matchall
--------

Ant 1.7.1                     15 s      ~ 20 MB
trunk rev 696355              12 s      ~ 34 MB
trunk rev 696674               2 s      ~ 29 MB
no memoization                 2 s      ~ 20 MB

roots
-----

Ant 1.7.1                      0 s      ~ ?? MB
trunk rev 696355               0 s      ~ ?? MB
trunk rev 696674               0 s      ~ ?? MB
no memoization                 0 s      ~ ?? MB

recursive-excludes
------------------

Ant 1.7.1                      2 s      ~ 14 MB
trunk rev 696355               2 s      ~ 13 MB
trunk rev 696674               1 s      ~ 19 MB
no memoization                 1 s      ~ 21 MB

name-matches
------------

Ant 1.7.1                      3 s      ~ 19 MB
trunk rev 696355               3 s      ~ 31 MB
trunk rev 696674               2 s      ~ 24 MB
no memoization                 1 s      ~ 20 MB

many-patterns
-------------

Ant 1.7.1                      4 s      ~ 21 MB
trunk rev 696355               4 s      ~ 28 MB
trunk rev 696674               1 s      ~ 35 MB
no memoization                 1 s      ~ 22 MB

all
---

Ant 1.7.1                     20 s      ~ 41 MB
trunk rev 696355              20 s      ~ 44 MB
trunk rev 696674               6 s      ~ 43 MB
no memoization                 5 s      ~ 44 MB

many-roots
----------

Ant 1.7.1                     14 s      ~ 27 MB
trunk rev 696674               2 s      ~ 35 MB
no memoization                 2 s      ~ 30 MB

Case-insensitive scan
=====================

all
---

Ant 1.7.1                     21 s      ~ 40 MB
trunk rev 696355              20 s      ~ 44 MB
trunk rev 696674               6 s      ~ 43 MB
no memoization                 5 s      ~ 43 MB

No followSymlinks
=================

all
---

Ant 1.7.1                     25 s      ~ 38 MB
trunk rev 696355              24 s      ~ 45 MB
trunk rev 696674               9 s      ~ 45 MB
no memoization                 8 s      ~ 45 MB

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


Mime
View raw message