D17441: tune editing actions for large number of small edits

Christoph Cullmann noreply at phabricator.kde.org
Sun Dec 9 00:07:10 GMT 2018


cullmann added a comment.


  New state:
  
    85.24%     0.00%  kwrite           kwrite                              [.] main
    85.21%     0.00%  kwrite           libc-2.28.so                        [.] __libc_start_main
    85.19%     0.00%  kwrite           kwrite                              [.] _start
    84.96%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] QApplicationPrivate::notify_helper
    84.96%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] QApplication::notify
    84.95%     0.00%  kwrite           libQt5Core.so.5.11.2                [.] QCoreApplication::notifyInternal2
    84.84%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] QWidget::event
    84.63%     0.00%  kwrite           libQt5Core.so.5.11.2                [.] QEventLoop::exec
    84.62%     0.00%  kwrite           libQt5Core.so.5.11.2                [.] QCoreApplication::exec
    83.54%     2.38%  kwrite           libQt5Core.so.5.11.2                [.] QMetaObject::activate
    83.43%     0.00%  kwrite           libQt5Gui.so.5.11.2                 [.] QWindowSystemInterface::sendWindowSystemEvents
    83.43%     0.00%  kwrite           libQt5XcbQpa.so.5.11.2              [.] 0x00007fd225febdac
    83.43%     0.00%  kwrite           libQt5Gui.so.5.11.2                 [.] QGuiApplicationPrivate::processWindowSystemEvent
    83.42%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] 0x00007fd22db585d4
    83.42%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] QApplicationPrivate::sendMouseEvent
    83.42%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] 0x00007fd22db5598b
    83.42%     0.00%  kwrite           libQt5Gui.so.5.11.2                 [.] QGuiApplicationPrivate::processMouseEvent
    83.42%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] QAbstractButton::mouseReleaseEvent
    82.87%     0.00%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateSearchBar::qt_static_metacall
    82.87%     0.00%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateSearchBar::replaceAll
    82.87%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] QAbstractButton::clicked
    82.87%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] 0x00007fd22dbe5a1b
    82.87%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] 0x00007fd22dbe6e11
    82.81%     0.25%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateSearchBar::findAll
    66.79%     0.24%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateMatch::replace
    59.00%     0.10%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::replaceText
    29.71%     0.22%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::insertText
    29.14%     0.12%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::removeText
    28.54%     0.18%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::editInsertText
    28.09%     0.27%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::editRemoveText
    16.95%     0.19%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBuffer::removeText
    15.63%     0.17%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBuffer::insertText
     9.52%     0.82%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBlock::removeText
     9.29%     0.05%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateMatch::searchText
     8.37%     0.24%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::searchText
     7.89%     0.83%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBlock::insertText
     7.82%     0.28%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateBuffer::plainLine
     7.75%     0.03%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::textInserted
     7.34%     0.27%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBuffer::line
     7.01%     0.12%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBuffer::textInserted
     6.25%     0.14%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBuffer::textRemoved
     5.96%     0.06%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::QSlotObject<void (KateVi::NormalViMode::*)(KTextEditor::Document*, KTextEditor::Range), QtPrivate::List<KTextEditor::Document*, KTextEditor::Range const&>, void>::impl
     5.95%     0.09%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::FunctionPointer<void (KateVi::NormalViMode::*)(KTextEditor::Document*, KTextEditor::Range)>::call<QtPrivate::List<KTextEditor::Document*, KTextEditor::Range const&>, void>
     5.87%     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.03%     0.09%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::textRemoved
     4.78%     0.13%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateMatch::buildReplacement
     4.57%     1.64%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBuffer::blockForLine
     4.42%     0.27%  kwrite           libKF5TextEditor.so.5.53.0          [.] KatePlainTextSearch::search
     4.38%     0.33%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::text
     4.11%     1.14%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::RefCount::deref
     4.11%     0.09%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateUndoManager::addUndoItem
     3.97%     0.05%  kwrite           libKF5TextEditor.so.5.53.0          [.] std::vector<Kate::TextRange*, std::allocator<Kate::TextRange*> >::push_back
     3.92%     0.09%  kwrite           libKF5TextEditor.so.5.53.0          [.] std::vector<Kate::TextRange*, std::allocator<Kate::TextRange*> >::emplace_back<Kate::TextRange*>
     3.81%     0.28%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextRange::checkValidity
     3.75%     0.69%  kwrite           libKF5TextEditor.so.5.53.0          [.] QString::~QString
     3.65%     0.06%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateUndoManager::slotTextRemoved
     3.60%     0.21%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateVi::NormalViMode::textInserted
     3.53%     0.04%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateLayoutCache::qt_static_metacall
     3.42%     0.35%  kwrite           libKF5TextEditor.so.5.53.0          [.] std::vector<Kate::TextRange*, std::allocator<Kate::TextRange*> >::_M_realloc_insert<Kate::TextRange*>
     3.41%     0.17%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateLineLayoutMap::slotEditDone
     3.40%     0.08%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::SwapFile::qt_static_metacall
     3.36%     0.06%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateCompletionWidget::qt_static_metacall
     3.16%     0.05%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateUndoManager::slotTextInserted
     3.14%     0.82%  kwrite           libKF5TextEditor.so.5.53.0          [.] QBasicAtomicInteger<int>::load
     2.93%     0.02%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::QSlotObject<void (KateViewInternal::*)(KTextEditor::Document*, KTextEditor::Range const&), QtPrivate::List<KTextEditor::Document*, KTextEditor::Range const&>, void>::impl
     2.93%     0.31%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateRegExpSearch::buildReplacement
     2.93%     0.02%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::FunctionPointer<void (KateViewInternal::*)(KTextEditor::Document*, KTextEditor::Range const&)>::call<QtPrivate::List<KTextEditor::Document*, KTextEditor::Range const&>, void>
     2.92%     0.36%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateUndoGroup::addItem
     2.90%     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
     2.87%     0.03%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateViewInternal::documentTextInserted
     2.82%     0.80%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateVi::Marks::setMark
     2.76%     0.37%  kwrite           libKF5TextEditor.so.5.53.0          [.] QBasicAtomicInteger<int>::deref
     2.73%     0.29%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBlock::line
     2.63%     2.26%  kwrite           libKF5TextEditor.so.5.53.0          [.] QAtomicOps<int>::load<int>
     2.54%     0.10%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentCursor::atEndOfDocument
     2.45%     0.26%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextRange::fixLookup
     2.41%     0.05%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::documentEnd
     2.41%     0.34%  kwrite           libKF5TextEditor.so.5.53.0          [.] QAtomicOps<int>::deref<int>
     2.30%     0.20%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextRange::setRange
     2.27%     0.04%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::lineLength
     2.13%     0.14%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateVi::NormalViMode::textRemoved
     2.07%     2.07%  kwrite           kwrite                              [.] std::__atomic_base<int>::operator--
     1.98%     0.14%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateCompletionWidget::insertText
     1.98%     0.10%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::SwapFile::insertText
     1.95%     0.05%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::line
     1.92%     0.25%  kwrite           libKF5TextEditor.so.5.53.0          [.] QBasicAtomicInteger<int>::ref
     1.85%     0.03%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateLayoutCache::removeText
     1.84%     0.07%  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.83%     0.04%  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.82%     0.16%  kwrite           libKF5TextEditor.so.5.53.0          [.] QSharedPointer<Kate::TextLineData>::~QSharedPointer
     1.80%     0.50%  kwrite           libKF5TextEditor.so.5.53.0          [.] QSharedPointer<Kate::TextLineData>::QSharedPointer
     1.78%     0.06%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::kateTextLine
     1.77%     0.05%  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.09%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateRegExpSearch::escapePlaintext
     1.75%     0.23%  kwrite           libKF5TextEditor.so.5.53.0          [.] QSharedPointer<Kate::TextLineData>::deref
     1.72%     0.07%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateViewInternal::documentTextRemoved
     1.71%     0.24%  kwrite           libKF5TextEditor.so.5.53.0          [.] QAtomicOps<int>::ref<int>
     1.69%     1.69%  kwrite           libKF5TextEditor.so.5.53.0          [.] QArrayData::data
     1.64%     0.02%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateLayoutCache::insertText
     1.63%     0.00%  kwrite           libc-2.28.so                        [.] __GI___libc_malloc (inlined)
     1.63%     1.63%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBlock::startLine
     1.60%     0.11%  kwrite           libKF5TextEditor.so.5.53.0          [.] std::__uninitialized_move_if_noexcept_a<Kate::TextRange**, Kate::TextRange**, std::allocator<Kate::TextRange*> >
     1.56%     0.59%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::RefCount::isShared
     1.53%     0.38%  kwrite           libQt5Core.so.5.11.2                [.] QArrayData::allocate
     1.53%     0.34%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::RefCount::ref
     1.52%     0.19%  kwrite           libKF5TextEditor.so.5.53.0          [.] QSharedPointer<Kate::TextLineData>::deref
     1.51%     0.62%  kwrite           libQt5Core.so.5.11.2                [.] QIODevice::write
     1.47%     0.03%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateRegExpSearch::buildReplacement
     1.47%     1.47%  kwrite           kwrite                              [.] std::__atomic_base<int>::operator++
     1.47%     0.10%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateVi::Marks::setLastChange
     1.43%     0.27%  kwrite           libstdc++.so.6.0.25                 [.] __dynamic_cast
     1.36%     0.10%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::SwapFile::removeText
     1.35%     0.16%  kwrite           libKF5TextEditor.so.5.53.0          [.] QVector<KTextEditor::Range>::append
     1.34%     0.22%  kwrite           libKF5TextEditor.so.5.53.0          [.] QSharedPointer<Kate::TextLineData>::ref
     1.32%     0.06%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateCompletionWidget::removeText
     1.31%     0.82%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextCursor::line
     1.31%     0.00%  kwrite           libQt5Widgets.so.5.11.2             [.] QMainWindow::event
     1.31%     0.00%  kwrite           libKF5XmlGui.so.5.53.0              [.] KMainWindow::event
     1.31%     0.17%  kwrite           libQt5Core.so.5.11.2                [.] QDataStream::operator<<
     1.31%     0.33%  kwrite           libKF5TextEditor.so.5.53.0          [.] QString::QString
     1.29%     1.29%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::Cursor::line
     1.26%     0.00%  kwrite           libKF5XmlGui.so.5.53.0              [.] KXmlGuiWindow::event
     1.24%     0.73%  kwrite           libQt5Gui.so.5.11.2                 [.] QAccessible::queryAccessibleInterface
     1.23%     0.06%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateModifiedRemoveText::KateModifiedRemoveText
     1.23%     0.12%  kwrite           libKF5TextEditor.so.5.53.0          [.] qDeleteAll<QList<KateUndoGroup*> >
     1.22%     0.07%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateModifiedInsertText::KateModifiedInsertText
     1.21%     0.09%  kwrite           libKF5TextEditor.so.5.53.0          [.] QStringList::~QStringList
     1.21%     0.00%  kwrite           libglib-2.0.so.0.5800.1             [.] g_main_context_dispatch
     1.21%     0.00%  kwrite           libQt5Core.so.5.11.2                [.] QEventDispatcherGlib::processEvents
     1.21%     0.00%  kwrite           libglib-2.0.so.0.5800.1             [.] g_main_context_iteration
     1.21%     0.00%  kwrite           libglib-2.0.so.0.5800.1             [.] 0x00007fd22a5bdf88
     1.20%     0.00%  kwrite           libQt5XcbQpa.so.5.11.2              [.] 0x00007fd225febda1
     1.20%     0.08%  kwrite           libKF5TextEditor.so.5.53.0          [.] std::__uninitialized_copy_a<std::move_iterator<Kate::TextRange**>, Kate::TextRange**, Kate::TextRange*>
     1.20%     0.06%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::plainKateTextLine
     1.20%     0.18%  kwrite           libstdc++.so.6.0.25                 [.] __cxxabiv1::__si_class_type_info::__do_dyncast
     1.17%     0.21%  kwrite           libKF5TextEditor.so.5.53.0          [.] QList<QString>::~QList
     1.15%     0.20%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::operator<
     1.15%     0.14%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextHistory::addEntry
     1.14%     0.11%  kwrite           libKF5TextEditor.so.5.53.0          [.] QSet<Kate::TextCursor*>::const_iterator::operator++
     1.14%     0.49%  kwrite           libKF5TextEditor.so.5.53.0          [.] QVector<Kate::TextBlock*>::operator[]
     1.14%     0.08%  kwrite           libKF5TextEditor.so.5.53.0          [.] std::uninitialized_copy<std::move_iterator<Kate::TextRange**>, Kate::TextRange**>
     1.14%     1.14%  kwrite           libc-2.28.so                        [.] malloc
     1.14%     0.24%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::Range::Range
     1.14%     0.03%  kwrite           libQt5Core.so.5.11.2                [.] QTimer::start
     1.12%     0.13%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBlock::updateRange
     1.12%     0.14%  kwrite           libQt5Core.so.5.11.2                [.] QObject::startTimer
     1.11%     0.00%  kwrite           [unknown]                           [.] 0xffffffffffffffff
     1.10%     0.00%  kwrite           libQt5Core.so.5.11.2                [.] QObject::event
     1.10%     0.00%  kwrite           libQt5Core.so.5.11.2                [.] QCoreApplicationPrivate::sendPostedEvents
     1.09%     0.29%  kwrite           libKF5TextEditor.so.5.53.0          [.] QTypedArrayData<Kate::TextBlock*>::begin
     1.09%     0.06%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::qMakeForeachContainer<QSet<Kate::TextCursor*>&>
     1.09%     0.00%  kwrite           libQt5Core.so.5.11.2                [.] 0x00007fd22d1459d3
     1.09%     0.32%  kwrite           libQt5Core.so.5.11.2                [.] QFileDevice::writeData
     1.08%     0.00%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::DocumentPrivate::openFile
     1.07%     0.07%  kwrite           libKF5TextEditor.so.5.53.0          [.] std::__uninitialized_copy<true>::__uninit_copy<std::move_iterator<Kate::TextRange**>, Kate::TextRange**>
     1.07%     0.17%  kwrite           libKF5TextEditor.so.5.53.0          [.] QHash<Kate::TextCursor*, QHashDummyValue>::const_iterator::operator++
     1.06%     0.00%  kwrite           libKF5TextEditor.so.5.53.0          [.] KateBuffer::openFile
     1.05%     0.17%  kwrite           libKF5TextEditor.so.5.53.0          [.] QtPrivate::QForeachContainer<QSet<Kate::TextCursor*> >::QForeachContainer
     1.05%     0.00%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextBuffer::load
     1.04%     0.26%  kwrite           libQt5Core.so.5.11.2                [.] QString::mid
     1.04%     0.05%  kwrite           libKF5TextEditor.so.5.53.0          [.] KTextEditor::MovingRange::setRange
     1.03%     0.14%  kwrite           libKF5TextEditor.so.5.53.0          [.] QMap<QChar, KTextEditor::MovingCursor*>::value
     1.03%     1.03%  kwrite           libc-2.28.so                        [.] __strcmp_avx2
     1.01%     0.18%  kwrite           libKF5TextEditor.so.5.53.0          [.] Kate::TextLoader::readLine
     1.00%     0.27%  kwrite           libQt5Core.so.5.11.2                [.] QObject::killTimer

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/023cdd9a/attachment-0001.html>


More information about the KWrite-Devel mailing list