Difference between revisions of "Performance"

From Apache OpenOffice Wiki
Jump to: navigation, search
(Approaches being worked on)
(system issues)
Line 4: Line 4:
  
 
=== system issues ===
 
=== system issues ===
* Linux / Linking - relocation processing is very slow ( [http://ooocon-ljudmila.kiberpipa.org/media/Bloated_Michael_Meeks/video.ogg ogg video],  [http://go-oo.org/~michael/performance.odp odp slides] ) two possible ways to fix that
+
* Linux / Linking - relocation processing is very slow ( [http://ooocon-ljudmila.kiberpipa.org/media/Bloated_Michael_Meeks/video.ogg ogg video],  [http://go-oo.org/~michael/performance.odp odp slides] ) several possible ways to fix that
 
** re-ordering symbol & elf hash tables to improve cache locality, lots of good & simple ideas here.
 
** re-ordering symbol & elf hash tables to improve cache locality, lots of good & simple ideas here.
 
** -Bdirect implementation [http://sourceware.org/ml/binutils/2005-10/msg00436.html] - gaining little traction.
 
** -Bdirect implementation [http://sourceware.org/ml/binutils/2005-10/msg00436.html] - gaining little traction.
 +
** exporting Vague linkage more cleverly & using RTLD_LOCAL where possible
 +
** basic linker optimizations:
 +
*** don't export *UND* in .hash table
 +
*** sort syms & dynsym entries more intelligently
 +
*** .hashvals optimisation
 
* Linux / I/O scheduling & pre-loading is poor
 
* Linux / I/O scheduling & pre-loading is poor
  

Revision as of 19:45, 17 March 2006

As George Ou has famously said, "It doesn't matter how fast the CPU is, OpenOffice is just bloated."

Known areas for improvement

system issues

  • Linux / Linking - relocation processing is very slow ( ogg video, odp slides ) several possible ways to fix that
    • re-ordering symbol & elf hash tables to improve cache locality, lots of good & simple ideas here.
    • -Bdirect implementation [1] - gaining little traction.
    • exporting Vague linkage more cleverly & using RTLD_LOCAL where possible
    • basic linker optimizations:
      • don't export *UND* in .hash table
      • sort syms & dynsym entries more intelligently
      • .hashvals optimisation
  • Linux / I/O scheduling & pre-loading is poor

General I/O & memory issues

  • Configuration information scattered across many files
  • UI configuration - tons of scattered files
  • .rdb files - loads of empty space, mmap + random access pattern

Helpful Tooling and Resources

Approaches being worked on

Other Pages

This Wiki page should become the ultimate authority on performance issues. Meanwhile, here are links to performance informationat other places

Personal tools