Andreas Jaeger wrote:
Some things that come directly to my mind: * bootspeed * How long does it take on a freshly started system to start OOo? * under a defined workload (some disk I/O work), how long does a certain (to be defined) action take.
For optimization of application startup times I think this should be considered: (from the gcc 4.0 changelog) The -fvisibility option has been added which allows the default ELF visibility of all symbols to be set per compilation and the new #pragma GCC visibility preprocessor command allows the setting of default ELF visibility for a region of code. Using -fvisibility=hidden especially in combination with the new -fvisibility-inlines-hidden can yield substantial improvements in output binary quality including avoiding PLT indirection overheads, reduction of the exported symbol count by up to 60% (with resultant improvements to link and load times), better scope for the optimizer to improve code and up to a 20% reduction in binary size. Using these options correctly yields a binary with a similar symbol count to a Windows DLL. Perhaps more importantly, this new feature finally allows (with careful planning) complete avoidance of symbol clashes when manually loading shared objects with RTLD_GLOBAL, thus finally solving problems many projects such as python were forced to use RTLD_LOCAL for (with its resulting issues for C++ correctness). You can find more information about using these options at http://gcc.gnu.org/wiki/Visibility. -- Jens Siebert