Difference between revisions of "Impress/Performance/OpenDocument"

From Apache OpenOffice Wiki
Jump to: navigation, search
m (Results from analyze of DEV300m10 with sleepy under windows)
(Ideas for improvement)
Line 13: Line 13:
  
 
- void SdrObject::SetOutlinerParaObject(OutlinerParaObject* pTextObject) should not call GetCurrentBoundRect() if the document is locked while loading.
 
- void SdrObject::SetOutlinerParaObject(OutlinerParaObject* pTextObject) should not call GetCurrentBoundRect() if the document is locked while loading.
 +
- ImpEditEngine::FormatAndUpdate( EditView* pCurView ) is called very often, I think there is much redundancy

Revision as of 14:56, 11 February 2009

Phase 1: Analyze

Results from analyze of DEV300m10 with sleepy under windows

  • xml import takes up nearly all of the time during load, that is as expected
  • during xml import, nearly all time is taken by SvXMLImport::startElement, that is also expected
    • in SvXMLImport::startElement, SdXMLShapeContext::AddShape takes 75% and SdXMLShapeContext::SetStyle only 21%, this is interesting
      • nearly all time is spend in SdDrawPage::add
        • This is mainly used in SdPage::SetObjText (41%), SdrObject::RecalcBoundRect(37%) and SdrObject::SetStyleSheet(14%)
          • And interestingly in SdPage::SetObjText the majority is spend in SdrObject::GetCurrentBoundRect(), I think we have our first bottleneck winner :-)

Ideas for improvement

- void SdrObject::SetOutlinerParaObject(OutlinerParaObject* pTextObject) should not call GetCurrentBoundRect() if the document is locked while loading. - ImpEditEngine::FormatAndUpdate( EditView* pCurView ) is called very often, I think there is much redundancy

Personal tools