[LLVMdev] Status of use-diet so far (NO API CHANGES)

Gabor Greif gabor at mac.com
Thu Apr 24 09:03:09 PDT 2008

Hi all,

in the last days I was busy gathering performance data
about the "class Use"-related changes.

I have nice measurements on a 8Gig MacPro with kimwitu++.
This is important to say, because this machine is
in plenty of memory, so swapping is not likely, which
means that in more constrained setups (when swapping
occurs) the use-diet approach is probably producing
even better results.

So here are my values when doing a
  cd ~/test-suite/MultiSource/Applications/kimwitu++
  time make --always
in the regular trunk and with my changes merged in:

grep "^real" < kimwituRegular.scatter.backup2 | sort
real    1m34.002s
real    1m34.084s
real    1m34.092s
real    1m34.398s
real    1m34.468s
real    1m34.508s
real    1m34.733s
real    1m34.849s
real    1m35.057s
real    1m35.109s
real    1m35.160s
real    1m35.236s
real    1m36.005s
real    1m36.667s
real    1m38.071s
real    1m38.202s
real    1m38.500s
real    1m41.267s
real    1m41.868s
real    1m43.603s

grep "^real" < kimwituDiet.scatter.backup2 | sort
real    1m33.920s
real    1m33.991s
real    1m33.997s
real    1m34.027s
real    1m34.083s
real    1m34.109s
real    1m34.235s
real    1m34.255s
real    1m34.375s
real    1m34.431s
real    1m34.440s
real    1m34.585s
real    1m34.839s
real    1m35.481s
real    1m37.998s
real    1m38.184s
real    1m38.653s
real    1m38.906s
real    1m43.415s
real    1m43.490s

As you can see, the use-diet changes actually lower the build time
of kimwitu++! (this is as of yesterday's r50182).
Parity is not only reached, but surpassed. I am pretty happy
with this :-)

The second thing I wanted to report, that contrary to my previous
announcement there will be *no* API change needed, so there is no
need for conversions in other projects any more.
(The confusion came from my erroneous understanding, at some point,
that the defining value for a GlobalVariable cannot be changed and
must be present on construction.)

Bill asked for memory statistics, I shall get some as I get Shark

If I find the time I can even make some pretty graphs.

All in all, I am on track with merging the branch on trunk
by the end of this week.



More information about the llvm-dev mailing list