mutrace and tiles3
Boudewijn Rempt
boud at valdyas.org
Wed Sep 16 08:49:27 CEST 2009
I did exactly the same thing as with tiles1. It was much slower -- and the results are certainly puzzling, since the main contention
doesn't seem to come from the tile engine!
boud at valdiesalie:~/kde/src/shicmap/krita/ui> mutrace --hash-size=40000 krita
mutrace: 0.1 sucessfully initialized for process krita (pid 18682).
*** KisTiledDataManager::read called
X Error: BadAtom (invalid Atom parameter) 5
Major opcode: 20 (X_GetProperty)
Resource id: 0x0
Enchant dict for "en_US" 0x90dfb08
Enchant dict for "en_US" 0x90dfb08
Enchant dict for "en_US" 0x90dfb08
Enchant dict for "en_US" 0x90dfb08
Enchant dict for "en_US" 0x90dfb08
QLayout: Attempting to add QLayout "" to QWidget "KritaShape/KisToolBrushoption widget", which already has a layout
Object::connect: No such signal KoSliderCombo::valueChanged(int,bool)
Object::connect: (receiver name: 'KritaFill/KisToolGradient')
QObject::connect: Cannot connect KisDoc2::sigProgress(int) to (null)::slotProgress(int)
*** KisTiledDataManager::write called
Object::disconnect: Unexpected null parameter
Kross: "Loading the interpreter library for ruby"
Kross: "Successfully loaded Interpreter instance from library."
Kross: "RubyObject::RubyObject() method=eql?"
Kross: "RubyObject::RubyObject() method=exclude_end?"
Kross: "RubyObject::RubyObject() method=member?"
Kross: "RubyObject::RubyObject() method=step"
Kross: "RubyObject::RubyObject() method==="
Kross: "RubyObject::RubyObject() method=to_s"
Kross: "RubyObject::RubyObject() method===="
Kross: "RubyObject::RubyObject() method=hash"
Kross: "RubyObject::RubyObject() method=first"
Kross: "RubyObject::RubyObject() method=last"
Kross: "RubyObject::RubyObject() method=end"
Kross: "RubyObject::RubyObject() method=include?"
Kross: "RubyObject::RubyObject() method=each"
Kross: "RubyObject::RubyObject() method=begin"
Kross: "RubyObject::RubyObject() method=inspect"
QObject::connect: Cannot connect KoMainWindow::restoringDone() to (null)::removeUnusedOptionWidgets()
** (process:18682): WARNING **: 1 dictionaries weren't free'd.
mutrace: Showing statistics for process krita (pid 18682).
mutrace: 398743 mutexes used.
Mutex #190168 (0x0x8090c3c) first referenced by:
/usr/local/lib/libmutrace.so(pthread_mutex_lock+0x58) [0xb8035108]
/usr/lib/libglib-2.0.so.0(g_source_attach+0x97) [0xb5651ae7]
/usr/lib/libQtCore.so.4(_ZN27QEventDispatcherGlibPrivateC2EP13_GMainContext+0xc8) [0xb7f5fdf8]
/usr/lib/libQtGui.so.4 [0xb5b4ef3d]
/usr/lib/libQtGui.so.4 [0xb5b4f023]
/usr/lib/libQtGui.so.4(_ZN19QApplicationPrivate21createEventDispatcherEv+0x90) [0xb5b15640]
/usr/lib/libQtCore.so.4(_ZN16QCoreApplication4initEv+0xac) [0xb7f374dc]
/usr/lib/libQtCore.so.4(_ZN16QCoreApplicationC2ER23QCoreApplicationPrivate+0x47) [0xb7f375e7]
/usr/lib/libQtGui.so.4(_ZN12QApplicationC2ERiPPcbi+0x5a) [0xb5ab3b7a]
/usr/lib/libkdeui.so.5(_ZN12KApplicationC2Eb+0x4e) [0xb696ecbe]
/home/boud/kde/inst/lib/libkomain.so.6(_ZN13KoApplicationC1Ev+0x2e) [0xb7641d5e]
/home/boud/kde/inst/lib/libkdeinit4_krita.so(kdemain+0x16d) [0xb80309ed]
krita [0x80488b2]
Mutex #389194 (0x0x8051c18) first referenced by:
/usr/local/lib/libmutrace.so(pthread_mutex_lock+0x58) [0xb8035108]
/usr/lib/libQtCore.so.4 [0xb7e3ead7]
/usr/lib/libQtCore.so.4(_ZN6QMutex4lockEv+0x165) [0xb7e3a1f5]
/usr/lib/libQtCore.so.4(_ZN11QMetaObject7connectEPK7QObjectiS2_iiPi+0x61) [0xb7f45fc1]
/usr/lib/libQtCore.so.4(_ZN7QObject7connectEPKS_PKcS1_S3_N2Qt14ConnectionTypeE+0x3a2) [0xb7f46472]
/usr/lib/libQtGui.so.4(_ZN19QItemSelectionModelC1EP18QAbstractItemModelP7QObject+0x1fa) [0xb603657a]
/usr/lib/libQtGui.so.4(_ZN17QAbstractItemView8setModelEP18QAbstractItemModel+0x459) [0xb5fdb1b9]
/usr/lib/libQtGui.so.4(_ZN11QHeaderView8setModelEP18QAbstractItemModel+0x24d) [0xb5ff37dd]
/usr/lib/libQtGui.so.4(_ZN10QTableView8setModelEP18QAbstractItemModel+0x4d) [0xb600fabd]
/home/boud/kde/inst/lib/libkocolorwidgets.so.6(_ZN21KoResourceItemChooserC1EP31KoAbstractResourceServerAdapterP7QWidget+0xdb)
[0xb72e707b]
/home/boud/kde/inst/lib/libkritalibpaintop.so.6(_ZN15KisBrushChooserC1EP7QWidgetPKc+0x2ce) [0xb18a9eee]
/home/boud/kde/inst/lib/libkritalibpaintop.so.6(_ZN23KisBrushSelectionWidgetC1EP7QWidget+0x2df) [0xb18adc3f]
/home/boud/kde/inst/lib/libkritalibpaintop.so.6(_ZN14KisBrushOptionC1Ev+0xa8) [0xb18acb08]
Mutex #206539 (0x0x89e1b10) first referenced by:
/usr/local/lib/libmutrace.so(pthread_mutex_init+0x124) [0xb80352a4]
/usr/lib/libQtCore.so.4 [0xb7e3ed63]
/usr/lib/libQtCore.so.4(_ZN6QMutexC1ENS_13RecursionModeE+0x37) [0xb7e3a2c7]
/home/boud/kde/inst/lib/libkoresources.so.6(_ZN24KoResourceServerProviderC1Ev+0x6be) [0xb72b631e]
/home/boud/kde/inst/lib/libkoresources.so.6(_ZN24KoResourceServerProvider8instanceEv+0x4e) [0xb72b659e]
/home/boud/kde/inst/lib/kde4/karbondockersplugin.so [0xb0a87055]
/home/boud/kde/inst/lib/kde4/karbondockersplugin.so [0xb0a8c43b]
/home/boud/kde/inst/lib/libkomain.so.6(_ZN12KoMainWindow16createDockWidgetEP13KoDockFactory+0x56f) [0xb767af9f]
/home/boud/kde/inst/lib/libkomain.so.6(_ZN6KoView16createDockWidgetEP13KoDockFactory+0x3f) [0xb76a089f]
/home/boud/kde/inst/lib/libkomain.so.6(_ZN6KoViewC2EP10KoDocumentP7QWidget+0x448) [0xb76a2528]
/home/boud/kde/inst/lib/libkritaui.so.6(_ZN8KisView2C1EP7KisDoc2P7QWidget+0x4b) [0xb7cd19cb]
/home/boud/kde/inst/lib/libkritaui.so.6(_ZN7KisDoc218createViewInstanceEP7QWidget+0x3e) [0xb7c51abe]
/home/boud/kde/inst/lib/libkomain.so.6(_ZN10KoDocument10createViewEP7QWidget+0x21) [0xb764f081]
/home/boud/kde/inst/lib/libkomain.so.6(_ZN12KoMainWindow15setRootDocumentEP10KoDocument+0x353) [0xb767cd53]
/home/boud/kde/inst/lib/libkomain.so.6(_ZN10KoDocument17showStartUpWidgetEP12KoMainWindowb+0x27c) [0xb7659c9c]
Mutex #389390 (0x0x97aa5b4) first referenced by:
/usr/local/lib/libmutrace.so(pthread_mutex_lock+0x58) [0xb8035108]
/usr/lib/libglib-2.0.so.0(g_source_attach+0x97) [0xb5651ae7]
/usr/lib/libQtCore.so.4(_ZN27QEventDispatcherGlibPrivateC1EP13_GMainContext+0xc8) [0xb7f60098]
/usr/lib/libQtCore.so.4(_ZN20QEventDispatcherGlibC1EP7QObject+0x3b) [0xb7f603ab]
/usr/lib/libQtCore.so.4 [0xb7e3f3a4]
/usr/lib/libQtCore.so.4 [0xb7e3f549]
/lib/libpthread.so.0 [0xb7ddd1b5]
/lib/libc.so.6(clone+0x5e) [0xb57d73be]
Mutex #315767 (0x0x830d6a8) first referenced by:
/usr/local/lib/libmutrace.so(pthread_mutex_init+0x124) [0xb80352a4]
/usr/lib/libQtCore.so.4 [0xb7e3ed63]
/usr/lib/libQtCore.so.4(_ZN6QMutexC1ENS_13RecursionModeE+0x37) [0xb7e3a2c7]
/home/boud/kde/inst/lib/libkritalibbrush.so.6(_ZN14KisBrushServerC1Ev+0x22c) [0xb1882dbc]
/home/boud/kde/inst/lib/libkritalibbrush.so.6(_ZN14KisBrushServer8instanceEv+0x4e) [0xb1882efe]
/home/boud/kde/inst/lib/libkritalibpaintop.so.6(_ZN15KisBrushChooserC1EP7QWidgetPKc+0x274) [0xb18a9e94]
/home/boud/kde/inst/lib/libkritalibpaintop.so.6(_ZN23KisBrushSelectionWidgetC1EP7QWidget+0x2df) [0xb18adc3f]
/home/boud/kde/inst/lib/libkritalibpaintop.so.6(_ZN14KisBrushOptionC1Ev+0xa8) [0xb18acb08]
/home/boud/kde/inst/lib/kde4/kritacomplexbrush.so [0xb185a09c]
/home/boud/kde/inst/lib/kde4/kritacomplexbrush.so [0xb185a4db]
/home/boud/kde/inst/lib/kde4/kritacomplexbrush.so [0xb18571e9]
/home/boud/kde/inst/lib/kde4/kritacomplexbrush.so [0xb185770c]
/usr/lib/libkdecore.so.5(_ZN14KPluginFactory6createEPKcP7QWidgetP7QObjectRK5QListI8QVariantERK7QString+0x14c) [0xb66cd7fc]
/home/boud/kde/inst/lib/libkoplugin.so.6(_ZN14KoPluginLoader4loadERK7QStringS2_RKNS_13PluginsConfigE+0x1421) [0xb70517a1]
/home/boud/kde/inst/lib/libkritaimage.so.6(_ZN18KisPaintOpRegistry8instanceEv+0xc6) [0xb7a3e4a6]
Mutex #230783 (0x0x915dbf8) first referenced by:
/usr/local/lib/libmutrace.so(pthread_mutex_init+0x124) [0xb80352a4]
/usr/lib/libQtCore.so.4 [0xb7e3ed63]
/usr/lib/libQtCore.so.4(_ZN6QMutexC1ENS_13RecursionModeE+0x37) [0xb7e3a2c7]
/home/boud/kde/inst/lib/libkritaui.so.6(_ZN25KisResourceServerProviderC1Ev+0x317) [0xb7cb4147]
/home/boud/kde/inst/lib/libkritaui.so.6(_ZN25KisResourceServerProvider8instanceEv+0x4e) [0xb7cb463e]
/home/boud/kde/inst/lib/libkritaui.so.6 [0xb7d563b6]
/home/boud/kde/inst/lib/libkritaui.so.6 [0xb7c4363d]
/home/boud/kde/inst/lib/libkritaui.so.6 [0xb7c44067]
/home/boud/kde/inst/lib/libkritaui.so.6(_ZN8KisView29createGUIEv+0x1fd) [0xb7cce07d]
/home/boud/kde/inst/lib/libkritaui.so.6(_ZN8KisView2C1EP7KisDoc2P7QWidget+0x4e8) [0xb7cd1e68]
/home/boud/kde/inst/lib/libkritaui.so.6(_ZN7KisDoc218createViewInstanceEP7QWidget+0x3e) [0xb7c51abe]
/home/boud/kde/inst/lib/libkomain.so.6(_ZN10KoDocument10createViewEP7QWidget+0x21) [0xb764f081]
/home/boud/kde/inst/lib/libkomain.so.6(_ZN12KoMainWindow15setRootDocumentEP10KoDocument+0x353) [0xb767cd53]
/home/boud/kde/inst/lib/libkomain.so.6(_ZN10KoDocument17showStartUpWidgetEP12KoMainWindowb+0x27c) [0xb7659c9c]
/home/boud/kde/inst/lib/libkomain.so.6(_ZN13KoApplication5startEv+0xcc2) [0xb7642c52]
Mutex #100941 (0x0x87d8ee0) first referenced by:
/usr/local/lib/libmutrace.so(pthread_mutex_init+0x124) [0xb80352a4]
/usr/lib/libQtCore.so.4 [0xb7e3ed63]
/usr/lib/libQtCore.so.4(_ZN6QMutexC1ENS_13RecursionModeE+0x37) [0xb7e3a2c7]
/usr/lib/libQtCore.so.4(_ZN14QReadWriteLockC1ENS_13RecursionModeE+0x38) [0xb7e3ac28]
/home/boud/kde/inst/lib/libkritaimage.so.6 [0xb7a2444d]
/home/boud/kde/inst/lib/libkritaimage.so.6(_ZN19KisTiledDataManagerC2EjPKh+0x71) [0xb7a1fd61]
/home/boud/kde/inst/lib/libkritaimage.so.6(_ZN14KisPaintDeviceC1E16KisWeakSharedPtrI7KisNodeEPK12KoColorSpaceRK7QString+0x1b6)
[0xb7aaa566]
/home/boud/kde/inst/lib/libkritaimage.so.6(_ZN13KisPaintLayerC1E12KisSharedPtrI8KisImageERK7QStringhPK12KoColorSpace+0x158)
[0xb7ab3248]
/home/boud/kde/inst/lib/libkritaui.so.6 [0xb7cfd66d]
/home/boud/kde/inst/lib/libkritaui.so.6 [0xb7d009b7]
/home/boud/kde/inst/lib/libkritaui.so.6 [0xb7d01d81]
/home/boud/kde/inst/lib/libkritaui.so.6 [0xb7d0312a]
/home/boud/kde/inst/lib/libkritaui.so.6(_ZN7KisDoc27loadXMLERK13KoXmlDocumentP7KoStore+0x375) [0xb7c52da5]
/home/boud/kde/inst/lib/libkomain.so.6(_ZN10KoDocument33loadNativeFormatFromStoreInternalEP7KoStore+0x38a) [0xb765e23a]
/home/boud/kde/inst/lib/libkomain.so.6(_ZN10KoDocument25loadNativeFormatFromStoreERK7QString+0xa6) [0xb765ed46]
Mutex #228531 (0x0xaf101020) first referenced by:
/usr/local/lib/libmutrace.so(pthread_mutex_init+0x124) [0xb80352a4]
/usr/lib/libQtCore.so.4 [0xb7e3ed63]
/usr/lib/libQtCore.so.4(_ZN6QMutexC1ENS_13RecursionModeE+0x37) [0xb7e3a2c7]
/usr/lib/libQtCore.so.4(_ZN14QReadWriteLockC1ENS_13RecursionModeE+0x38) [0xb7e3ac28]
/home/boud/kde/inst/lib/libkritaimage.so.6 [0xb7a2530d]
/home/boud/kde/inst/lib/libkritaimage.so.6(_ZN19KisTiledDataManagerC2ERKS_+0x91) [0xb7a23111]
/home/boud/kde/inst/lib/libkritaimage.so.6(_ZN14KisPaintDeviceC1ERKS_+0xb5) [0xb7aadf45]
/home/boud/kde/inst/lib/libkritaimage.so.6(_ZN13KisPaintLayer16updateProjectionERK5QRect+0x243) [0xb7ab1973]
/home/boud/kde/inst/lib/libkritaimage.so.6 [0xb7adc9b1]
/home/boud/kde/inst/lib/libkritaimage.so.6 [0xb7ac55fa]
/home/boud/kde/inst/lib/libkritaimage.so.6 [0xb7ac575e]
/usr/lib/libQtCore.so.4(_ZN14QMetaCallEvent13placeMetaCallEP7QObject+0x2b) [0xb7f42eab]
/usr/lib/libQtCore.so.4(_ZN7QObject5eventEP6QEvent+0x2c0) [0xb7f44970]
/usr/lib/libQtGui.so.4(_ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent+0xbc) [0xb5aae7bc]
/usr/lib/libQtGui.so.4(_ZN12QApplication6notifyEP7QObjectP6QEvent+0xbe) [0xb5ab6aae]
Mutex #84154 (0x0xb0b55f08) first referenced by:
/usr/local/lib/libmutrace.so(pthread_mutex_init+0x124) [0xb80352a4]
/usr/lib/libQtCore.so.4(_ZN14QWaitConditionC1Ev+0x34) [0xb7e40374]
/usr/lib/libQtCore.so.4(_ZN14QReadWriteLockC1ENS_13RecursionModeE+0x4e) [0xb7e3ac3e]
/home/boud/kde/inst/lib/libkritaimage.so.6 [0xb7a2530d]
/home/boud/kde/inst/lib/libkritaimage.so.6(_ZN19KisTiledDataManagerC2ERKS_+0x91) [0xb7a23111]
/home/boud/kde/inst/lib/libkritaimage.so.6(_ZN14KisPaintDeviceC1ERKS_+0xb5) [0xb7aadf45]
/home/boud/kde/inst/lib/libkritaimage.so.6(_ZN13KisPaintLayer16updateProjectionERK5QRect+0x243) [0xb7ab1973]
/home/boud/kde/inst/lib/libkritaimage.so.6 [0xb7adc9b1]
/home/boud/kde/inst/lib/libkritaimage.so.6 [0xb7ac55fa]
/home/boud/kde/inst/lib/libkritaimage.so.6 [0xb7ac575e]
/usr/lib/libQtCore.so.4(_ZN14QMetaCallEvent13placeMetaCallEP7QObject+0x2b) [0xb7f42eab]
/usr/lib/libQtCore.so.4(_ZN7QObject5eventEP6QEvent+0x2c0) [0xb7f44970]
/usr/lib/libQtGui.so.4(_ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent+0xbc) [0xb5aae7bc]
/usr/lib/libQtGui.so.4(_ZN12QApplication6notifyEP7QObjectP6QEvent+0xbe) [0xb5ab6aae]
/usr/lib/libkdeui.so.5(_ZN12KApplication6notifyEP7QObjectP6QEvent+0x3d) [0xb696b72d]
Mutex #389102 (0x0x8051bb0) first referenced by:
/usr/local/lib/libmutrace.so(pthread_mutex_lock+0x58) [0xb8035108]
/usr/lib/libQtCore.so.4 [0xb7e3ead7]
/usr/lib/libQtCore.so.4(_ZN6QMutex4lockEv+0x165) [0xb7e3a1f5]
/usr/lib/libQtCore.so.4(_ZN16QCoreApplication9postEventEP7QObjectP6QEventi+0x47) [0xb7f33e17]
/usr/lib/libQtCore.so.4(_ZN16QCoreApplication9postEventEP7QObjectP6QEvent+0x2c) [0xb7f340dc]
/usr/lib/libQtCore.so.4 [0xb7f45aad]
/usr/lib/libQtCore.so.4(_ZN11QMetaObject8activateEP7QObjectiiPPv+0x147) [0xb7f496a7]
/usr/lib/libQtCore.so.4(_ZN11QMetaObject8activateEP7QObjectPKS_iPPv+0x52) [0xb7f4a412]
/home/boud/kde/inst/lib/libkoresources.so.6(_ZN31KoAbstractResourceServerAdapter13resourceAddedEP10KoResource+0x43) [0xb72ba403]
/home/boud/kde/inst/lib/libkoresources.so.6(_ZN31KoAbstractResourceServerAdapter17emitResourceAddedEP10KoResource+0x24)
[0xb72ba434]
/home/boud/kde/inst/lib/libkritaui.so.6 [0xb7c4e8c4]
/home/boud/kde/inst/lib/libkritaui.so.6 [0xb7cb63db]
/home/boud/kde/inst/lib/libkoresources.so.6(_ZN22KoResourceLoaderThread3runEv+0x43) [0xb72b5a03]
mutrace: Showing 10 most contended mutexes:
Mutex # Locked Changed Cont. tot.Time[ms] avg.Time[ms] max.Time[ms] Flag
190168 50549916 745 234 127411.158 0.003 100.051 -.--
389194 203 143 19 1.530 0.008 0.548 -.--
206539 225 128 14 0.860 0.004 0.016 -.--
389390 4551 230 9 10.865 0.002 0.143 -.--
315767 39 29 6 0.124 0.003 0.011 -.--
230783 29 23 5 0.095 0.003 0.011 -.--
100941 43 23 2 0.173 0.004 0.017 -.--
228531 9 7 2 0.030 0.003 0.007 -.--
84154 10 5 2 0.213 0.021 0.170 -.--
389102 6 4 2 0.020 0.003 0.006 -.--
... ... ... ... ... ... ... ||||
/|||
State: x = dead, ! = inconsistent /||
Use: R = used in realtime thread /|
Type: r = RECURSIVE, e = ERRRORCHECK, a = ADAPTIVE /
Protocol: i = INHERIT, p = PROTECT
mutrace: Note that the flags column R is only valid in --track-rt mode!
mutrace: Total runtime is 559138.321 ms.
mutrace: WARNING: 11427 internal hash collisions detected. Results might not be as reliable as they could be.
mutrace: Try to increase --hash-size=, which is currently at 40000.
mutrace: WARNING: 5 internal mutex contention detected. Results might not be reliable as they could be.
mutrace: Try to increase --hash-size=, which is currently at 40000.
--
Boudewijn Rempt | http://www.valdyas.org
More information about the kimageshop
mailing list