Delphi 5 build speed
Posted on 2013-06-06
I have an application with 1.56 million lines of code in Delphi 5. I am compiling it on a Lenovo computer i5, 6 GB of RAM, 500 GB 7200 RPM hard drive. When I build the project, it takes approximately 15 min. The first 500,000 lines of code fly by, and then the compiler indicates it is working on one unit at a time, often taking many seconds to compile a single unit with perhaps 1000 lines of code within it. The project is not build any faster when I use DCC32.EXE ( outside the IDE). I don't know why the build starts out so fast and then slows down so much. My best guess is that there are many unit dependencies which Delphi is trying to sort out before compiling the next unit. It is not feasible for me to break it into packages; the project builds it into 2 different versions which use virtually all of the units based on conditional compiler directives embedded within the units. When I look at the Resource Monitor, I am only using 25% of the CPU, and about 4 GB of the 6 GB of RAM. It does not appear that the hard drive is getting much use at all when it slows down; I don't think it is spending its time reading data from the hard drive. I am wondering if upgrading to an i7 or more RAM will make any appreciable difference in the build time, or whether there are any other tricks to speeding up the build process. I am reluctant to upgrade to a newer version of Delphi, because in the past I have upgraded multiple versions of Delphi and each time I had to make extensive changes to my source code because they did not make the new version 100% compatible with the previous version, and locating all of the changes in the source code that need to be modified and tested in a project this size would be a very daunting task. Furthermore, I'm not sure that upgrading to a new version of Delphi would necessarily speed up the build process.