[Konsole-devel] [konsole] [Bug 354082] high cpu usage for screen redrawing with qt5.5
wojtek via KDE Bugzilla
bugzilla_noreply at kde.org
Wed Oct 21 13:26:15 UTC 2015
https://bugs.kde.org/show_bug.cgi?id=354082
--- Comment #3 from wojtek <wojtask9 at wp.pl> ---
QPainter::drawText() causes high CPU usage.
Callgrind when CPU goes 100%
Frame: Ir Backtrace for Thread 1
[ 0] 4,731,312 0x0000000000042a20 (315421 x)
[ 1] 139,363,373 __strtof_internal (367991 x)
[ 2] 769,839,725 _IO_vfscanf (893695 x)
[ 3] 902,211,714 vsscanf (893695 x)
[ 4] 223,944,842 sscanf (52570 x)
[ 5] 125,954,300 FT_Library_SetLcdFilter (26285 x)
[ 6] 5,813,230,932 QFontEngineFT::loadGlyph(QFontEngineFT::QGlyphSet*,
unsigned int, QFixed, QFontEngine::GlyphFormat, bool) const (52512 x)
[ 7] 4,526,732,790 QFontEngineFT::loadGlyphFor(unsigned int, QFixed,
QFontEngine::GlyphFormat, QTransform const&, bool) (26545 x)
[ 8] 5,876,314,105 QFontEngineFT::lockedAlphaMapForGlyph(unsigned int,
QFixed, QFontEngine::GlyphFormat, QTransform const&, QPoint*) (26545 x)
[ 9] 5,880,075,343 QRasterPaintEngine::drawCachedGlyphs(int, unsigned int
const*, QFixedPoint const*, QFontEngine*) (245 x)
[10] 5,881,099,208 QRasterPaintEngine::drawTextItem(QPointF const&,
QTextItem const&) (245 x)
[11] 5,882,249,055 0x00000000002e0500 (245 x)
[12] 5,866,103,556 QTextLine::draw(QPainter*, QPointF const&,
QTextLayout::FormatRange const*) const (215 x)
[13] 5,935,230,553 0x00000000002d6620 (245 x)
[14] 5,917,082,161 QPainter::drawText(QRect const&, int, QString const&,
QRect*) (214 x)
[15] 5,917,687,848 Konsole::TerminalDisplay::drawCharacters(QPainter&,
QRect const&, QString const&, Konsole::Character const*, bool) (214 x)
[16] 5,918,124,988 Konsole::TerminalDisplay::drawTextFragment(QPainter&,
QRect const&, QString const&, Konsole::Character const*) (214 x)
[17] 3,910,286,730 Konsole::TerminalDisplay::drawContents(QPainter&, QRect
const&) (6 x)
[18] 3,848,926,916 Konsole::TerminalDisplay::paintEvent(QPaintEvent*) (4 x)
[19] 3,848,949,537 QWidget::event(QEvent*) (7 x)
[20] 5,943,738,468 Konsole::TerminalDisplay::event(QEvent*) (107 x)
[21] 5,984,771,204 QApplicationPrivate::notify_helper(QObject*, QEvent*)
(2415 x)
[22] 5,984,939,256 QApplication::notify(QObject*, QEvent*) (2415 x)
[23] 5,951,145,765 QCoreApplication::notifyInternal(QObject*, QEvent*) (36
x)
[24] 3,864,521,726 QWidgetPrivate::sendPaintEvent(QRegion const&) (7 x)
[25] 3,868,309,475 QWidgetPrivate::drawWidget(QPaintDevice*, QRegion
const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) (5 x)
[26] 3,855,962,842 0x00000000001685a0 (3 x)
[27] 3,855,963,001 0x0000000000169ca0 (4 x)
[28] 3,855,963,174 QWidgetPrivate::syncBackingStore() (4 x)
[29] 3,856,152,888 QWidget::event(QEvent*) (159 x)
[30] 3,856,163,443 QMainWindow::event(QEvent*) (155 x)
[31] 3,856,267,760 KMainWindow::event(QEvent*) (154 x)
[32] 3,856,086,968 KXmlGuiWindow::event(QEvent*) (16 x)
[33] 6,156,252,233 QApplicationPrivate::notify_helper(QObject*, QEvent*)
(491 x)
[34] 6,156,285,205 QApplication::notify(QObject*, QEvent*) (491 x)
[35] 4,041,255,892 QCoreApplication::notifyInternal(QObject*, QEvent*) (395
x)
[36] 4,041,424,608 QCoreApplicationPrivate::sendPostedEvents(QObject*, int,
QThreadData*) (96 x)
[37] 4,041,432,288 QCoreApplication::sendPostedEvents(QObject*, int) (96 x)
[38] 4,041,433,720 0x00000000002a5200 (96 x)
[39] 6,156,572,354 g_main_context_dispatch (110 x)
[40] 6,156,851,601 0x000000000004b920 (110 x)
[41] 5,985,678,816 g_main_context_iteration (105 x)
[42] 5,985,776,834
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (105
x)
[43] 6,156,933,240 0x000000000006d3a0 (106 x)
[44] 6,156,934,088
QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (106 x)
[45] 6,156,935,580 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
(1 x)
[46] 6,156,938,243 0x0000000000015060 (1 x)
[47] 6,156,938,674 QCoreApplication::exec() (1 x)
[48] 6,156,941,246 0x0000000000015060 (1 x)
[49] 6,157,137,483 QGuiApplication::exec() (1 x)
[50] 6,157,139,997 0x0000000000015060 (1 x)
[51] 6,157,140,003 QApplication::exec() (1 x)
[52] 6,157,142,492 0x0000000000015060 (1 x)
[53] 6,411,194,200 kdemain (1 x)
[54] 6,411,194,808 0x0000000000015060 (1 x)
[55] 6,411,194,823 main (1 x)
[56] 6,411,195,026 (below main) (1 x)
[57] 6,411,200,813 0x0000000000015060 (1 x)
[58] 6,411,200,829 _start (1 x)
[59] . 0x0000000000000c40
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the konsole-devel
mailing list