TimingProfiler for x86 helps you identify application parts that
cause unsatisfactory execution times. It delivers results as soon as
there is compiled code, and thus can be used very early in the development process,
when measurements on physical hardware are costly or impossible.
This makes TimingProfiler ideally suited for constantly monitoring
timing behavior during software development and in model-based development
The goal is not to give precise worst-case guarantees like with aiT,
but to enable development of applications in a timing-conscious way without cumbersome measurements
on physical hardware. The analysis is applicable when no hardware is available yet, or the application
is not mature enough for measurements.
- TimingProfiler gives detailed information about the
execution time and time-critical paths.
- The analysis is purely static. No access to physical
hardware and no code instrumentation are required.
- The analyzer does not need to be stimulated with concrete inputs.
By default, it takes all potential inputs into account.
- Nevertheless, the analysis can be restricted to specific execution scenarios if desired.
- The tool shows call and control flow graphs, and displays all relevant information about the executable.
- Hotspots and bottlenecks can be identified at early development stages so that late-stage integration problems can be avoided.
- This provides for easy integration into the development process, and enables application in continuous
test and integration frameworks.
- TimingProfiler can be seamlessly coupled with StackAnalyzer
to additionally take the stack behavior into account, providing
a unified approach to addressing resource usage.
- GNU C compiler (GCC)
- Intel iC-86 C compiler (ICC)
- Cygnus LynxOS x86 C compiler (LynuxWorks)
Architecture variants and extensions
The supported instructions sets are:
- x86-32 (ia32, Intel 32)
- x86-64 (Amd64, Intel 64)
This covers a wide array of architectures, including 8086, 80286, i386, i486, and AMD K6-2E+.
Am486 and i386DX are supported separately.
- Windows: 64-bit Windows 10 or newer
- Linux: 64-bit CentOS/RHEL 7 or compatible
- 4 GB of RAM (16 GB recommended)
- 4 GB of disk space
- The Linux version requires the
libxcb-* family of libraries to be installed
- Support for macOS High Sierra 10.13 or newer is possible on request for a surcharge