Difference between revisions of "Performance/Reorder Symbols For Libraries"
From Apache OpenOffice Wiki
(New page: = Windows = The [http://wiki.services.openoffice.org/wiki/Performance/OOo31_LibrariesOnStartup#Cold_startup_Writer_.28without_AV_real-time_protection.29 comprehensive analysis] of the col...) |
(→Windows) |
||
Line 1: | Line 1: | ||
− | = | + | = Reorder symbols for libraries to improve file I/O = |
− | The [http://wiki.services.openoffice.org/wiki/Performance/OOo31_LibrariesOnStartup#Cold_startup_Writer_.28without_AV_real-time_protection.29 comprehensive analysis] of the cold start up behavior of OpenOffice.org shows that file I/O is main bottleneck. About | + | The [http://wiki.services.openoffice.org/wiki/Performance/OOo31_LibrariesOnStartup#Cold_startup_Writer_.28without_AV_real-time_protection.29 comprehensive analysis] of the cold start up behavior of OpenOffice.org shows that file I/O is main bottleneck. About 80% of the start up time is spent waiting for data from the disk. The topmost part of file I/O depends on library loading. This part describes what can be done to reduce I/O time for loading OpenOffice.org libraries. |
− | + | == Windows == | |
== Microsoft Visual Studio 2008 C/C++ compiler== | == Microsoft Visual Studio 2008 C/C++ compiler== | ||
+ | |||
+ | <source lang="text"> | ||
+ | -CODEGENERIERUNG- | ||
+ | |||
+ | /GF Schreibgeschütztes Stringpooling aktivieren | ||
+ | /Gm[-] Minimale Neuerstellung aktivieren/Gy[-] Separate Funktionen für Linker | ||
+ | /GS[-] Sicherheitsüberprüfungen aktivieren | ||
+ | /GR[-] C++-RTTI aktivieren | ||
+ | /GX[-] C++-EH aktivieren (identisch mit /EHsc) | ||
+ | /EHs C++-EH aktivieren (ohne SEH-Ausnahmen) | ||
+ | /EHa C++-EH aktivieren (mit SEH-Ausnahmen) | ||
+ | /EHc nothrow als Standard für externes "C" | ||
+ | /fp:<except[-]|fast|precise|strict> Gleitkommamodell wählen: | ||
+ | except[-] -Gleitkommaausnahmen beim Generieren von Code berücksichtigen | ||
+ | fast - fast-Gleitkommamodell; Ergebnisse sind weniger vorhersehbar. | ||
+ | precise - precise-Gleitkommamodell; Ergebnisse sind vorhersehbar. | ||
+ | strict - strict-Gleitkommamodell (impliziert /fp:except) | ||
+ | /Qfast_transcendentals generieren auch bei /fp:expect systeminterne Inline-FP. | ||
+ | /GL[-] Link-Zeitcodegenerierung aktivieren | ||
+ | /GA Für Windows-Anwendung optimieren | ||
+ | /Ge Stapelüberprüfung für alle Funktionen erzwingen | ||
+ | /Gs[num] Stapelüberprüfungsaufrufe kontrollieren | ||
+ | /Gh _penter-Funktionsaufruf aktivieren /GH _pexit-Funktionsaufruf aktivieren | ||
+ | /GT Fiber-sichere TLS-Zugriffe generieren | ||
+ | /RTC1 Schnelle Überprüfungen aktivieren (/RTCsu) | ||
+ | /RTCc Konvertierung für kleinere Typenüberprüfungen | ||
+ | /RTCs Stapelrahmen-Laufzeitüberprüfung | ||
+ | /RTCu Nicht initialisierte lokale Syntaxüberprüfungen | ||
+ | </code> |
Revision as of 20:43, 21 March 2009
Reorder symbols for libraries to improve file I/O
The comprehensive analysis of the cold start up behavior of OpenOffice.org shows that file I/O is main bottleneck. About 80% of the start up time is spent waiting for data from the disk. The topmost part of file I/O depends on library loading. This part describes what can be done to reduce I/O time for loading OpenOffice.org libraries.
Windows
Microsoft Visual Studio 2008 C/C++ compiler
-CODEGENERIERUNG- /GF Schreibgeschütztes Stringpooling aktivieren /Gm[-] Minimale Neuerstellung aktivieren/Gy[-] Separate Funktionen für Linker /GS[-] Sicherheitsüberprüfungen aktivieren /GR[-] C++-RTTI aktivieren /GX[-] C++-EH aktivieren (identisch mit /EHsc) /EHs C++-EH aktivieren (ohne SEH-Ausnahmen) /EHa C++-EH aktivieren (mit SEH-Ausnahmen) /EHc nothrow als Standard für externes "C" /fp:<except[-]|fast|precise|strict> Gleitkommamodell wählen: except[-] -Gleitkommaausnahmen beim Generieren von Code berücksichtigen fast - fast-Gleitkommamodell; Ergebnisse sind weniger vorhersehbar. precise - precise-Gleitkommamodell; Ergebnisse sind vorhersehbar. strict - strict-Gleitkommamodell (impliziert /fp:except) /Qfast_transcendentals generieren auch bei /fp:expect systeminterne Inline-FP. /GL[-] Link-Zeitcodegenerierung aktivieren /GA Für Windows-Anwendung optimieren /Ge Stapelüberprüfung für alle Funktionen erzwingen /Gs[num] Stapelüberprüfungsaufrufe kontrollieren /Gh _penter-Funktionsaufruf aktivieren /GH _pexit-Funktionsaufruf aktivieren /GT Fiber-sichere TLS-Zugriffe generieren /RTC1 Schnelle Überprüfungen aktivieren (/RTCsu) /RTCc Konvertierung für kleinere Typenüberprüfungen /RTCs Stapelrahmen-Laufzeitüberprüfung /RTCu Nicht initialisierte lokale Syntaxüberprüfungen </code>