On 1/6/07, Han-Wen Nienhuys <[EMAIL PROTECTED]> wrote:
Joe Neeman escreveu: > > Hi, > > I have added scripts for profiling, see buildscripts/build- profile.sh. > > It turns out that the skyline related routines have replaced > Grob::get_property() as the top-contender in the profile. Can you > have a look to see if this can be optimized? > > > I'll take a look. How important is the optimisation? (I was thinking of > trying to turn 2-pass spacing into 1-pass spacing -- which should I do > first?) I don't know, take a look at the profile and see if you can come up with some simple shortcuts. I already did a few. (Couldn't sleep last night). A few simple optimizations put Page_spacer::calc_subproblem at the top.
Some further optimisations give time seconds seconds calls ms/call ms/call name 7.48 0.62 0.62 564933 0.00 0.00 Page_spacer::calc_subproblem(unsigned int, unsigned int) 3.38 0.90 0.28 1103679 0.00 0.00 Building::conceals_beginning(Building const&) const 3.02 1.15 0.25 1467008 0.00 0.00 Building::precompute() 2.90 1.39 0.24 73951 0.00 0.01 Skyline::internal_merge_skyline(std::list<Building, std::allocator<Building>
*, std::list<Building, std::allocator<Building> >*, std::list<Building,
std::allocator<Building> >*) 2.83 1.63 0.24 8807932 0.00 0.00 Grob::internal_get_property_data(scm_unused_struct*) const 2.77 1.86 0.23 2063603 0.00 0.00 Building::conceals(Building const&) const 2.53 2.07 0.21 1739992 0.00 0.00 Grob::extent(Grob*, Axis) const
_______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel