I have been using the latest version 10.3 of Delphi to create both 32-bit executables and 64-bit executables for my users for the past few years. I have noticed that the 64-bit version consistently runs 10% to 25% slower than the 32-bit version.
My program is a self-contained VCL-based executable that does not use any external DLLs. My Release configuration compiler options are the same for 32-bit and 64-bit. Both have Optimization = true.
I had thought that was just the way it is. But today, I was comparing a 32-bit version of a C++ program to the same program in 64-bit, and I found that the 64-bit program was 5% to 10% faster than the 32-bit version.
In addition to that, I found this article: Integer Performance Comparison for C++, C#, Delphi which included a table and chart definitely showing Delphi Win64 faster than Delphi Win32:
So my questions are:
Are there any Delphi compiler settings that should be changed for 64-bit builds?
Which of the following types of processing are slower in 64-bit Delphi than 32-bit?
- memory-intensive processing?
- extensive numeric calculations?
- lots of string manipulation?
- large amount of disk reading/writing?
- heavy database access?