On Feb 6, 2012, at 8:37 PM, David Kastrup wrote: > It is rare that I encounter an algorithm that I can't speed up by a > factor of at least 10 once I seriously try (and that does not mean > coding in assembly or similar bad deals).
Have at it! To all interested parties, this work is now up on: dev/skylines A few gotchyas: -) the code in axis-group-interface.cc add_grobs_of_one_priority has lots of if / else that could likely be made easier to read. not much of a speed up, but would help legibility. basically, they're all flags for using skylines or not. it can easily be divided into two different functions that are accessed as the result of one if/else statement. -) in axis-group-interface.cc, anytime you use a skyline to do the job of a box, try it with and without a copy of the skyline. moving the original around may screw things up if the skyline is reused. -) if i had a guess as to the two places this could be sped up, its: ----) caching glyph box data in a scm file when the fonts are built. all the code is there in stencil-integral.scm - it'd just need to be called and written somewhere during the build process. code could be added here to remove boxes that will never be part of a skyline (inside the white space of the treble clef, for example) ----) speeding up skylines. specifically: --------) the constructor --------) merge --------) distance --------) touching_point --------) height Good luck! Cheers, MS _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel