Hi Andy, sorry for the late reply. My regular job eats too much time .... 2017-02-28 9:31 GMT+01:00 Andy Wingo <wi...@pobox.com>: > On Tue 28 Feb 2017 00:00, Thomas Morley <thomasmorle...@gmail.com> writes: > >> The main problems/TODOs are listed here (same for guile-2.0.13 and 2.1.7): >> https://ao2.it/tmp/lilypond-guile2/TODO >> With no warranty for completeness. >> >> Let me pick some of them: >> (1) >> lilypond filename_名字.ly >> returns >> fatal error: failed files: "filename_??????.ly" > > Interesting, I would have thought that there would be a difference > between 2.0.13 and 2.1.7 due to GUILE_INSTALL_LOCALE; I assume you are > in a UTF-8 locale and that file name is UTF-8?
~$ locale LANG=en_US.UTF-8 LANGUAGE=en LC_CTYPE="en_US.UTF-8" LC_NUMERIC=de_DE.UTF-8 LC_TIME=de_DE.UTF-8 LC_COLLATE="en_US.UTF-8" LC_MONETARY=de_DE.UTF-8 LC_MESSAGES="en_US.UTF-8" LC_PAPER=de_DE.UTF-8 LC_NAME=de_DE.UTF-8 LC_ADDRESS=de_DE.UTF-8 LC_TELEPHONE=de_DE.UTF-8 LC_MEASUREMENT=de_DE.UTF-8 LC_IDENTIFICATION=de_DE.UTF-8 LC_ALL= > >> (2) >> Floating point numbers are different in some decimal digits. >> Possible impact on spacing in a regression-test for utf-8. > > If you have more details on the floating-point issue, they are very > welcome :) Not really my topic. Though first reported here: http://lists.gnu.org/archive/html/lilypond-devel/2016-11/msg00156.html > >> (3) >> Most imortant for users: >> LilyPond slowed down dramatically. Today I tested a huge file: >> >> lilypond 2.19.52 with guile-1.8 >> >> real 9m8.229s >> user 6m41.156s >> sys 0m11.940s >> >> lilypond 2.19.56 with guile-2.1.7 >> >> real 48m45.225s >> user 65m43.252s >> sys 0m6.320s > > Do you have Guile 2.0 numbers as well? > > I understand that Lilypond uses the "local-eval" facility a lot for > embedded Scheme. This is a facility that was indeed faster in 1.8. I > would expect that 2.1.7 would be faster than 2.0, if that were the case, > as 2.1.7's evaluator is faster. Hard to say, though. That interface > does not get a lot of speed attention. We could take a look and see > what we can do. I guess we need some profiling first. Here some findings: (1) released lilypond-2.19.52 with guile-1.8.7 real 8m16.191s user 6m39.864s sys 0m10.860s (2) lilypond with guile-2.0.14 build from guile-git-repository, branch remotes/origin/stable-2.0 real 34m11.762s user 45m11.316s sys 0m5.604s (3) lilypond with guile-2.1.7 build from guile-git-repository, branch master real 67m29.132s user 93m14.812s sys 0m7.332s More info in my reply to Arne on the user-list: http://lists.gnu.org/archive/html/guile-user/2017-03/msg00042.html > Can you run lilypond under callgrind under 1.8 and 2.1.7 and attach the > generated callgrind.out.PID for each run? Run like this: > > valgrind --tool=callgrind --num-callers=20 lilypond foo.ly Running valgrind on the same .ly-file as for my tests above is insane, I aborted it after several (far too many) hours. Let me try to find some ly-code/file of medium size to do so. Thanks, Harm > > Thanks, > > Andy