This is the mail archive of the guile@sourceware.cygnus.com mailing list for the Guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Benchmarking large scores 1.3.4 vs 1.3.5


Dear list,

Here are the curious results of my benchmarking of guile-1.3.4 vs
recent guile-1.3.5 snapshot cvs of Jun 13 00:06 CET.

In short, for small scores results are comparable, but for large scores
(no swapping, though), 1.3.5 is much memory-frienlier (about 1/5 less
memory), whereas the processing time shoots up by a factor 3.5.

This probably is a LilyPond thing, but it would be good if someone
would benchmark with large applications.  The strange thing is, in
recent LilyPond releases, Han-Wen has done much work to reduce the
memory footprint.  That didn't work out, but instead we got significant
speed-gains.  Hmm.

Because this doesn't give any real insight, I'll make profiles for both
cases, but that'll take me some time.

I'm running an heavily patched 2.2.6 kernel (from LinuxPPC) on ppc,
both guile's were freshly compiled with -g -O2.

Greetings,
Jan.

lilypond-1.3.59-uu1, guile-1.3.4

wtk1-fugue2:
((gc-time-taken . 416) (cells-allocated . 288413) (cell-heap-size . 294912) (bytes-malloced . 1514012) (gc-malloc-threshold . 1723672) (cell-heap-segments (805728264 . 805466120) (806256648 . 805732360) (807833608 . 806260744)))
user:  30.21(3021) system:   0.23(23)
elapsed:  31.85
MAXSIZE:  7.316M(1873), MAXRSS:  7.316M(1873)
AVGSIZE:  6.238M(1597), AVGRSS:  6.238M(1597)

coriolan:
((gc-time-taken . 3139) (cells-allocated . 3790361) (cell-heap-size . 7962624) (bytes-malloced . 28815081) (gc-malloc-threshold . 29449882) (cell-heap-segments (805728264 . 805466120) (806256648 . 805732360) (807833608 . 806260744) (812556296 . 807837704) (826716168 . 812560392) (869187592 . 826720264)))
user: 523.85(52385) system:   3.45(345)
elapsed: 529.28
MAXSIZE: 113.535M(29065), MAXRSS: 113.535M(29065)
AVGSIZE: 81.516M(20868), AVGRSS: 81.516M(20868)


lilypond-1.3.59-uu2, guile-1.3.5 -- cvs of Jun 13 00:06 CET

wtk1-fugue2:
((gc-time-taken . 192) (cells-allocated . 335785) (cell-heap-size . 448256) (bytes-malloced . 1898465) (gc-malloc-threshold . 2018782) (cell-heap-segments (270326784 . 270277632) (270335488 . 270329344) (270438912 . 270406144) (270488576 . 270439424) (270585344 . 270509568) (270702080 . 270597632) (805622272 . 805466624) (805919232 . 805626368) (806439424 . 805921280) (807309824 . 806441472) (808747520 . 807313920)))
user:  30.38(3038) system:   0.23(23)
elapsed:  34.53
MAXSIZE:  8.957M(2293), MAXRSS:  8.957M(2293)
AVGSIZE:  6.777M(1735), AVGRSS:  6.777M(1735)

coriolan:
((gc-time-taken . 5472) (cells-allocated . 3112939) (cell-heap-size . 5056864) (bytes-malloced . 33091637) (gc-malloc-threshold . 34437669) (cell-heap-segments (270325344 . 270277296) (805834304 . 805466120) (806026856 . 805834760) (806443480 . 806027272) (807133408 . 806445064) (808290448 . 807137296) (810229328 . 808292360) (812326816 . 810229768) (814423968 . 812326920) (816521120 . 814424072) (818618272 . 816521224) (820715424 . 818618376) (822812576 . 820715528) (824909728 . 822812680) (827006880 . 824909832) (829104032 . 827006984) (831201184 . 829104136) (833298336 . 831201288) (835396544 . 833298448) (837496736 . 835399688) (839593888 . 837496840) (841692096 . 839594000) (843792288 . 841695240) (845889440 . 843792392)))
user: 1850.71(185071) system:   5.02(502)
elapsed: 1886.58
MAXSIZE: 93.926M(24045), MAXRSS: 93.926M(24045)
AVGSIZE: 73.516M(18820), AVGRSS: 73.516M(18820)

(Btw, -uu2 doesn't work with guile-1.3.4 yet.  However, -uu1 should not
      produce better results that -uu2; guile-1.3.5 with -uu1 is about
      a factor of 3 slower than -uu2.  Han-Wen expects not much difference
      for 1.3.4...)

-- 
Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond - The music typesetter
http://www.xs4all.nl/~jantien       | http://www.lilypond.org

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]