Language

The Free and Open Productivity Suite
Released: Apache OpenOffice 4.1.15
OpenOffice.org Performance Activities





Last update: 2005-11-03, Malte Timmermann





Area Task Status Comment




Start-Up Accessing Linguistic, first start after installation DONE Some linguistic is 'installed' on start-up, when found in office installation. Done: 8s => 1,5s
Start-Up Handling of configuration items DONE Some items are not used correctly (ref counting), so created more often than needed
Start-Up Recovery service, optimize filter detection DONE Not needed anymore, new configuration
Start-Up Change dynamic link sort order STARTED Might improve startup, Solaris only feature?
Start-Up Optimize Font List Creation STARTED A lot of things are done in start-up here...
Start-Up Evaluate usage of config items in start up STARTED Remove double caching? Unnecessary items created? FontConfigItems in VCL will be changed...
Start-Up Start-Up Pattern / Performance Linux/Solaris STARTED Proportion IO/Code/Wait?, LibraryLoader?
Start-Up Native Loader: Splashscreen faster, pipe communication faster STARTED Doesn't improve start-up much, but quick user feed back (splash screen ) and double clicking files in explorer opens them faster.
Start-Up Start-Up Pattern / Performance Windows STARTED Evaluate: Libraries, Files, IO, Code
Start-Up Rebase/Bind, check for gaps PLANNED Some Windows tooling
Start-Up Prelinc (Linux, Evaluation) PLANNED Evaluate effect of prelinc
Start-Up, Load/Save Buffered IO for OSL (Evaluation) PLANNED Some code might use OSL file functions directly, not buffered
Start-Up Optimize FontListConfigItem/FontSubstCongItem PLANNED Don't read all languages when not needed
Start-Up Precompiled image list for toolbars PLANNED Helps also size of user/config, Office on Server. Do in post process?
Start-Up Configuration, check for more improvements PLANNED Dirty flag and version stamp, instead of file stat? share/registry, share/unopackage
Start-Up Configuration, known possible improvements PLANNED See issue i52328
Start-Up Optimize Menu Implementation PLANNED MenuBar first, sub menus on demand, better in background
Start-Up Optimize SvtLinguConfig PLANNED Don't fill all members in start-up, get data on demand
Start-Up Shorter symbols (Linux/Solaris), Evaluation LATER Shorten symbols in libraries, makes searches faster, but makes problems with debugging, crash reports
Start-Up Template component LATER Scanning lot of files, provide configuration snippets?
Start-Up Split Toolkit library LATER The UnoControls are only needed when we have form controls, and we would have less exports
Start-Up Design changes in SFX (startup phase) LATER Andreas has details in mind...
Start-Up Change toolbar controllers to UnoControllers LATER May be it doesn't help much for performance, but also for getting rid of old code
Start-Up Move Startup code from SFX to Framework LATER For avoiding SFX library in backing window
Start-Up, Memory Size of RDB files, memory consumption STARTED Structure of rdb files leads to unnecessary large files and memory consumption
Start-Up File order on disc STARTED Order files on disc so it matches the access order when starting OOo












Load/Save Optimize Load/Save OpenDocument files, OLE external formats DONE Copy packed streams, instead of unpacking source, packing into destination storage
Load/Save Optimize Load/Save OpenDocument files, OLE own formats STARTED Have to be handled a little bit different then external OLE...
Load/Save Optimize Load/Save OpenDocument Presentation STARTED
Load/Save Optimize Load/Save PowerPoint STARTED convert later, load lazy...
Load/Save Optimize Load/Save OpenDocument Spreadsheet STARTED
Load/Save Optimize Load/Save OpenDocument Text STARTED
Load/Save Optimize Save OpenDocument files, Images PLANNED If image didn't change, quickly copy picture stream, see OLE optimization
Load/Save Improve graphic identification in GfxMgr PLANNED Faster checksum for images, and only when necessary
Load/Save Automatic Styles for character attributes PLANNED They are styles in XML anyway, so could quickly be assigned
Load/Save Optimize Load/Save Excel PLANNED
Load/Save Progressbar optimizations PLANNED Less reschedules
Load/Save Expat-wrapper/SAX optimizations, SAX? PLANNED Optimizations here can help all applications
Load/Save Optimize Load/Save Word LATER Wait for new filter component
Load/Save Optimize Load/Save OpenDocument Chart LATER Wait for new Chart












Rendering/Layout Slide Sorter, create previews faster STARTED Changes in framework, bigger cache, configurable size
Presentation Presentation mode (Canves, BaseGfx) STARTED VCL Canvas? Software renderer based on X11?
Presentation SlideShow first start STARTED HW detection, DirectX, ...
Rendering Drawing Engine architecure and performance STARTED Evaluations done. Primitives Part I: Minimum in Paint via VC, then rest of Paint, then change to Canvas
Rendering/Layout Get previews from image files STARTED Don't read/create full image, if only preview or smaller image is needed
Rendering/Layout Taskpanel, create thumb nails more quickly STARTED Search template files, get previews. Check: Multiple mimetype detection? One when gathering all files (framework), an other when sorting out the needed ones (impress)
Presentation View Changing views should be faster PLANNED
Runtime Basic Performance PLANNED Evaluate, it's unclear if some macros are slow because of Basic Runtime, or because of API implementations
Rendering Improve Bitmap painting in GfxMgr LATER Current implementation with VCL is quite slow sometimes
Rendering/Layout Remove unnecessary font cache LATER Also affects memory consumption
Rendering/Layout Mailmerge with large databse LATER CCTOR for SwDock
Runtime Drag&Drop, Clipboard LATER DrawingObject, OLE, should be done on demand. OLE: A lot of file copies are done on Edit/Copy, then again on Edit/Paste...
Layout Change Maser Page in big document (Evaluate) LATER How long does it take to re-render all pages when the master page changes?
Layout Layout Performance with hidden change tracking LATER When change tracking is not visible, layouting becomes quite slow...

DONE = done, STARTED = started / in progress, PLANNED = planned in near future, LATER = Might be done some time

If you would like to work on one of these things, please write an email to Malte Timmermann, so he can provide more details and can point you to people who are the experts in that specific area.

Apache Software Foundation

Copyright & License | Privacy | Contact Us | Donate | Thanks

Apache, OpenOffice, OpenOffice.org and the seagull logo are registered trademarks of The Apache Software Foundation. The Apache feather logo is a trademark of The Apache Software Foundation. Other names appearing on the site may be trademarks of their respective owners.