- Delphi High Performance
- Primo? Gabrijelcic
- 324字
- 2021-06-24 19:23:03
Fine-Tuning the Code
I have stated repeatedly that the best way to improve code speed is to change the algorithm. Sometimes, however, this is just not possible because you are already using the best possible algorithm. It may also be completely impractical as changing the algorithm may require rewriting a large part of the program.
If this is the case and the code is still not running fast enough, we have multiple available options. We can start optimizing the program, by which I mean that we can start changing small parts of the program and replacing them with faster code. This is the topic of the chapter that you are currently reading.
Another option would be to rewrite a part of the program in assembler. Delphi offers quite decent support for that and we'll look into that possibility near the end of this chapter. We can also find a library that solves our problem. It could be written in an assembler or created by a compiler that produces faster code than Delphi—typically we don't care. We only have to know how to link it into our program and that will be the topic of Chapter 8, Using External Libraries.
The last option is to somehow split our problem into multiple parts and solve them in parallel. We'll dig into this approach in Chapters 5 to 7.
But first, fine-tuning the code, or how to make the program run faster with small changes. In this chapter, you'll find:
- How Delphi compiler settings can affect the program speed
- Why it is good to use local variables to store intermediate results
- How to work with the CPU window
- What happens behind the scenes when you work with different data types
- How to speed up the code by using RTL functions
- How to use an assembler to speed up the code
- How we can make SlowCode run even faster
- 數據浪潮
- 數據產品經理高效學習手冊:產品設計、技術常識與機器學習
- Python絕技:運用Python成為頂級數據工程師
- Modern Programming: Object Oriented Programming and Best Practices
- 數據庫應用基礎教程(Visual FoxPro 9.0)
- Mastering Machine Learning with R(Second Edition)
- SQL應用及誤區分析
- Flutter Projects
- 高維數據分析預處理技術
- 數據科學工程實踐:用戶行為分析與建模、A/B實驗、SQLFlow
- Python數據分析與數據化運營
- Oracle數據庫管理、開發與實踐
- 從實踐中學習sqlmap數據庫注入測試
- Filecoin原理與實現
- openGauss數據庫核心技術