X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=input%2Fregression%2Fprofile-property-access.ly;h=13e811e0e5b3b02c60859f580c1273b9bb6592db;hb=60f4e610f5ffb3d5d1201fd5fa258c2b64ac8010;hp=21e5476b552c534a01576a361e65c6f4e43342a1;hpb=f63b7e7f12fa7757efbf89925afa39b1a2738f68;p=lilypond.git diff --git a/input/regression/profile-property-access.ly b/input/regression/profile-property-access.ly index 21e5476b55..13e811e0e5 100644 --- a/input/regression/profile-property-access.ly +++ b/input/regression/profile-property-access.ly @@ -1,22 +1,31 @@ +% -*- Scheme -*- + \header { - texidoc = "This file profiles property accesses; the log file shows the top properties examined." + texidoc = "This file profiles property accesses; the log file shows the top properties examined. +Note: lilypond must be compiled with --disable-optimising for this file to work." } #(ly:set-option 'profile-property-accesses #t) -\version "2.10.8" +\version "2.14.0" -%\include "../../input/typography-demo.ly" -\book { \score { {c4 } } } +\include "typography-demo.ly" +%\book { \score { {c4 } } } -#(define (prop-stats>? x y) (> (cdr x) (cdr y))) +#(define (prop-stats>? x y) + (cond + ((> (cdr x) (cdr y)) #t) + ((= (cdr x) (cdr y)) + (symbolalist (ly:property-lookup-stats what))) + (round-to (lambda (x) (* rnd (inexact->exact (round (/ x rnd)))))) + (alist (map (lambda (entry) (cons (car entry) (round-to (cdr entry)))) (hash-table->alist (ly:property-lookup-stats what)))) (total (apply + (map cdr alist))) ) @@ -25,7 +34,7 @@ (ly:progress "\n\n~A properties, top ~a rounded to ~a\n\n~a" what count rnd (string-join - (map (lambda (x) (format "~30a: ~6@a" (car x) (* rnd (inexact->exact (round (/ (cdr x) rnd)))))) + (map (lambda (x) (format #f "~30a: ~6@a" (car x) (cdr x))) (ly:truncate-list! (sort alist prop-stats>?) count)) "\n"))))