SlideShare a Scribd company logo
1 of 29
Niklas Nebel Sun Microsystems PERFORMANCE IMPROVEMENTS IN CALC
Agenda ,[object Object]
Local optimizations
Handling sheets separately
DataPilot performance
Load & save outlook
Introduction and Context
Performance work in all of OOo ,[object Object]
Writer load performance ,[object Object],[object Object],[object Object],[object Object],[object Object]
Recalculation: Up to 20 times faster (extreme case)
Local Optimizations
API Usage When Saving Text Cells ,[object Object]
Single quote character added if text can be parsed as a number
Unnecessary parsing step
Can take up to 17% of CPU time
Querying the Document Null Date ,[object Object]
File format: XML Schema dates ( ≈   ISO 8601)
Utility method for conversion ,[object Object]
Several UNO calls ,[object Object]
10% of CPU time if only date cells are used
Collecting Formatted Cell Ranges ,[object Object]
Keep a list of ranges for each set of formats
Try to join adjacent ranges ,[object Object],[object Object],[object Object]
Formula Optimizations ,[object Object]
Operators, separators, parentheses are not
Reduce case conversion calls ,[object Object],[object Object],[object Object]
Use std::nth_element STL method instead
Faster calculation after loading
Formula Recalculation (1) ,[object Object]

More Related Content

Viewers also liked

Reliable interoperation between OpenOffice & MS office by UOML
Reliable interoperation between OpenOffice & MS office by UOMLReliable interoperation between OpenOffice & MS office by UOML
Reliable interoperation between OpenOffice & MS office by UOML
Alexandro Colorado
 
Walking on water - hot news from the Mac OS X Aqua port
Walking on water - hot news from the Mac OS X Aqua portWalking on water - hot news from the Mac OS X Aqua port
Walking on water - hot news from the Mac OS X Aqua port
Alexandro Colorado
 

Viewers also liked (9)

What open source lovers want?
What open source lovers want?What open source lovers want?
What open source lovers want?
 
Introducing ODF to mobile platforms
Introducing ODF to mobile platformsIntroducing ODF to mobile platforms
Introducing ODF to mobile platforms
 
UX Workshop
UX WorkshopUX Workshop
UX Workshop
 
mproving Impress Through Iterative Design and Development
mproving Impress Through Iterative Design and Developmentmproving Impress Through Iterative Design and Development
mproving Impress Through Iterative Design and Development
 
Open For Business
Open For Business Open For Business
Open For Business
 
Reliable interoperation between OpenOffice & MS office by UOML
Reliable interoperation between OpenOffice & MS office by UOMLReliable interoperation between OpenOffice & MS office by UOML
Reliable interoperation between OpenOffice & MS office by UOML
 
Reviving the BizDev Project
Reviving the BizDev ProjectReviving the BizDev Project
Reviving the BizDev Project
 
Walking on water - hot news from the Mac OS X Aqua port
Walking on water - hot news from the Mac OS X Aqua portWalking on water - hot news from the Mac OS X Aqua port
Walking on water - hot news from the Mac OS X Aqua port
 
Achievements
AchievementsAchievements
Achievements
 

Similar to Performance Improvements

Web scale MySQL at Facebook (Domas Mituzas)
Web scale MySQL at Facebook (Domas Mituzas)Web scale MySQL at Facebook (Domas Mituzas)
Web scale MySQL at Facebook (Domas Mituzas)
Ontico
 
Chapter 04
Chapter 04Chapter 04
Chapter 04
Google
 
Ch10 OS
Ch10 OSCh10 OS
Ch10 OS
C.U
 

Similar to Performance Improvements (20)

Windows
WindowsWindows
Windows
 
Web scale MySQL at Facebook (Domas Mituzas)
Web scale MySQL at Facebook (Domas Mituzas)Web scale MySQL at Facebook (Domas Mituzas)
Web scale MySQL at Facebook (Domas Mituzas)
 
Chapter 04
Chapter 04Chapter 04
Chapter 04
 
Chapter 9 - Virtual Memory
Chapter 9 - Virtual MemoryChapter 9 - Virtual Memory
Chapter 9 - Virtual Memory
 
Comparing sql and nosql dbs
Comparing sql and nosql dbsComparing sql and nosql dbs
Comparing sql and nosql dbs
 
OSCh10
OSCh10OSCh10
OSCh10
 
Ch10 OS
Ch10 OSCh10 OS
Ch10 OS
 
OS_Ch10
OS_Ch10OS_Ch10
OS_Ch10
 
UNC309 - Getting the Most out of Microsoft Exchange Server 2010: Performance ...
UNC309 - Getting the Most out of Microsoft Exchange Server 2010: Performance ...UNC309 - Getting the Most out of Microsoft Exchange Server 2010: Performance ...
UNC309 - Getting the Most out of Microsoft Exchange Server 2010: Performance ...
 
FOWA Scaling The Lamp Stack Workshop
FOWA Scaling The Lamp Stack WorkshopFOWA Scaling The Lamp Stack Workshop
FOWA Scaling The Lamp Stack Workshop
 
Memory comp
Memory compMemory comp
Memory comp
 
Repository performance tuning
Repository performance tuningRepository performance tuning
Repository performance tuning
 
Ms sql server architecture
Ms sql server architectureMs sql server architecture
Ms sql server architecture
 
ikh311-06
ikh311-06ikh311-06
ikh311-06
 
HT2010 Paper Presentation
HT2010 Paper PresentationHT2010 Paper Presentation
HT2010 Paper Presentation
 
08 Operating System Support
08  Operating  System  Support08  Operating  System  Support
08 Operating System Support
 
AWS RDS Migration Tool
AWS RDS Migration Tool AWS RDS Migration Tool
AWS RDS Migration Tool
 
Main Memory Management in Operating System
Main Memory Management in Operating SystemMain Memory Management in Operating System
Main Memory Management in Operating System
 
Chapter 8 - Main Memory
Chapter 8 - Main MemoryChapter 8 - Main Memory
Chapter 8 - Main Memory
 
Vam: A Locality-Improving Dynamic Memory Allocator
Vam: A Locality-Improving Dynamic Memory AllocatorVam: A Locality-Improving Dynamic Memory Allocator
Vam: A Locality-Improving Dynamic Memory Allocator
 

More from Alexandro Colorado

ChamiloCon: Recursos de Software Libre
ChamiloCon: Recursos de Software Libre ChamiloCon: Recursos de Software Libre
ChamiloCon: Recursos de Software Libre
Alexandro Colorado
 
Introducción al curso de Extensiones de OpenOffice
Introducción al curso de Extensiones de OpenOfficeIntroducción al curso de Extensiones de OpenOffice
Introducción al curso de Extensiones de OpenOffice
Alexandro Colorado
 

More from Alexandro Colorado (20)

Bitcuners revolucion blockchain
Bitcuners revolucion blockchainBitcuners revolucion blockchain
Bitcuners revolucion blockchain
 
Presentacion Krita
Presentacion KritaPresentacion Krita
Presentacion Krita
 
Bitcuners porque bitcoins
Bitcuners porque bitcoinsBitcuners porque bitcoins
Bitcuners porque bitcoins
 
ChamiloCon Enseñando con Tecnología
ChamiloCon Enseñando con TecnologíaChamiloCon Enseñando con Tecnología
ChamiloCon Enseñando con Tecnología
 
Curso de desarrollo web para principiantes
Curso de desarrollo web para principiantesCurso de desarrollo web para principiantes
Curso de desarrollo web para principiantes
 
ChamiloCon: Recursos de Software Libre
ChamiloCon: Recursos de Software Libre ChamiloCon: Recursos de Software Libre
ChamiloCon: Recursos de Software Libre
 
Krita - Tu tambien puedes pintar un arbol Feliz
Krita - Tu tambien puedes pintar un arbol FelizKrita - Tu tambien puedes pintar un arbol Feliz
Krita - Tu tambien puedes pintar un arbol Feliz
 
Gobernancia y particionacion en comunidades de Software Libre v2
Gobernancia y particionacion en comunidades de Software Libre v2Gobernancia y particionacion en comunidades de Software Libre v2
Gobernancia y particionacion en comunidades de Software Libre v2
 
gcloud
gcloudgcloud
gcloud
 
Blender - FLISOL Cancun 2014
Blender - FLISOL Cancun 2014Blender - FLISOL Cancun 2014
Blender - FLISOL Cancun 2014
 
The Hitchhicker's Guide to Opensource
The Hitchhicker's Guide to OpensourceThe Hitchhicker's Guide to Opensource
The Hitchhicker's Guide to Opensource
 
OpenERP: El ecosistema de negocios
OpenERP: El ecosistema de negociosOpenERP: El ecosistema de negocios
OpenERP: El ecosistema de negocios
 
Aprendiendo GnuPG
Aprendiendo GnuPGAprendiendo GnuPG
Aprendiendo GnuPG
 
Catalogo decursos
Catalogo decursosCatalogo decursos
Catalogo decursos
 
Practicas virtuales v2.2
Practicas virtuales v2.2Practicas virtuales v2.2
Practicas virtuales v2.2
 
Introducción al curso de Extensiones de OpenOffice
Introducción al curso de Extensiones de OpenOfficeIntroducción al curso de Extensiones de OpenOffice
Introducción al curso de Extensiones de OpenOffice
 
Comunidades software libre
Comunidades software libreComunidades software libre
Comunidades software libre
 
Practicas virtuales v2
Practicas virtuales v2Practicas virtuales v2
Practicas virtuales v2
 
Practicas virtuales
Practicas virtualesPracticas virtuales
Practicas virtuales
 
Economia digital
Economia digitalEconomia digital
Economia digital
 

Recently uploaded

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Recently uploaded (20)

Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 

Performance Improvements