|
|
|
 |
 |
|
| Intel® Thread Profiler for Windows* |
|
 |
|
|
Contents: What is instrumentation? Intel Thread Profiler for Windows* or Pthreads* API instruments software before tracing it to find errors. Instrumentation adds benign Intel Thread Profiler library calls into the software to be traced. The Intel Thread Profiler library calls record information about threads, including thread interactions and concurrency. What is binary instrumentation? Binary instrumentation is added at run-time to an already built (made) binary module, including applications and dynamic or shared libraries. The instrumentation code is automatically inserted when you run a Intel Thread Profiler for Windows* or Pthreads* API activity in the VTune™ environment or the Microsoft .NET* Development Environment. Both Microsoft Windows* and Linux* executables can be instrumented for IA-32 processors, but not for Itanium® processors. Binary instrumentation can be used for software compiled with any of the supported compilers. Does Intel Thread Profiler support source instrumentation? No. Intel Thread Profiler for Windows* or Pthreads* API does not support source instrumentation or instrumentation added at compile-time. Does Intel Thread Profiler for OpenMP* use binary instrumentation? Application executables and dynamic or shared libraries are not instrumented. Instead the Intel® Compilers ship with OpenMP run-time libraries that are pre-instrumented already. What system resources does instrumentation use? The process of adding instrumentation to your software takes time (CPU MIPs) and memory. Once the instrumentation has been added, your software will both run slower and use more memory than it usually does. This is because as your software runs, the Intel Thread Profiler library is recording information about your software's threads as your software runs. The first run of your software under Intel Thread Profiler for Windows* or Pthreads* API will accumulate the overhead of instrumentation and reflect the overhead in the results. All subsequent runs of the same executable code will generally show very little of this overhead. What instrumentation level should I use? Generally using the default instrumentation level of "API Imports" is recommended for User code (application executables, dynamic or shared library files). You should not reduce the instrumentation level below "API Imports" (that is to "Module Imports") for your User code because then Intel Thread Profiler may not produce accurate results. How do I set the default instrumentation levels? First, select or create a Intel Thread Profiler for Windows* or Pthreads* API activity. Then follow these steps: - In the VTune™ environment, use the Configure » Options... » Intel Thread Profiler » Instrumentation Levels dialog.
- In the Microsoft .NET* Development Environment, use the Tools » Options... » VTune™ Performance Tools » Intel Thread Profiler » Instrumentation Levels dialog. Note: Setting the default levels in one environment, such as the VTune™ environment, does not propagate the changes to other environments, such as the Microsoft .NET* Development Environment.
This applies to:
|
|
 |
|
Solution ID: CS-009642
Date Created: 24-Feb-2004
Last Modified: 06-Sep-2006
|
|