D17441: tune editing actions for large number of small edits

Christoph Cullmann noreply at phabricator.kde.org
Sun Dec 9 00:35:48 GMT 2018


cullmann added a comment.


    85.51%     0.00%  kwrite           kwrite                              [.] main
    85.49%     0.00%  kwrite           libc-2.28.so                        [.] __libc_start_main
    85.47%     0.00%  kwrite           kwrite                              [.] _start
    85.09%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] QApplicationPrivate::notify_helper
    85.09%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] QApplication::notify
    85.08%     0.00%  kwrite           libQt5Core.so.5.11.2                [.] QCoreApplication::notifyInternal2
    84.95%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] QWidget::event
    84.82%     0.00%  kwrite           libQt5Core.so.5.11.2                [.] QEventLoop::exec
    84.81%     0.00%  kwrite           libQt5Core.so.5.11.2                [.] QCoreApplication::exec
    83.75%     2.45%  kwrite           libQt5Core.so.5.11.2                [.] QMetaObject::activate
    83.66%     0.00%  kwrite           libQt5Gui.so.5.11.2                 [.] QGuiApplicationPrivate::processWindowSystemEvent
    83.66%     0.00%  kwrite           libQt5Gui.so.5.11.2                 [.] QWindowSystemInterface::sendWindowSystemEvents
    83.66%     0.00%  kwrite           libQt5XcbQpa.so.5.11.2              [.] 0x00007f8e008eadac
    83.64%     0.00%  kwrite           libQt5Gui.so.5.11.2                 [.] QGuiApplicationPrivate::processMouseEvent
    83.64%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] 0x00007f8e084575d4
    83.64%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] QApplicationPrivate::sendMouseEvent
    83.64%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] 0x00007f8e0845498b
    83.63%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] QAbstractButton::mouseReleaseEvent
    83.01%     0.00%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateSearchBar::qt_static_metacall
    83.01%     0.00%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateSearchBar::replaceAll
    83.01%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] QAbstractButton::clicked
    83.01%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] 0x00007f8e084e4a1b
    83.01%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] 0x00007f8e084e5e11
    82.95%     0.28%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateSearchBar::findAll
    69.05%     0.17%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateMatch::replace
    65.42%     0.12%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::replaceText
    34.14%     0.19%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::insertText
    32.93%     0.22%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::editInsertText
    31.05%     0.18%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::removeText
    29.85%     0.32%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::editRemoveText
    17.63%     0.17%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBuffer::removeText
    17.45%     0.22%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBuffer::insertText
    10.64%     0.87%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBlock::removeText
     9.25%     0.02%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::textInserted
     9.20%     0.06%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateMatch::searchText
     8.96%     0.98%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBlock::insertText
     7.97%     0.11%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::searchText
     7.65%     0.04%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBuffer::textInserted
     6.54%     0.04%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::QSlotObject<void (KateVi::NormalViMode::*)(KTextEditor::Document*, KTextEditor::Range), QtPrivate::List<KTextEditor::Document*, KTextEditor::Range const&>, void>::impl
     6.54%     0.07%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::FunctionPointer<void (KateVi::NormalViMode::*)(KTextEditor::Document*, KTextEditor::Range)>::call<QtPrivate::List<KTextEditor::Document*, KTextEditor::Range const&>, void>
     6.46%     0.08%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::FunctorCall<QtPrivate::IndexesList<0, 1>, QtPrivate::List<KTextEditor::Document*, KTextEditor::Range const&>, void, void (KateVi::NormalViMode::*)(KTextEditor::Document*, KTextEditor::Range)>::call
     5.81%     0.09%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBuffer::textRemoved
     5.12%     0.05%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::textRemoved
     4.92%     0.29%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateBuffer::plainLine
     4.88%     0.09%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateUndoManager::addUndoItem
     4.41%     0.26%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBuffer::line
     4.25%     0.24%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextRange::checkValidity
     4.18%     0.09%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateUndoManager::slotTextRemoved
     4.17%     0.24%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateVi::NormalViMode::textInserted
     4.13%     0.03%  kwrite           libKF5TextEditor.so.5.53.0          [.] std::vector<Kate::TextRange*, std::allocator<Kate::TextRange*> >::push_back
     4.06%     0.11%  kwrite           libKF5TextEditor.so.5.53.0          [.] std::vector<Kate::TextRange*, std::allocator<Kate::TextRange*> >::emplace_back<Kate::TextRange*>
     4.02%     0.36%  kwrite           libKF5TextEditor.so.5.53.0          [.] KatePlainTextSearch::search
     3.92%     0.07%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateLayoutCache::qt_static_metacall
     3.80%     0.05%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateUndoManager::slotTextInserted
     3.69%     0.26%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateLineLayoutMap::slotEditDone
     3.66%     0.34%  kwrite           libKF5TextEditor.so.5.53.0          [.] std::vector<Kate::TextRange*, std::allocator<Kate::TextRange*> >::_M_realloc_insert<Kate::TextRange*>
     3.63%     0.03%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::QSlotObject<void (KateViewInternal::*)(KTextEditor::Document*, KTextEditor::Range const&), QtPrivate::List<KTextEditor::Document*, KTextEditor::Range const&>, void>::impl
     3.61%     0.04%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::FunctionPointer<void (KateViewInternal::*)(KTextEditor::Document*, KTextEditor::Range const&)>::call<QtPrivate::List<KTextEditor::Document*, KTextEditor::Range const&>, void>
     3.59%     0.21%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::SwapFile::qt_static_metacall
     3.56%     0.04%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::FunctorCall<QtPrivate::IndexesList<0, 1>, QtPrivate::List<KTextEditor::Document*, KTextEditor::Range const&>, void, void (KateViewInternal::*)(KTextEditor::Document*, KTextEditor::Range const&)>::call
     3.55%     0.06%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateViewInternal::documentTextInserted
     3.55%     0.91%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::RefCount::deref
     3.51%     0.40%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateUndoGroup::addItem
     3.39%     0.07%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateCompletionWidget::qt_static_metacall
     3.33%     0.25%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::text
     3.24%     0.49%  kwrite           libKF5TextEditor.so.5.53.0          [.] QString::~QString
     3.01%     0.86%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateVi::Marks::setMark
     2.84%     0.84%  kwrite           libKF5TextEditor.so.5.53.0          [.] QBasicAtomicInteger<int>::load
     2.77%     0.24%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextRange::fixLookup
     2.52%     0.38%  kwrite           libKF5TextEditor.so.5.53.0          [.] QBasicAtomicInteger<int>::deref
     2.41%     0.16%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextRange::setRange
     2.33%     2.01%  kwrite           libKF5TextEditor.so.5.53.0          [.] QAtomicOps<int>::load<int>
     2.32%     0.81%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBuffer::blockForLine
     2.29%     0.25%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBlock::line
     2.19%     0.09%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::SwapFile::insertText
     2.18%     0.20%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateCompletionWidget::insertText
     2.16%     0.33%  kwrite           libKF5TextEditor.so.5.53.0          [.] QAtomicOps<int>::deref<int>
     2.14%     0.17%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateVi::NormalViMode::textRemoved
     2.09%     0.10%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::kateTextLine
     2.01%     0.07%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateLayoutCache::removeText
     1.97%     0.09%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateRegExpSearch::escapePlaintext
     1.87%     0.05%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateLayoutCache::insertText
     1.87%     1.87%  kwrite           kwrite                              [.] std::__atomic_base<int>::operator--
     1.82%     0.02%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::QSlotObject<void (KateViewInternal::*)(KTextEditor::Document*, KTextEditor::Range const&, QString const&), QtPrivate::List<KTextEditor::Document*, KTextEditor::Range const&, QString const&>, void>::impl
     1.81%     0.32%  kwrite           libstdc++.so.6.0.25                 [.] __dynamic_cast
     1.81%     0.02%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::FunctionPointer<void (KateViewInternal::*)(KTextEditor::Document*, KTextEditor::Range const&, QString const&)>::call<QtPrivate::List<KTextEditor::Document*, KTextEditor::Range const&, QString const&>, void>
     1.80%     0.03%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::FunctorCall<QtPrivate::IndexesList<0, 1, 2>, QtPrivate::List<KTextEditor::Document*, KTextEditor::Range const&, QString const&>, void, void (KateViewInternal::*)(KTextEditor::Document*, KTextEditor::Range const&, QString const&)>::call
     1.76%     0.05%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateViewInternal::documentTextRemoved
     1.71%     0.21%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateRegExpSearch::buildReplacement
     1.70%     0.13%  kwrite           libKF5TextEditor.so.5.53.0          [.] std::__uninitialized_move_if_noexcept_a<Kate::TextRange**, Kate::TextRange**, std::allocator<Kate::TextRange*> >
     1.64%     0.12%  kwrite           libKF5TextEditor.so.5.53.0          [.] QSharedPointer<Kate::TextLineData>::~QSharedPointer
     1.64%     0.00%  kwrite           libc-2.28.so                        [.] __GI___libc_malloc (inlined)
     1.62%     0.27%  kwrite           libKF5TextEditor.so.5.53.0          [.] QSharedPointer<Kate::TextLineData>::deref
     1.58%     0.21%  kwrite           libKF5TextEditor.so.5.53.0          [.] QBasicAtomicInteger<int>::ref
     1.56%     0.64%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::RefCount::isShared
     1.55%     0.23%  kwrite           libstdc++.so.6.0.25                 [.] __cxxabiv1::__si_class_type_info::__do_dyncast
     1.51%     0.87%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextCursor::line
     1.49%     1.49%  kwrite           libKF5TextEditor.so.5.53.0          [.] QArrayData::data
     1.48%     0.10%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateModifiedRemoveText::KateModifiedRemoveText
     1.47%     1.47%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::Cursor::line
     1.47%     0.43%  kwrite           libKF5TextEditor.so.5.53.0          [.] QSharedPointer<Kate::TextLineData>::QSharedPointer
     1.46%     0.05%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateVi::Marks::setLastChange
     1.43%     0.36%  kwrite           libQt5Core.so.5.11.2                [.] QArrayData::allocate
     1.42%     0.22%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextHistory::addEntry
     1.42%     0.33%  kwrite           libQt5Core.so.5.11.2                [.] QIODevice::write
     1.41%     0.22%  kwrite           libKF5TextEditor.so.5.53.0          [.] QAtomicOps<int>::ref<int>
     1.40%     0.83%  kwrite           libQt5Gui.so.5.11.2                 [.] QAccessible::queryAccessibleInterface
     1.40%     0.34%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::RefCount::ref
     1.35%     0.10%  kwrite           libKF5TextEditor.so.5.53.0          [.] qDeleteAll<QList<KateUndoGroup*> >
     1.35%     0.17%  kwrite           libKF5TextEditor.so.5.53.0          [.] QSharedPointer<Kate::TextLineData>::deref
     1.34%     0.05%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateModifiedInsertText::KateModifiedInsertText
     1.34%     0.32%  kwrite           libKF5TextEditor.so.5.53.0          [.] QString::QString
     1.33%     1.33%  kwrite           libc-2.28.so                        [.] __strcmp_avx2
     1.33%     0.24%  kwrite           libKF5TextEditor.so.5.53.0          [.] QVector<KTextEditor::Range>::append
     1.32%     1.32%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBlock::startLine
     1.30%     0.24%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::operator<
     1.30%     0.09%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::plainKateTextLine
     1.25%     0.27%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::Range::Range
     1.25%     0.09%  kwrite           libKF5TextEditor.so.5.53.0          [.] std::__uninitialized_copy_a<std::move_iterator<Kate::TextRange**>, Kate::TextRange**, Kate::TextRange*>
     1.24%     0.26%  kwrite           libQt5Gui.so.5.11.2                 [.] QAccessibleEvent::accessibleInterface
     1.23%     0.10%  kwrite           libKF5TextEditor.so.5.53.0          [.] QSet<Kate::TextCursor*>::const_iterator::operator++
     1.23%     0.30%  kwrite           libQt5Core.so.5.11.2                [.] QFileDevice::writeData
     1.23%     0.10%  kwrite           libQt5Core.so.5.11.2                [.] QDataStream::operator<<
     1.23%     1.23%  kwrite           libc-2.28.so                        [.] malloc
     1.23%     0.04%  kwrite           libQt5Core.so.5.11.2                [.] QTimer::start
     1.23%     0.00%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::openFile
     1.22%     0.00%  kwrite           libKF5XmlGui.so.5.53.0              [.] KMainWindow::event
     1.22%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] QMainWindow::event
     1.22%     0.16%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBlock::updateRange
     1.21%     0.17%  kwrite           libQt5Core.so.5.11.2                [.] QObject::startTimer
     1.20%     0.00%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateBuffer::openFile
     1.19%     1.19%  kwrite           kwrite                              [.] std::__atomic_base<int>::operator++
     1.18%     0.00%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBuffer::load
     1.17%     0.09%  kwrite           libKF5TextEditor.so.5.53.0          [.] std::uninitialized_copy<std::move_iterator<Kate::TextRange**>, Kate::TextRange**>
     1.17%     0.00%  kwrite           libKF5XmlGui.so.5.53.0              [.] KXmlGuiWindow::event
     1.16%     0.07%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::SwapFile::removeText
     1.16%     0.05%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::MovingRange::setRange
     1.16%     0.15%  kwrite           libKF5TextEditor.so.5.53.0          [.] QHash<Kate::TextCursor*, QHashDummyValue>::const_iterator::operator++
     1.16%     0.00%  kwrite           libQt5Core.so.5.11.2                [.] QEventDispatcherGlib::processEvents
     1.16%     0.00%  kwrite           libQt5XcbQpa.so.5.11.2              [.] 0x00007f8e008eada1
     1.16%     0.00%  kwrite           libglib-2.0.so.0.5800.1             [.] g_main_context_iteration
     1.16%     0.00%  kwrite           libglib-2.0.so.0.5800.1             [.] g_main_context_dispatch
     1.16%     0.00%  kwrite           libglib-2.0.so.0.5800.1             [.] 0x00007f8e04ebcf88
     1.16%     0.14%  kwrite           libKF5TextEditor.so.5.53.0          [.] QMap<QChar, KTextEditor::MovingCursor*>::value
     1.15%     0.17%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextLoader::readLine
     1.14%     0.07%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateCompletionWidget::removeText
     1.13%     0.18%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateEditInsertTextUndo::mergeWith
     1.13%     0.00%  kwrite           [unknown]                           [.] 0xffffffffffffffff
     1.12%     0.27%  kwrite           libQt5Core.so.5.11.2                [.] QString::mid
     1.11%     0.05%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::qMakeForeachContainer<QSet<Kate::TextCursor*>&>
     1.11%     0.09%  kwrite           libKF5TextEditor.so.5.53.0          [.] std::__uninitialized_copy<true>::__uninit_copy<std::move_iterator<Kate::TextRange**>, Kate::TextRange**>
     1.10%     0.07%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::line
     1.10%     0.48%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::operator>=
     1.08%     0.23%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::Range::Range
     1.08%     0.12%  kwrite           libKF5TextEditor.so.5.53.0          [.] QVector<QPair<int, QExplicitlySharedDataPointer<KateLineLayout> > >::end
     1.07%     0.17%  kwrite           libKF5TextEditor.so.5.53.0          [.] QVector<QPair<int, QExplicitlySharedDataPointer<KateLineLayout> > >::detach
     1.07%     0.00%  kwrite           libQt5Core.so.5.11.2                [.] QObject::event
     1.06%     0.18%  kwrite           libKF5TextEditor.so.5.53.0          [.] QSharedPointer<Kate::TextLineData>::ref
     1.05%     0.00%  kwrite           libQt5Core.so.5.11.2                [.] QCoreApplicationPrivate::sendPostedEvents
     1.05%     0.19%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::QForeachContainer<QSet<Kate::TextCursor*> >::QForeachContainer
     1.04%     0.28%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::MovingRange::toRange
     1.04%     0.03%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateVi::Marks::setFinishEditYanked
     1.04%     0.00%  kwrite           libQt5Core.so.5.11.2                [.] 0x00007f8e07a449d3
     1.03%     0.22%  kwrite           libKF5TextEditor.so.5.53.0          [.] QMapData<QChar, KTextEditor::MovingCursor*>::findNode
     1.03%     1.03%  kwrite           libQt5Core.so.5.11.2                [.] QRingBuffer::reserve
     1.00%     0.62%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::MovingCursor::toCursor

REPOSITORY
  R39 KTextEditor

REVISION DETAIL
  https://phabricator.kde.org/D17441

To: cullmann, dhaumann, #kate, loh.tar
Cc: kwrite-devel, kde-frameworks-devel, hase, michaelh, ngraham, bruns, demsking, cullmann, sars, dhaumann
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kwrite-devel/attachments/20181209/0a7ffb63/attachment-0001.html>


More information about the KWrite-Devel mailing list