Delphi 10.4.2 Sydney is out, and it is full of new features, fixes, and general quality improvements. I really do believe it is the perfect mix of polish and new features, and everyone I’ve talked to seems to agree. One of the stand-out features is the Delphi compiler speed improvements. There are mostly visible in the Win32 compiler and are partially the result of the details provided by Andreas Hausladen and the fixes in previous versions of his IDE Fix Pack.
Here is the list of fixes, just in case you were curious….
- FileSystem
- SearchUnitNameInNS
- GetUnitOf
- CacheControl
- FileNameStringFunctions
- KibitzIgnoreErrors
- RootTypeUnitList
- MapFile.fprintf
- Unit.RdName
- PrefetchToken
- StrLenCalls
(Note: Because of the nature of IDE Fix Pack, our implementation is different, but accomplishes the same goal.)
- WarnLoadResString
- DbkGetFileIndex
- UnlinkImports
- ResetUnits
- KibitzCompilerImplUnitReset
- UnlinkDuringCompile
- UnitFreeAll
- UnitFindByAlias
- SymLookupScope
- ImportedSymbol
- NoUnitDiscardAfterCompile
- SourceOutdated
- MapFileBuffer
- BackgroundCompilerFileExists
- DrcFileBuffer
- Package.CleanupSpeed
- Optimization
- FindPackage
- x64.JumpOpt
- x64.SymTabHashTable
- ReleaseUnusedMemory
- FileNameStringFunctions
- Memory.Shrink
Most of the time Delphi compiles really quickly, and depending on your code you may not see any performance improvements. I’ve tried some of my projects and didn’t see any changes. Matthias Eißing suggested he saw a significant speed-up compiling HeidiSQL, so I gave it a shot and made a video.
In summary the Win32 compile went from 5.5 seconds in 10.4.1 Rio to 3.3 seconds in 10.4.2. That is a 40% speed improvement.
A few other people have shared the speed improvements they discovered moving to 10.4.2 Sydney.
Adrian Gallero, project manager at TMS Software, showed compiling the million lines of code behind TMS FlexCel. It contains “lots of generics, a little more than 3000 units, multiple includes, cycles of units that use themselves recursively, and complex dependencies.” His compile-time went from 30 seconds in 10.3 Rio to 19 seconds in 10.4.2 Sydney.
Comments Delphi Experts:
I’m going to call RAD Studio Delphi 10.42 “the speedy supermodel release.” So many lovely subtle (and overt) tweaks to the UI and BOY DOES IT COMPILE FAST! It’s solid, contains a bunch of quality improvements, LSP is really kicking it now and the new ‘squiggly line’ choices for error insight and so on just add to the overall feel of solidity.
Ian Barker, Embarcadero MVP
Moving from Delphi 10.3.3 Rio to 10.4.2 Sydney the compile time for our 2.3 million lines of code dropped from a respectable 2.5 minutes to an incredible 1.5 minutes! This makes the turn-around times for daily work 40% faster! My recommendation to all Delphi users is: Move to the latest version 10.4.2 Sydney immediately!
Roman Kassebaum, Embarcadero Technology Partner and MVP
Wow. I am really impressed. This is the long-awaited Delphi 7 successor. The new gold standard. Compiling: Superspeed. Working on remote Desktop. Wow. Compilation in 10 seconds instead of 90 seconds. Loading huge forms without trouble.
Sven Heuer
@thebassener