X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=buildscripts%2Fbuild-profile.sh;h=072cf64520c2fab1640a4e10502f833651bd370e;hb=03302c2f0fec2ccf1484b1ab316f90d4c17b786d;hp=fc872de0b903453e6aaafdfeda3e3982af8e964b;hpb=d194ee9f637a200ac26b59e818acf5ca37985dc9;p=lilypond.git diff --git a/buildscripts/build-profile.sh b/buildscripts/build-profile.sh old mode 100755 new mode 100644 index fc872de0b9..072cf64520 --- a/buildscripts/build-profile.sh +++ b/buildscripts/build-profile.sh @@ -17,6 +17,9 @@ fi make conf=prof -j2 +if test "$?" != "0"; then + exit 2 +fi depth=../.. resultdir=out/profile-results @@ -26,16 +29,59 @@ mkdir $resultdir cd $resultdir -echo 'foo = \new Staff \new Voice \repeat unfold 50 \relative { c4 d8[ d16( e]~ e16[ e e) f] g8 } -\new ChoirStaff << - \foo \foo \foo \foo - \foo \foo \foo \foo +cat > long-score.ly << EOF +\version "2.10.0" +foo = \new Staff \new Voice \repeat unfold 50 \relative { c4 d8[ d16( e]~ e16[ e e) f] g8 } +\score { + \new ChoirStaff << + \foo \foo \foo \foo + \foo \foo \foo \foo + + >> + \midi {} + \layout {} +} +EOF + +rm gmon.sum + +exe=$depth/out-prof/bin/lilypond + +## todo: figure out representative sample. +files="wtk1-fugue2 wtk1-fugue2 wtk1-fugue2 wtk1-fugue2 mozart-hrn-3 mozart-hrn-3 long-score" + + + +$exe -ddump-profile --formats=ps -I $depth/input/ -I $depth/input/mutopia/J.S.Bach/ \ + -I $depth/input/mutopia/W.A.Mozart/ \ + $files + + +for a in *.profile; do + echo $a + cat $a +done + +echo 'running gprof' +gprof $exe > profile + +exit 0 ->>' > long-score.ly +## gprof -s takes forever. +for a in seq 1 3; do + for f in $files ; do + $exe -ddump-profile --formats=ps -I $depth/input/ -I $depth/input/mutopia/J.S.Bach/ \ + -I $depth/input/mutopia/W.A.Mozart/ \ + $f -../bin/lilypond -ddump-profile -I $depth/input/ -I $depth/input/mutopia/J.S.Bach/ \ - -I $depth/input/mutopia/W.A.Mozart/ \ - wtk-fugue2 mozart-hrn-3 long-score + echo 'running gprof' + if test -f gmon.sum ; then + gprof -s $exe gmon.out gmon.sum + else + mv gmon.out gmon.sum + fi + done +done -gprof ../bin/lilypond +gprof $exe gmon.sum > profile