From: <J.B...@ew...> - 2010-02-09 08:59:00
|
Krzysztof, Perhaps you could make minimal test cases, to see what performance gain you get when you change things? I think Mental made some timer/performance checking code, for Linux. I am glad too that you are working on performance, and hope you can achieve good results. (I am a little in doubt whether these specific changes you propose will do much, but still :-) Cheers, Johan > -----Original Message----- > From: njh [mailto:nj...@nj...] > Sent: Tuesday, February 09, 2010 02:40 > To: Krzysztof Kosiński > Cc: lib...@li... > Subject: Re: [Lib2geom-devel] Geom::Path and boost::ptr_vector > > these are all fine by me. I'm glad you actually tested performance. > > thanks, njh > > On Mon, 8 Feb 2010, [UTF-8] Krzysztof Kosi?ski wrote: > > > Hello > > > > I had a look at the Path class. There are a few things I > want to change. > > > > 1. Currently the inner container is an std::vector of > > boost::shared_ptrs. This is somewhat inefficient. I would like to > > change it to a boost::ptr_vector of plain pointers, still managed > > through a boost::shared_ptr. This would increase the Boost > dependency > > to 1.33; Inkscape Devlibs currently contain 1.34. Docs for > the Pointer > > Container library that includes boost::ptr_vector are here: > > > http://www.boost.org/doc/libs/1_42_0/libs/ptr_container/doc/ptr_contai > > ner.html > > > > 2. PathVector should be called PathSequence. (Making it a > rope, which > > was suggested before, or other such tricks are not > necessary: it turns > > out that regenerating the entire path sequence after every > drag is not > > a major performance bottleneck.) > > > > 3. PathSequence should be a real class and implicitly shared, like > > Path. This will minimize the overhead of copying them and > passing them > > as return values, which is done quite a lot in Inkscape. It > will also > > be possible to define some useful methods for it. > > > > Are those changes OK? > > > > Regards, Krzysztof > > > > > ---------------------------------------------------------------------- > > -------- The Planet: dedicated and managed hosting, cloud storage, > > colocation Stay online with enterprise data centers and the best > > network in the business Choose flexible plans and > management services > > without long-term contracts Personal 24x7 support from experience > > hosting pros just a phone call away. > > http://p.sf.net/sfu/theplanet-com > > _______________________________________________ > > Lib2geom-devel mailing list > > Lib...@li... > > https://lists.sourceforge.net/lists/listinfo/lib2geom-devel > > > > -------------------------------------------------------------- > ---------------- > The Planet: dedicated and managed hosting, cloud storage, > colocation Stay online with enterprise data centers and the > best network in the business Choose flexible plans and > management services without long-term contracts Personal 24x7 > support from experience hosting pros just a phone call away. > http://p.sf.net/sfu/theplanet-com > _______________________________________________ > Lib2geom-devel mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/lib2geom-devel > |