Applies to AQTime 8.80, last modified on May 14, 2020
This topic describes the changes made to AQTime 3.0. For information on the changes made to other versions of the product, see Version History.
In earlier versions of AQTime, the routine and line analyses were performed by two separate profilers, for example, Function HitCount and Line HitCount. In AQTime 3.0 these profilers are consolidated into a single one. For example, the HitCount profiler combines the functionality of the Function HitCount and Line HitCount profilers. Now the level of analysis (Routine or Line) is specified by the profiling area, to which your function is added. Line profiling is supported by the Timing, HitCount, Coverage and Sampling profilers.
Now AQTime can time the execution of source code lines, as well as routines. The Function Profiler has become the Timing Profiler, which supports both levels.
The profiling algorithms have been improved. For example, the Coverage and Timing profilers now work 3 to 5 times faster. Also, measurement accuracy is even better than it was previously.
To make profiling COM servers easier, AQTime now offers two profiling modes: Normal and COM. Normal mode can be used for both ordinary and COM applications. COM mode lets you profile COM servers that are launched by the operating system, for example, when a client app calls the server by program id.
The new "Attach to Process" feature lets you attach a profiler to a process at run time. There is no need to start the executable or its host application under AQTime. This makes it a lot easier to profile dynamic link libraries, IIS applications, etc.
The Coverage, Timing, HitCount and Function Trace profilers offer a Profile COM logical threads option to provide correct profiling results for COM servers that were tested using several COM clients.
AQTime can now profile Intel C++ and Compaq Visual Fortran applications.
The Unused VCL Units profiler now supports Delphi 6 and Delphi 7.
The new Route Trace profiler monitors your application and tracks the call stack for all of the calls to routines that are marked for profiling. This lets you find all the places in your application that a profiled routine was called from during the run.
The new Static Class Analysis profiler traces class interactions in your application (what methods of one class call which methods of another class, etc.). The profiler builds a graph of class relationships in the Call Graph panel. It also displays this information in the Details panel.
Now the Static Analysis profiler can trace parent-child call relationships for the functions in your application. It builds a graph of function calls in the Call Graph panel and displays the parent and child routines in the Details panel. New options also let you control the call-relationship tracking.
The new Sequence Diagram Link profiler builds the graph of function calls in MS Word, MS Visio or in Rational Rose.
The VCL Reference Count profiler now lets you track the changes in an object's reference count during the application run.
The Load Library Trace profiler displays the call stack for each call to the Windows LoadLibrary and LoadLibraryEx functions.
The new AQtimeServer utility that is included in the AQTime installation lets you profile applications on a remote computer.
Now Area and Trigger settings can be saved to a file and saved so they can be reused in the future. This lets you change your project configuration quickly.
The Coverage, HitCount, Timing and Function Trace profilers have a new Profile main thread only option. If you are profiling a single-threaded application, or if you do not want the profilers to collect results for each application thread, selecting this option will allow the profilers to run faster.
You can now select the unit of time measurement for the Timing and Sampling profilers: Seconds, milliseconds or microseconds (the latter is available for the Timing profiler only).
A new option in the Report panel, Recalc percent, sets how percent columns are calculated in the Report panel.
Filters can now be enabled or disabled temporarily during the run.
The Disassembly panel has several improvements.
The instruction notes are now displayed at the bottom of the panel.
The disassembler recognizes the binary code that is generated for different processors: Pentium, Pentium 3, Pentium 4, AMD K6, AMD Athlon, Cyrix, and others.
The panel also has new columns that display the Latency and Throughput characteristic of the assembler instructions for the Pentium 4 and the Pentium 3 SSE processors.
The Event View panel sports two improvements:
Now you can export the contents of the Event View panel to HTML or XML.
The panel can highlight messages of different types with different colors.
The keyboard shortcuts that are used to start profiling, generate results, call Find/Replace dialogs, etc. can now be customized.
The Event View panel now displays more information about each run: OS version, CPU type and speed, memory size, machine and user names, etc.
The new Ignore System Modules check box in the Settings dialog (Memory and API Resource Check profiler) lets you easily exclude system DLLs from profiling.