Update of this page: February/28/2000
ProDelphi supports Delphi 2/3/4/5.
Fully supported. Compiler symbols and switches are read from the compilers option file (DOF).
A browser can display all methods which were not called. (For a line-by-line coverage tool have a look at my link page).
Many customer suggestions have been implemented in ProDelphi in the last versions.
ProDelphi comes with a real User Guide (and not with slim online help).
Exclusion of parts of
the program from measurement:
Units or Include files:
ProDelphi measure in CPU-cycles. The smallest measurable unit is 1 CPU-cycle. This means that on a Pentium with 500 MHz the smallest measurable duration is 0.002 µs
Handling of idle times:
Idletimes produced by some Windows-API calls are not measured, also idletimes of some Delphi calls. See list of handled functions in the manual.
ProDelphi comes with a built-in history function. The viewer shows by a colored grid, which functions got faster and which got slower since the last storing of results into a history file. By a mouse click on a result line of the viewers grid, the excact time is displayed for the selected procedure.
ProDelphi was used to optimize the SIEMENS - SCADA-system VICOS P500 for the projects Metro Guang Zhou, Shen Zhen and Sixth Railways in China.
Integration into the Delphi
If ProDelphi is installed with the setup program, it is automatically integrated into the Delphi tools menu.
Measuring programs with
Supported, but with less accuracy.
Measuring runtimes in
ProDelphi measures very accurately. The measurement overhead is automatically removed from the measured times. A sophisticated algorithym calculates the runtime used for measurement at initialization time.
The measured durations are displayed either in CPU-Cycles or in a variable time format. Following time formats are automatically selected:
Specially supported by the feature of adding the runtimes of all methods with the same name (if the used object is the same).
Example: A method 'LoadFromDisk' calls the method 'LoadFromDisk' of the inherited class. In this case the runtimes of both classes will be added.
Online operating the measurement:
Measurement can be switched on and off at the programs runtime, also results can be stored online. This speeds up the opimization process.
ProDelphi is compatible to Windows 95/98 and Windows NT.
The optimization of the Delphi compiler is automatically deactivated if the user forgets this. This guaranties high measurement accuracy.
ProDelphi is available as a Freeware or a Professional version.
ProDelphi is a source instrumenting profiler. Source instrumenting has the big advantage, that at the best position possible a time stamp can be taken: At the start and the end of the procedure body. No profiler internal code outside the procedure is called before taking the time stamp. No profiler code has possibly to be copied into processor cache before taking the time stamp (which destroys the accuracy). The normal instruction flow (nearly identical as without profiling) is kept. This is one of the reasons for ProDelphi's outstanding accuaracy.
Sampling profilers: with a low sampling rate small procedures can not be measured, with a high sampling rate the profiled program has to be interrupted very often, what means, that the runtime behaviour of the tested program is changed very much.
Measurement can be switched on and off at runtime. Intermediate results can be stored on disk.
ProDelphi inserts statements into the source files. If this process has a bug or in case of power failure, the sources might be destroyed. It is strongly recommended to save all source code files before profiling (e.g. by WinZip).
ProDelphi is delivered with a easy to use setup program. It copies all files into the appropriate directories, integrates ProDelphi into the Delphi tools menu and creates an entry in the Windows list of programs (Start menu / Programs).
Switching on and off of
Simply done by deleting a compiler symbol and recompilation. At runtime this is also possible by the online operation window. Also intermediate measurement results can be stored at runtime (see also Programming-API).
If you decide to use ProDelphi, you can download any upgrade or bug fix from my homepage. If you need ProDelphi for a larger project and 30 measured procedures are not enough for you, you can order the professional version via ShareIt registration service. If you do so, you can also download new versions from my homepage for free. These will automatically run as professional version. (Buy one - get many).
Viewing of measurement
Results can be either displayed in CPU-cycles or in a variable time format. On a pentium with 500 MHz the smallest time unit is 0.002µs.
ProDelphi has THREE possibilities of viewing the measured runtimes:
ProDelphi is fully Year 2000 compliant
Differences between Freeware and Professional version: