>>>>> "Bennett" == Bennett Helm <[EMAIL PROTECTED]> writes:
Bennett> Finally, I applied the patch to the version of lyx compiled Bennett> with gcc-3.3 with profiling info, ran Shark (in the same way Bennett> I did before), and placed the report here: Bennett> <http://edisk.fandm.edu/ Bennett> bennett.helm/LyX/shark-profile-2.txt.zip>. This Shark profile is very interesting (i.e. it works now!) Basically it says 100% lyx 98.4% LyXText::dispatch(LCursor&, FuncRequest&) (lyx) 78.8% BufferView::Pimpl::update(Update::flags) (lyx) 58.8% LyXScreen::redraw(BufferView&, ViewMetricsInfo const&) (lyx) 52.4% (anonymous namespace)::RowPainter::paintText() (lyx) 42.6% (anonymous namespace)::RowPainter::paintChars(int&, LyXFont, bool, bool) (lyx) 34.0% QLPainter::text(int, int, char const*, unsigned long, LyXFont const&) (lyx) 7.4% font_metrics::width(char const*, unsigned long, LyXFont const&) (lyx) 19.3% BufferView::Pimpl::metrics(bool) (lyx) 19.6% TransManager::TranslateAndInsert(char, LyXText*) (lyx) At the end, there is also a list of methods and total time they use. I find there - 73.4% QFontEngineMac::doTextTask(QChar const*, int, int, int, unsigned char, int, int, QPaintDevice*, QRegion const*) const (lyx) AFAIK, doTextTask is used for painting and metrics (at least). This means that at least 73.4% of the time is used in Qt/Mac text engine. So basically we draw too much :) Bennett, as I wrote before, a Shark output on a binary compiled _without_ profile information (and a Qt without profile information) would give a better idea of what happens. JMarc