Edwin Leuven wrote:
Michael Gerz wrote:
Edwin,
could you please check whether the attached patch saves any time in
lyx::Changes::lookup(int) const and lyx::Changes::merge() during
opening/saving a file?
this is open (save below):
Each sample counts as 0.01 seconds.
% cumulative self self total
time seconds seconds calls ms/call ms/call name
7.41 0.02 0.02 268500 0.00 0.00
lyx::InsetBase::inMathed() const
I don't understand why this is so slow. Could you aded an 'inline'
keyword in insetbase.h:75 please:
inline virtual bool inMathed() const { return false; }
and report back.
7.41 0.04 0.02 10948 0.00 0.00
lyx::support::compare_no_case(std::basic_string<wchar_t,
std::char_traits<wchar_t>, std::allocator<wchar_t> > const&,
std::basic_string<wchar_t, std::char_traits<wchar_t>,
std::allocator<wchar_t> > const&)
3.70 0.05 0.01 236382 0.00 0.00
lyx::operator==(lyx::LyXKeySym const&, lyx::LyXKeySym const&)
I've just pushed a fix for this one (hopefully).
3.70 0.06 0.01 191783 0.00 0.00
lyx::DocIterator::inTexted() const
I've inline that.
3.70 0.07 0.01 182929 0.00 0.00
lyx::operator==(lyx::LyXFont::FontBits const&, lyx::LyXFont::FontBits
const&)
3.70 0.08 0.01 181982 0.00 0.00
lyx::Paragraph::Pimpl::insertChar(int, wchar_t, lyx::Change const&)
3.70 0.09 0.01 180583 0.00 0.00
lyx::Paragraph::insertChar(int, wchar_t, lyx::LyXFont const&,
lyx::Change const&)
3.70 0.10 0.01 151794 0.00 0.00
lyx::InsetText::getText(int) const
3.70 0.11 0.01 116494 0.00 0.00
lyx::DocIterator::inMathed() const
And that.
We can do some more inlining but please do another profile in order to
make sure that there is a true saving.
Thanks in advance.
Abdel.