官术网_书友最值得收藏!

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
主站蜘蛛池模板: 秀山| 靖州| 平罗县| 剑川县| 寿宁县| 聂荣县| 长白| 瑞昌市| 丰都县| 蚌埠市| 武宁县| 弋阳县| 博白县| 普格县| 定安县| 揭西县| 屯昌县| 平阳县| 孟津县| 冀州市| 奉贤区| 手游| 阿瓦提县| 武宣县| 武宣县| 张家港市| 伊吾县| 涡阳县| 开阳县| 清丰县| 多伦县| 斗六市| 梧州市| 海晏县| 阿拉善盟| 永登县| 肥乡县| 蕉岭县| 旬邑县| 木兰县| 普安县|