home *** CD-ROM | disk | FTP | other *** search
/ Power GUI Programming with VisualAge C++ / powergui.iso / trialva / ibmcppw / help / cppwpa3.hlp (.txt) < prev    next >
Encoding:
OS/2 Help File  |  1996-02-22  |  344.9 KB  |  12,679 lines

  1.  
  2. ΓòÉΓòÉΓòÉ 1. Trademarks and Service Marks ΓòÉΓòÉΓòÉ
  3.  
  4. The following terms used in this documentation are trademarks or service marks 
  5. of IBM Corporation in the United States and other countries: 
  6.  
  7.  o IBM 
  8.  o VisualAge 
  9.  o WorkFrame 
  10.  
  11.  Win32, Windows NT, and Windows 95 are trademarks of Microsoft Corporation. 
  12.  
  13.  
  14. ΓòÉΓòÉΓòÉ 2. Introducing the Performance Execution Trace Analyzer ΓòÉΓòÉΓòÉ
  15.  
  16. The IBM VisualAge for C++ for Windows, Version 3.5 Performance Execution Trace 
  17. Analyzer is an application that helps you understand and improve the behavior 
  18. of C and C++ programs. 
  19.  
  20. The Performance Analyzer traces the execution of a program and creates a trace 
  21. file. The trace file contains trace analysis data that can be displayed in 
  22. diagrams. Using these diagrams, you can improve the performance of a program, 
  23. examine occurrences that produce faults, and in general, understand what 
  24. happens when a program runs. 
  25.  
  26. The Performance Analyzer does not replace static analyzers or debuggers, but it 
  27. can complement them by helping you understand aspects of the program that would 
  28. otherwise be difficult or impossible to see. 
  29.  
  30. For instance, with the Performance Analyzer you can: 
  31.  
  32.  Time and tune programs 
  33.        The Performance Analyzer time stamps each trace event using a high 
  34.        resolution clock (about 838 nanoseconds per clock tick). As a result, 
  35.        the trace file contains a detailed record of when each traced function 
  36.        was called and when it returned. 
  37.  
  38.        The trace data also shows how long each function executed, which helps 
  39.        you find hot spots. 
  40.  Locate program hangs and deadlocks 
  41.        The Performance Analyzer provides a complete history of events leading 
  42.        up to the point where a program stops. You can view the function call 
  43.        stack from anywhere in the program. 
  44.  Trace multithreaded interactions 
  45.        When multithreaded programs are traced, you can look at the sequencing 
  46.        of functions across threads in some of the diagrams. This highlights 
  47.        problems within critical areas of the program. 
  48.  
  49.  Related Information 
  50.  
  51.  o Preparing Your Program for the Performance Analyzer 
  52.  o Starting the Performance Analyzer from a Command Line. 
  53.  o Starting the Performance Analyzer from WorkFrame 
  54.  o Creating a Trace File. 
  55.  
  56.  
  57. ΓòÉΓòÉΓòÉ 3. Preparing Your Program for the Performance Analyzer ΓòÉΓòÉΓòÉ
  58.  
  59. Before you create a trace file and begin using the Performance Execution Trace 
  60. Analyzer, you must compile and link your program with the proper options. This 
  61. is described in Compiling and Linking Your Program. 
  62.  
  63. The Performance Analyzer provides several ways to customize trace files. If you 
  64. want to customize a trace file, you may have to complete some steps before you 
  65. compile and link your program. For more information and instructions, see the 
  66. following topics: 
  67.  
  68.  o Tracing Dynamic Link Libraries (DLLs) 
  69.  o Tracing System Calls 
  70.  o Creating User Events in Your Program 
  71.  o Starting and Stopping the Performance Analyzer from Your Program. 
  72.  
  73.  
  74. ΓòÉΓòÉΓòÉ 3.1. Compiling and Linking Your Program ΓòÉΓòÉΓòÉ
  75.  
  76. You must compile and link your program with the proper options before you 
  77. create a trace file and analyze it with the Performance Analyzer. 
  78.  
  79. The Performance Analyzer provides several ways to customize trace files. If you 
  80. want to customize a trace file, you may have to complete some steps before you 
  81. compile and link your program. For more information and instructions, see the 
  82. following topics: 
  83.  
  84.  o Tracing Dynamic Link Libraries (DLLs) 
  85.  o Tracing System Calls 
  86.  o Creating User Events in Your Program 
  87.  o Starting and Stopping the Performance Analyzer from Your Program. 
  88.  
  89.  Compiling 
  90.  
  91.  When compiling your program, use the following options: 
  92.  
  93.  /Gh   Includes the profile hooks that allow the Performance Analyzer to 
  94.        monitor your executable. 
  95.  
  96.  /Ti   Includes debugging information in the compiled object file. 
  97.  
  98.  Linking 
  99.  
  100.  You must link the CPPWPA3.OBJ object file into your program. 
  101.  
  102.  When linking your program, use the following options: 
  103.  
  104.  /DE   Instructs the linker to include debug information in the executable 
  105.        (EXE) or dynamic link library (DLL) file. 
  106.  
  107.  /NOE  Instructs the linker not to search for symbols in the extended 
  108.        dictionaries of the libraries being linked. 
  109.  
  110.  Example 
  111.  
  112.  The following example shows how to compile and link a program called 
  113.  SAMPLE.EXE for use with the Performance Analyzer. The required object file is 
  114.  highlighted. 
  115.  
  116.  Compile: 
  117.  
  118.     icc /c /Ti /Gh sample.cpp
  119.  
  120.  Link: 
  121.  
  122.     ilink /DE /NOE sample.obj cppwpa3.obj
  123.  
  124.  Related Information 
  125.  
  126.  o IBM C/C++ Tools: Programming Guide 
  127.  o Tracing Dynamic Link Libraries (DLLs) 
  128.  o Tracing System Calls 
  129.  o Creating User Events in Your Program 
  130.  o Starting and Stopping the Performance Analyzer from Your Program. 
  131.  
  132.  
  133. ΓòÉΓòÉΓòÉ 3.2. Tracing Dynamic Link Libraries (DLLs) ΓòÉΓòÉΓòÉ
  134.  
  135. You can trace statically or dynamically linked DLLs using the Performance 
  136. Analyzer. Compile and link any DLL to be traced for use by the Performance 
  137. Analyzer as explained in Compiling and Linking Your Program. 
  138.  
  139. You can trace DLLs without tracing the main program that calls the DLLs. 
  140.  
  141. The tracing of load-on-call DLLs occurs automatically; it cannot be suppressed. 
  142. Also, you cannot set triggers, or enable or disable functions in dynamically 
  143. loaded DLLs. 
  144.  
  145.  
  146. ΓòÉΓòÉΓòÉ 3.3. Tracing System Calls ΓòÉΓòÉΓòÉ
  147.  
  148. If you want to trace system API calls, specify the Performance Analyzer 
  149. libraries before the system libraries in your link statement. You can link one 
  150. or more libraries. 
  151.  
  152. Notes: 
  153.  
  154.   1. Output produced by cout stream objects is stored in the operating system's 
  155.      buffer and is not shown until tracing has stopped. System API calls for 
  156.      the cout stream are not displayed in the trace file. 
  157.   2. It is not possible to trace events in the KERNEL32 intercept library only. 
  158.      The Performance Analyzer looks for at least one event from your program 
  159.      before logging these call events. If you link the _KERNEL.LIB library, 
  160.      compile your program with the /Gh and /Ti options to include events from 
  161.      your program in the trace file. 
  162.   3. If you compile your source with the /Gd- switch, the trace file will 
  163.      contain all of the system calls called by your code and the system calls 
  164.      called by VisualAge C++ runtime calls. To avoid tracing calls made by 
  165.      runtime calls, use the /Gd+ switch. 
  166.  
  167.  The Performance Analyzer libraries are as follows. Each library listed also 
  168.  has an associated DLL. 
  169.  
  170.  o _KERNEL.LIB 
  171.  o _USER32.LIB 
  172.  o _GDI32.LIB 
  173.  
  174.  Important:  The order in which these libraries are specified in the link 
  175.              statement is critical. If the replacement libraries do not precede 
  176.              the system libraries in the link statement, the Performance 
  177.              Analyzer will not interpret and trace the API calls. 
  178.  
  179.  Related Information 
  180.  
  181.  o Compiling and Linking Your Program 
  182.  
  183.  
  184. ΓòÉΓòÉΓòÉ 3.3.1. Traced Functions in Intercept Libraries ΓòÉΓòÉΓòÉ
  185.  
  186. The following functions appear in the Performance Analyzer intercept libraries. 
  187. The Performance Analyzer will trace these functions when the intercept 
  188. libraries are linked properly. 
  189.  
  190. Notes: 
  191.  
  192.   1. Output produced by cout stream objects is stored in the operating system's 
  193.      buffer and is not shown until tracing has stopped. System API calls for 
  194.      the cout stream are not displayed in the trace file. 
  195.   2. It is not possible to trace events in the KERNEL32 intercept library only. 
  196.      The Performance Analyzer looks for at least one event from your program 
  197.      before logging these call events. If you link the _KERNEL.LIB library, 
  198.      compile your program with the /Gh and /Ti options to include events from 
  199.      your program in the trace file. 
  200.   3. If you compile your source with the /Gd- switch, the trace file will 
  201.      contain all of the system calls called by your code and the system calls 
  202.      called by VisualAge C++ runtime calls. To avoid tracing calls made by 
  203.      runtime calls, use the /Gd+ switch. 
  204.  
  205.  The functions in the following list appear in the _KERNEL.LIB intercept 
  206.  library: 
  207.  
  208.  AddAtomA                                AddAtomW 
  209.  AllocConsole                            AreFileApisANSI 
  210.  BackupRead                              BackupSeek 
  211.  BackupWrite                             Beep 
  212.  BeginUpdateResourceA                    BeginUpdateResourceW 
  213.  BuildCommDCBA                           BuildCommDCBAndTimeoutsA 
  214.  BuildCommDCBAndTimeoutsW                BuildCommDCBW 
  215.  CallNamedPipeA                          CallNamedPipeW 
  216.  ClearCommBreak                          ClearCommError 
  217.  CloseHandle                             CommConfigDialogA 
  218.  CommConfigDialogW                       CompareFileTime 
  219.  CompareStringA                          CompareStringW 
  220.  ConnectNamedPipe                        ContinueDebugEvent 
  221.  ConvertDefaultLocale                    CopyFileA 
  222.  CopyFileW                               CreateConsoleScreenBuffer 
  223.  CreateDirectoryA                        CreateDirectoryExA 
  224.  CreateDirectoryExW                      CreateDirectoryW 
  225.  CreateEventA                            CreateEventW 
  226.  CreateFileA                             CreateFileMappingA 
  227.  CreateFileMappingW                      CreateFileW 
  228.  CreateIoCompletionPort                  CreateMailslotA 
  229.  CreateMailslotW                         CreateMutexA 
  230.  CreateMutexW                            CreateNamedPipeA 
  231.  CreateNamedPipeW                        CreatePipe 
  232.  CreateProcessA                          CreateProcessW 
  233.  CreateRemoteThread                      CreateSemaphoreA 
  234.  CreateSemaphoreW                        CreateTapePartition 
  235.  CreateThread                            DebugActiveProcess 
  236.  DebugBreak                              DefineDosDeviceA 
  237.  DefineDosDeviceW                        DeleteAtom 
  238.  DeleteCriticalSection                   DeleteFileA 
  239.  DeleteFileW                             DeviceIoControl 
  240.  DisableThreadLibraryCalls               DisconnectNamedPipe 
  241.  DosDateTimeToFileTime                   DuplicateHandle 
  242.  EndUpdateResourceA                      EndUpdateResourceW 
  243.  EnumCalendarInfoA                       EnumCalendarInfoW 
  244.  EnumDateFormatsA                        EnumDateFormatsW 
  245.  EnumResourceLanguagesA                  EnumResourceLanguagesW 
  246.  EnumResourceNamesA                      EnumResourceNamesW 
  247.  EnumResourceTypesA                      EnumResourceTypesW 
  248.  EnumSystemCodePagesA                    EnumSystemCodePagesW 
  249.  EnumSystemLocalesA                      EnumSystemLocalesW 
  250.  EnumTimeFormatsA                        EnumTimeFormatsW 
  251.  EraseTape                               EscapeCommFunction 
  252.  ExitProcess                             ExitThread 
  253.  ExpandEnvironmentStringsA               ExpandEnvironmentStringsW 
  254.  FatalAppExitA                           FatalAppExitW 
  255.  FatalExit                               FileTimeToDosDateTime 
  256.  FileTimeToLocalFileTime                 FileTimeToSystemTime 
  257.  FillConsoleOutputAttribute              FillConsoleOutputCharacterA 
  258.  FillConsoleOutputCharacterW             FindAtomA 
  259.  FindAtomW                               FindClose 
  260.  FindCloseChangeNotification             FindFirstChangeNotificationA 
  261.  FindFirstChangeNotificationW            FindFirstFileA 
  262.  FindFirstFileW                          FindNextChangeNotification 
  263.  FindNextFileA                           FindNextFileW 
  264.  FindResourceA                           FindResourceExA 
  265.  FindResourceExW                         FindResourceW 
  266.  FlushConsoleInputBuffer                 FlushFileBuffers 
  267.  FlushInstructionCache                   FlushViewOfFile 
  268.  FoldStringA                             FoldStringW 
  269.  FormatMessageA                          FormatMessageW 
  270.  FreeConsole                             FreeEnvironmentStringsA 
  271.  FreeEnvironmentStringsW                 FreeLibrary 
  272.  FreeLibraryAndExitThread                FreeResource 
  273.  GenerateConsoleCtrlEvent                GetACP 
  274.  GetAtomNameA                            GetAtomNameW 
  275.  GetBinaryTypeA                          GetBinaryTypeW 
  276.  GetCPInfo                               GetCommConfig 
  277.  GetCommMask                             GetCommModemStatus 
  278.  GetCommProperties                       GetCommState 
  279.  GetCommTimeouts                         GetCommandLineA 
  280.  GetCommandLineW                         GetCompressedFileSizeA 
  281.  GetCompressedFileSizeW                  GetComputerNameA 
  282.  GetComputerNameW                        GetConsoleCP 
  283.  GetConsoleCursorInfo                    GetConsoleMode 
  284.  GetConsoleOutputCP                      GetConsoleScreenBufferInfo 
  285.  GetConsoleTitleA                        GetConsoleTitleW 
  286.  GetCurrencyFormatA                      GetCurrencyFormatW 
  287.  GetCurrentDirectoryA                    GetCurrentDirectoryW 
  288.  GetCurrentProcess                       GetCurrentProcessId 
  289.  GetCurrentThread                        GetDateFormatA 
  290.  GetDateFormatW                          GetDefaultCommConfigA 
  291.  GetDefaultCommConfigW                   GetDiskFreeSpaceA 
  292.  GetDiskFreeSpaceW                       GetDriveTypeA 
  293.  GetDriveTypeW                           GetEnvironmentStrings 
  294.  GetEnvironmentStringsA                  GetEnvironmentStringsW 
  295.  GetEnvironmentVariableA                 GetEnvironmentVariableW 
  296.  GetExitCodeProcess                      GetExitCodeThread 
  297.  GetFileAttributesA                      GetFileAttributesW 
  298.  GetFileInformationByHandle              GetFileSize 
  299.  GetFileTime                             GetFileType 
  300.  GetFullPathNameA                        GetFullPathNameW 
  301.  GetHandleInformation                    GetLargestConsoleWindowSize 
  302.  GetLastError                            GetLocalTime 
  303.  GetLocaleInfoA                          GetLocaleInfoW 
  304.  GetLogicalDriveStringsA                 GetLogicalDriveStringsW 
  305.  GetLogicalDrives                        GetMailslotInfo 
  306.  GetModuleFileNameA                      GetModuleFileNameW 
  307.  GetModuleHandleA                        GetModuleHandleW 
  308.  GetNamedPipeHandleStateA                GetNamedPipeHandleStateW 
  309.  GetNamedPipeInfo                        GetNumberFormatA 
  310.  GetNumberFormatW                        GetNumberOfConsoleInputEvents 
  311.  GetNumberOfConsoleMouseButtons          GetOEMCP 
  312.  GetOverlappedResult                     GetPriorityClass 
  313.  GetPrivateProfileIntA                   GetPrivateProfileIntW 
  314.  GetPrivateProfileSectionA               GetPrivateProfileSectionNamesA 
  315.  GetPrivateProfileSectionNamesW          GetPrivateProfileSectionW 
  316.  GetPrivateProfileStringA                GetPrivateProfileStringW 
  317.  GetPrivateProfileStructA                GetPrivateProfileStructW 
  318.  GetProcessAffinityMask                  GetProcessHeap 
  319.  GetProcessHeaps                         GetProcessShutdownParameters 
  320.  GetProcessTimes                         GetProcessVersion 
  321.  GetProcessWorkingSetSize                GetProfileIntA 
  322.  GetProfileIntW                          GetProfileSectionA 
  323.  GetProfileSectionW                      GetProfileStringA 
  324.  GetProfileStringW                       GetQueuedCompletionStatus 
  325.  GetShortPathNameA                       GetShortPathNameW 
  326.  GetStartupInfoA                         GetStartupInfoW 
  327.  GetStdHandle                            GetStringTypeA 
  328.  GetStringTypeExA                        GetStringTypeExW 
  329.  GetStringTypeW                          GetSystemDefaultLCID 
  330.  GetSystemDefaultLangID                  GetSystemDirectoryA 
  331.  GetSystemDirectoryW                     GetSystemInfo 
  332.  GetSystemPowerStatus                    GetSystemTime 
  333.  GetSystemTimeAdjustment                 GetSystemTimeAsFileTime 
  334.  GetTapeParameters                       GetTapePosition 
  335.  GetTapeStatus                           GetTempFileNameA 
  336.  GetTempFileNameW                        GetTempPathA 
  337.  GetTempPathW                            GetThreadContext 
  338.  GetThreadLocale                         GetThreadPriority 
  339.  GetThreadSelectorEntry                  GetThreadTimes 
  340.  GetTickCount                            GetTimeFormatA 
  341.  GetTimeFormatW                          GetTimeZoneInformation 
  342.  GetUserDefaultLCID                      GetUserDefaultLangID 
  343.  GetVersion                              GetVersionExA 
  344.  GetVersionExW                           GetVolumeInformationA 
  345.  GetVolumeInformationW                   GetWindowsDirectoryA 
  346.  GetWindowsDirectoryW                    GlobalAddAtomA 
  347.  GlobalAddAtomW                          GlobalAlloc 
  348.  GlobalCompact                           GlobalDeleteAtom 
  349.  GlobalFindAtomA                         GlobalFindAtomW 
  350.  GlobalFix                               GlobalFlags 
  351.  GlobalFree                              GlobalGetAtomNameA 
  352.  GlobalGetAtomNameW                      GlobalHandle 
  353.  GlobalLock                              GlobalMemoryStatus 
  354.  GlobalReAlloc                           GlobalSize 
  355.  GlobalUnWire                            GlobalUnfix 
  356.  GlobalUnlock                            GlobalWire 
  357.  HeapAlloc                               HeapCompact 
  358.  HeapCreate                              HeapDestroy 
  359.  HeapFree                                HeapLock 
  360.  HeapReAlloc                             HeapSize 
  361.  HeapUnlock                              HeapValidate 
  362.  HeapWalk                                InitAtomTable 
  363.  InterlockedDecrement                    InterlockedExchange 
  364.  InterlockedIncrement                    IsBadCodePtr 
  365.  IsBadHugeReadPtr                        IsBadHugeWritePtr 
  366.  IsBadReadPtr                            IsBadStringPtrA 
  367.  IsBadStringPtrW                         IsBadWritePtr 
  368.  IsDBCSLeadByte                          IsDBCSLeadByteEx 
  369.  IsValidCodePage                         IsValidLocale 
  370.  LCMapStringA                            LCMapStringW 
  371.  LoadLibraryExA                          LoadLibraryExW 
  372.  LoadModule                              LoadResource 
  373.  LocalAlloc                              LocalCompact 
  374.  LocalFileTimeToFileTime                 LocalFlags 
  375.  LocalFree                               LocalHandle 
  376.  LocalLock                               LocalReAlloc 
  377.  LocalShrink                             LocalSize 
  378.  LocalUnlock                             LockFile 
  379.  LockFileEx                              LockResource 
  380.  MapViewOfFile                           MapViewOfFileEx 
  381.  MoveFileA                               MoveFileExA 
  382.  MoveFileExW                             MoveFileW 
  383.  MulDiv                                  MultiByteToWideChar 
  384.  OpenEventA                              OpenEventW 
  385.  OpenFile                                OpenFileMappingA 
  386.  OpenFileMappingW                        OpenMutexA 
  387.  OpenMutexW                              OpenProcess 
  388.  OpenSemaphoreA                          OpenSemaphoreW 
  389.  OutputDebugStringA                      OutputDebugStringW 
  390.  PeekConsoleInputA                       PeekConsoleInputW 
  391.  PeekNamedPipe                           PostQueuedCompletionStatus 
  392.  PrepareTape                             PulseEvent 
  393.  PurgeComm                               QueryDosDeviceA 
  394.  QueryDosDeviceW                         QueryPerformanceCounter 
  395.  QueryPerformanceFrequency               RaiseException 
  396.  ReadConsoleA                            ReadConsoleInputA 
  397.  ReadConsoleInputW                       ReadConsoleOutputA 
  398.  ReadConsoleOutputAttribute              ReadConsoleOutputCharacterA 
  399.  ReadConsoleOutputCharacterW             ReadConsoleOutputW 
  400.  ReadConsoleW                            ReadFile 
  401.  ReadFileEx                              ReadProcessMemory 
  402.  ReleaseMutex                            ReleaseSemaphore 
  403.  RemoveDirectoryA                        RemoveDirectoryW 
  404.  ResetEvent                              ResumeThread 
  405.  RtlFillMemory                           RtlMoveMemory 
  406.  RtlZeroMemory                           ScrollConsoleScreenBufferA 
  407.  ScrollConsoleScreenBufferW              SearchPathA 
  408.  SearchPathW                             SetCommBreak 
  409.  SetCommConfig                           SetCommMask 
  410.  SetCommState                            SetCommTimeouts 
  411.  SetComputerNameA                        SetComputerNameW 
  412.  SetConsoleActiveScreenBuffer            SetConsoleCP 
  413.  SetConsoleCtrlHandler                   SetConsoleCursorInfo 
  414.  SetConsoleCursorPosition                SetConsoleMode 
  415.  SetConsoleOutputCP                      SetConsoleScreenBufferSize 
  416.  SetConsoleTextAttribute                 SetConsoleTitleA 
  417.  SetConsoleTitleW                        SetConsoleWindowInfo 
  418.  SetCurrentDirectoryA                    SetCurrentDirectoryW 
  419.  SetDefaultCommConfigA                   SetDefaultCommConfigW 
  420.  SetEndOfFile                            SetEnvironmentVariableA 
  421.  SetEnvironmentVariableW                 SetErrorMode 
  422.  SetEvent                                SetFileApisToANSI 
  423.  SetFileApisToOEM                        SetFileAttributesA 
  424.  SetFileAttributesW                      SetFilePointer 
  425.  SetFileTime                             SetHandleCount 
  426.  SetHandleInformation                    SetLastError 
  427.  SetLocalTime                            SetLocaleInfoA 
  428.  SetLocaleInfoW                          SetMailslotInfo 
  429.  SetNamedPipeHandleState                 SetPriorityClass 
  430.  SetProcessShutdownParameters            SetProcessWorkingSetSize 
  431.  SetStdHandle                            SetSystemPowerState 
  432.  SetSystemTime                           SetSystemTimeAdjustment 
  433.  SetTapeParameters                       SetTapePosition 
  434.  SetThreadAffinityMask                   SetThreadContext 
  435.  SetThreadLocale                         SetThreadPriority 
  436.  SetTimeZoneInformation                  SetUnhandledExceptionFilter 
  437.  SetVolumeLabelA                         SetVolumeLabelW 
  438.  SetupComm                               SizeofResource 
  439.  Sleep                                   SleepEx 
  440.  SuspendThread                           SystemTimeToFileTime 
  441.  SystemTimeToTzSpecificLocalTime         TerminateProcess 
  442.  TerminateThread                         TlsAlloc 
  443.  TlsFree                                 TlsGetValue 
  444.  TlsSetValue                             TransactNamedPipe 
  445.  TransmitCommChar                        UnhandledExceptionFilter 
  446.  UnlockFile                              UnlockFileEx 
  447.  UnmapViewOfFile                         UpdateResourceA 
  448.  UpdateResourceW                         VerLanguageNameA 
  449.  VerLanguageNameW                        VirtualAlloc 
  450.  VirtualFree                             VirtualLock 
  451.  VirtualProtect                          VirtualProtectEx 
  452.  VirtualQuery                            VirtualQueryEx 
  453.  VirtualUnlock                           WaitCommEvent 
  454.  WaitForDebugEvent                       WaitForMultipleObjects 
  455.  WaitForMultipleObjectsEx                WaitForSingleObject 
  456.  WaitForSingleObjectEx                   WaitNamedPipeA 
  457.  WaitNamedPipeW                          WideCharToMultiByte 
  458.  WinExec                                 WriteConsoleA 
  459.  WriteConsoleInputA                      WriteConsoleInputW 
  460.  WriteConsoleOutputA                     WriteConsoleOutputAttribute 
  461.  WriteConsoleOutputCharacterA            WriteConsoleOutputCharacterW 
  462.  WriteConsoleOutputW                     WriteConsoleW 
  463.  WriteFile                               WriteFileEx 
  464.  WritePrivateProfileSectionA             WritePrivateProfileSectionW 
  465.  WritePrivateProfileStringA              WritePrivateProfileStringW 
  466.  WritePrivateProfileStructA              WritePrivateProfileStructW 
  467.  WriteProcessMemory                      WriteProfileSectionA 
  468.  WriteProfileSectionW                    WriteProfileStringA 
  469.  WriteProfileStringW                     WriteTapemark 
  470.  _hread                                  _hwrite 
  471.  _lclose                                 _lcreat 
  472.  _llseek                                 _lopen 
  473.  _lread                                  _lwrite 
  474.  lstrcatA                                lstrcatW 
  475.  lstrcmpA                                lstrcmpW 
  476.  lstrcmpiA                               lstrcmpiW 
  477.  lstrcpyA                                lstrcpyW 
  478.  lstrcpynA                               lstrcpynW 
  479.  lstrlenA                                lstrlenW 
  480.  
  481.  The functions in the following list appear in the _GDI32.LIB intercept 
  482.  library: 
  483.  
  484.  AbortDoc                                AbortPath 
  485.  AddFontResourceA                        AddFontResourceW 
  486.  AngleArc                                AnimatePalette 
  487.  Arc                                     ArcTo 
  488.  BeginPath                               BitBlt 
  489.  CancelDC                                CheckColorsInGamut 
  490.  ChoosePixelFormat                       Chord 
  491.  CloseEnhMetaFile                        CloseFigure 
  492.  CloseMetaFile                           ColorMatchToTarget 
  493.  CombineRgn                              CombineTransform 
  494.  CopyEnhMetaFileA                        CopyEnhMetaFileW 
  495.  CopyMetaFileA                           CopyMetaFileW 
  496.  CreateBitmap                            CreateBitmapIndirect 
  497.  CreateBrushIndirect                     CreateColorSpaceA 
  498.  CreateColorSpaceW                       CreateCompatibleBitmap 
  499.  CreateCompatibleDC                      CreateDCA 
  500.  CreateDCW                               CreateDIBPatternBrush 
  501.  CreateDIBPatternBrushPt                 CreateDIBSection 
  502.  CreateDIBitmap                          CreateDiscardableBitmap 
  503.  CreateEllipticRgn                       CreateEllipticRgnIndirect 
  504.  CreateEnhMetaFileA                      CreateEnhMetaFileW 
  505.  CreateFontA                             CreateFontIndirectA 
  506.  CreateFontIndirectW                     CreateFontW 
  507.  CreateHalftonePalette                   CreateHatchBrush 
  508.  CreateICA                               CreateICW 
  509.  CreateMetaFileA                         CreateMetaFileW 
  510.  CreatePalette                           CreatePatternBrush 
  511.  CreatePen                               CreatePenIndirect 
  512.  CreatePolyPolygonRgn                    CreatePolygonRgn 
  513.  CreateRectRgn                           CreateRectRgnIndirect 
  514.  CreateRoundRectRgn                      CreateScalableFontResourceA 
  515.  CreateScalableFontResourceW             CreateSolidBrush 
  516.  DPtoLP                                  DeleteColorSpace 
  517.  DeleteDC                                DeleteEnhMetaFile 
  518.  DeleteMetaFile                          DeleteObject 
  519.  DescribePixelFormat                     DrawEscape 
  520.  Ellipse                                 EndDoc 
  521.  EndPage                                 EndPath 
  522.  EnumEnhMetaFile                         EnumFontFamiliesA 
  523.  EnumFontFamiliesExA                     EnumFontFamiliesExW 
  524.  EnumFontFamiliesW                       EnumFontsA 
  525.  EnumFontsW                              EnumICMProfilesA 
  526.  EnumICMProfilesW                        EnumMetaFile 
  527.  EnumObjects                             EqualRgn 
  528.  Escape                                  ExcludeClipRect 
  529.  ExtCreatePen                            ExtCreateRegion 
  530.  ExtEscape                               ExtFloodFill 
  531.  ExtSelectClipRgn                        ExtTextOutA 
  532.  ExtTextOutW                             FillPath 
  533.  FillRgn                                 FixBrushOrgEx 
  534.  FlattenPath                             FloodFill 
  535.  FrameRgn                                GdiComment 
  536.  GetArcDirection                         GetAspectRatioFilterEx 
  537.  GetBitmapBits                           GetBitmapDimensionEx 
  538.  GetBkColor                              GetBkMode 
  539.  GetBoundsRect                           GetBrushOrgEx 
  540.  GetCharABCWidthsA                       GetCharABCWidthsFloatA 
  541.  GetCharABCWidthsFloatW                  GetCharABCWidthsW 
  542.  GetCharWidth32A                         GetCharWidth32W 
  543.  GetCharWidthA                           GetCharWidthFloatA 
  544.  GetCharWidthFloatW                      GetCharWidthW 
  545.  GetCharacterPlacementA                  GetCharacterPlacementW 
  546.  GetClipBox                              GetClipRgn 
  547.  GetColorAdjustment                      GetColorSpace 
  548.  GetCurrentObject                        GetCurrentPositionEx 
  549.  GetDCOrgEx                              GetDIBColorTable 
  550.  GetDIBits                               GetDeviceCaps 
  551.  GetDeviceGammaRamp                      GetEnhMetaFileA 
  552.  GetEnhMetaFileBits                      GetEnhMetaFileDescriptionA 
  553.  GetEnhMetaFileDescriptionW              GetEnhMetaFileHeader 
  554.  GetEnhMetaFilePaletteEntries            GetEnhMetaFileW 
  555.  GetFontData                             GetFontLanguageInfo 
  556.  GetGlyphOutlineA                        GetGlyphOutlineW 
  557.  GetGraphicsMode                         GetICMProfileA 
  558.  GetICMProfileW                          GetKerningPairsA 
  559.  GetKerningPairsW                        GetLogColorSpaceA 
  560.  GetLogColorSpaceW                       GetMapMode 
  561.  GetMetaFileA                            GetMetaFileBitsEx 
  562.  GetMetaFileW                            GetMetaRgn 
  563.  GetMiterLimit                           GetNearestColor 
  564.  GetNearestPaletteIndex                  GetObjectA 
  565.  GetObjectType                           GetObjectW 
  566.  GetOutlineTextMetricsA                  GetOutlineTextMetricsW 
  567.  GetPaletteEntries                       GetPath 
  568.  GetPixel                                GetPixelFormat 
  569.  GetPolyFillMode                         GetROP2 
  570.  GetRasterizerCaps                       GetRegionData 
  571.  GetRgnBox                               GetStockObject 
  572.  GetStretchBltMode                       GetSystemPaletteEntries 
  573.  GetSystemPaletteUse                     GetTextAlign 
  574.  GetTextCharacterExtra                   GetTextCharset 
  575.  GetTextCharsetInfo                      GetTextColor 
  576.  GetTextExtentExPointA                   GetTextExtentExPointW 
  577.  GetTextExtentPoint32A                   GetTextExtentPoint32W 
  578.  GetTextExtentPointA                     GetTextExtentPointW 
  579.  GetTextFaceA                            GetTextFaceW 
  580.  GetTextMetricsA                         GetTextMetricsW 
  581.  GetViewportExtEx                        GetViewportOrgEx 
  582.  GetWinMetaFileBits                      GetWindowExtEx 
  583.  GetWindowOrgEx                          GetWorldTransform 
  584.  IntersectClipRect                       InvertRgn 
  585.  LPtoDP                                  LineDDA 
  586.  LineTo                                  MaskBlt 
  587.  ModifyWorldTransform                    MoveToEx 
  588.  OffsetClipRgn                           OffsetRgn 
  589.  OffsetViewportOrgEx                     OffsetWindowOrgEx 
  590.  PaintRgn                                PatBlt 
  591.  PathToRegion                            Pie 
  592.  PlayEnhMetaFile                         PlayEnhMetaFileRecord 
  593.  PlayMetaFile                            PlayMetaFileRecord 
  594.  PlgBlt                                  PolyBezier 
  595.  PolyBezierTo                            PolyDraw 
  596.  PolyPolygon                             PolyPolyline 
  597.  PolyTextOutA                            PolyTextOutW 
  598.  Polygon                                 Polyline 
  599.  PolylineTo                              PtInRegion 
  600.  PtVisible                               RealizePalette 
  601.  RectInRegion                            RectVisible 
  602.  Rectangle                               RemoveFontResourceA 
  603.  RemoveFontResourceW                     ResetDCA 
  604.  ResetDCW                                ResizePalette 
  605.  RestoreDC                               RoundRect 
  606.  SaveDC                                  ScaleViewportExtEx 
  607.  ScaleWindowExtEx                        SelectClipPath 
  608.  SelectClipRgn                           SelectObject 
  609.  SelectPalette                           SetAbortProc 
  610.  SetArcDirection                         SetBitmapBits 
  611.  SetBitmapDimensionEx                    SetBkColor 
  612.  SetBkMode                               SetBoundsRect 
  613.  SetBrushOrgEx                           SetColorAdjustment 
  614.  SetColorSpace                           SetDIBColorTable 
  615.  SetDIBits                               SetDIBitsToDevice 
  616.  SetDeviceGammaRamp                      SetEnhMetaFileBits 
  617.  SetGraphicsMode                         SetICMMode 
  618.  SetICMProfileA                          SetICMProfileW 
  619.  SetMapMode                              SetMapperFlags 
  620.  SetMetaFileBitsEx                       SetMetaRgn 
  621.  SetMiterLimit                           SetPaletteEntries 
  622.  SetPixel                                SetPixelFormat 
  623.  SetPixelV                               SetPolyFillMode 
  624.  SetROP2                                 SetRectRgn 
  625.  SetStretchBltMode                       SetSystemPaletteUse 
  626.  SetTextAlign                            SetTextCharacterExtra 
  627.  SetTextColor                            SetTextJustification 
  628.  SetViewportExtEx                        SetViewportOrgEx 
  629.  SetWinMetaFileBits                      SetWindowExtEx 
  630.  SetWindowOrgEx                          SetWorldTransform 
  631.  StartDocA                               StartDocW 
  632.  StartPage                               StretchBlt 
  633.  StretchDIBits                           StrokeAndFillPath 
  634.  StrokePath                              SwapBuffers 
  635.  TextOutA                                TextOutW 
  636.  TranslateCharsetInfo                    UnrealizeObject 
  637.  UpdateColors                            UpdateICMRegKeyA 
  638.  UpdateICMRegKeyW                        WidenPath 
  639.  
  640.  The functions in the following list appear in the _USER32.LIB intercept 
  641.  library : 
  642.  
  643.  ActivateKeyboardLayout                  AdjustWindowRect 
  644.  AdjustWindowRectEx                      AnyPopup 
  645.  AppendMenuA                             AppendMenuW 
  646.  ArrangeIconicWindows                    AttachThreadInput 
  647.  BeginDeferWindowPos                     BeginPaint 
  648.  BringWindowToTop                        BroadcastSystemMessage 
  649.  CallMsgFilterA                          CallMsgFilterW 
  650.  CallNextHookEx                          CallWindowProcA 
  651.  CallWindowProcW                         CascadeWindows 
  652.  ChangeClipboardChain                    ChangeDisplaySettingsA 
  653.  ChangeDisplaySettingsW                  ChangeMenuA 
  654.  ChangeMenuW                             CharLowerA 
  655.  CharLowerBuffA                          CharLowerBuffW 
  656.  CharLowerW                              CharNextA 
  657.  CharNextExA                             CharNextW 
  658.  CharPrevA                               CharPrevExA 
  659.  CharPrevW                               CharToOemA 
  660.  CharToOemBuffA                          CharToOemBuffW 
  661.  CharToOemW                              CharUpperA 
  662.  CharUpperBuffA                          CharUpperBuffW 
  663.  CharUpperW                              CheckDlgButton 
  664.  CheckMenuItem                           CheckMenuRadioItem 
  665.  CheckRadioButton                        ChildWindowFromPoint 
  666.  ChildWindowFromPointEx                  ClientToScreen 
  667.  ClipCursor                              CloseClipboard 
  668.  CloseDesktop                            CloseWindow 
  669.  CloseWindowStation                      CopyAcceleratorTableA 
  670.  CopyAcceleratorTableW                   CopyIcon 
  671.  CopyImage                               CopyRect 
  672.  CountClipboardFormats                   CreateAcceleratorTableA 
  673.  CreateAcceleratorTableW                 CreateCaret 
  674.  CreateCursor                            CreateDesktopA 
  675.  CreateDesktopW                          CreateDialogIndirectParamA 
  676.  CreateDialogIndirectParamW              CreateDialogParamA 
  677.  CreateDialogParamW                      CreateIcon 
  678.  CreateIconFromResource                  CreateIconFromResourceEx 
  679.  CreateIconIndirect                      CreateMDIWindowA 
  680.  CreateMDIWindowW                        CreateMenu 
  681.  CreatePopupMenu                         CreateWindowExA 
  682.  CreateWindowExW                         CreateWindowStationA 
  683.  CreateWindowStationW                    DdeAbandonTransaction 
  684.  DdeAccessData                           DdeAddData 
  685.  DdeClientTransaction                    DdeCmpStringHandles 
  686.  DdeConnect                              DdeConnectList 
  687.  DdeCreateDataHandle                     DdeCreateStringHandleA 
  688.  DdeCreateStringHandleW                  DdeDisconnect 
  689.  DdeDisconnectList                       DdeEnableCallback 
  690.  DdeFreeDataHandle                       DdeFreeStringHandle 
  691.  DdeGetData                              DdeGetLastError 
  692.  DdeImpersonateClient                    DdeInitializeA 
  693.  DdeInitializeW                          DdeKeepStringHandle 
  694.  DdeNameService                          DdePostAdvise 
  695.  DdeQueryConvInfo                        DdeQueryNextServer 
  696.  DdeQueryStringA                         DdeQueryStringW 
  697.  DdeReconnect                            DdeSetQualityOfService 
  698.  DdeSetUserHandle                        DdeUnaccessData 
  699.  DdeUninitialize                         DefDlgProcA 
  700.  DefDlgProcW                             DefFrameProcA 
  701.  DefFrameProcW                           DefMDIChildProcA 
  702.  DefMDIChildProcW                        DefWindowProcA 
  703.  DefWindowProcW                          DeferWindowPos 
  704.  DeleteMenu                              DestroyAcceleratorTable 
  705.  DestroyCaret                            DestroyCursor 
  706.  DestroyIcon                             DestroyMenu 
  707.  DestroyWindow                           DialogBoxIndirectParamA 
  708.  DialogBoxIndirectParamW                 DialogBoxParamA 
  709.  DialogBoxParamW                         DispatchMessageA 
  710.  DispatchMessageW                        DlgDirListA 
  711.  DlgDirListComboBoxA                     DlgDirListComboBoxW 
  712.  DlgDirListW                             DlgDirSelectComboBoxExA 
  713.  DlgDirSelectComboBoxExW                 DlgDirSelectExA 
  714.  DlgDirSelectExW                         DragDetect 
  715.  DragObject                              DrawAnimatedRects 
  716.  DrawCaption                             DrawEdge 
  717.  DrawFocusRect                           DrawFrameControl 
  718.  DrawIcon                                DrawIconEx 
  719.  DrawMenuBar                             DrawStateA 
  720.  DrawStateW                              DrawTextA 
  721.  DrawTextExA                             DrawTextExW 
  722.  DrawTextW                               EmptyClipboard 
  723.  EnableMenuItem                          EnableScrollBar 
  724.  EnableWindow                            EndDeferWindowPos 
  725.  EndDialog                               EndPaint 
  726.  EnumChildWindows                        EnumClipboardFormats 
  727.  EnumDesktopsA                           EnumDesktopsW 
  728.  EnumDesktopWindows                      EnumDisplaySettingsA 
  729.  EnumDisplaySettingsW                    EnumPropsA 
  730.  EnumPropsExA                            EnumPropsExW 
  731.  EnumPropsW                              EnumThreadWindows 
  732.  EnumWindowStationsA                     EnumWindowStationsW 
  733.  EnumWindows                             EqualRect 
  734.  ExcludeUpdateRgn                        ExitWindowsEx 
  735.  FillRect                                FindWindowA 
  736.  FindWindowExA                           FindWindowExW 
  737.  FindWindowW                             FlashWindow 
  738.  FrameRect                               FreeDDElParam 
  739.  GetActiveWindow                         GetAsyncKeyState 
  740.  GetCapture                              GetCaretBlinkTime 
  741.  GetCaretPos                             GetClassInfoA 
  742.  GetClassInfoExA                         GetClassInfoExW 
  743.  GetClassInfoW                           GetClassLongA 
  744.  GetClassLongW                           GetClassNameA 
  745.  GetClassNameW                           GetClassWord 
  746.  GetClientRect                           GetClipCursor 
  747.  GetClipboardData                        GetClipboardFormatNameA 
  748.  GetClipboardFormatNameW                 GetClipboardOwner 
  749.  GetClipboardViewer                      GetCursor 
  750.  GetCursorPos                            GetDC 
  751.  GetDCEx                                 GetDesktopWindow 
  752.  GetDialogBaseUnits                      GetDlgCtrlID 
  753.  GetDlgItem                              GetDlgItemInt 
  754.  GetDlgItemTextA                         GetDlgItemTextW 
  755.  GetDoubleClickTime                      GetFocus 
  756.  GetForegroundWindow                     GetIconInfo 
  757.  GetInputState                           GetKBCodePage 
  758.  GetKeyNameTextA                         GetKeyNameTextW 
  759.  GetKeyState                             GetKeyboardLayout 
  760.  GetKeyboardLayoutList                   GetKeyboardLayoutNameA 
  761.  GetKeyboardLayoutNameW                  GetKeyboardState 
  762.  GetKeyboardType                         GetLastActivePopup 
  763.  GetMenu                                 GetMenuCheckMarkDimensions 
  764.  GetMenuContextHelpId                    GetMenuDefaultItem 
  765.  GetMenuItemCount                        GetMenuItemID 
  766.  GetMenuItemInfoA                        GetMenuItemInfoW 
  767.  GetMenuItemRect                         GetMenuState 
  768.  GetMenuStringA                          GetMenuStringW 
  769.  GetMessageA                             GetMessageExtraInfo 
  770.  GetMessagePos                           GetMessageTime 
  771.  GetMessageW                             GetNextDlgGroupItem 
  772.  GetNextDlgTabItem                       GetOpenClipboardWindow 
  773.  GetParent                               GetPriorityClipboardFormat 
  774.  GetProcessWindowStation                 GetPropA 
  775.  GetPropW                                GetQueueStatus 
  776.  GetScrollInfo                           GetScrollPos 
  777.  GetScrollRange                          GetSubMenu 
  778.  GetSysColor                             GetSysColorBrush 
  779.  GetSystemMenu                           GetSystemMetrics 
  780.  GetTabbedTextExtentA                    GetTabbedTextExtentW 
  781.  GetThreadDesktop                        GetTopWindow 
  782.  GetUpdateRect                           GetUpdateRgn 
  783.  GetUserObjectInformationA               GetUserObjectInformationW 
  784.  GetUserObjectSecurity                   GetWindow 
  785.  GetWindowContextHelpId                  GetWindowDC 
  786.  GetWindowLongA                          GetWindowLongW 
  787.  GetWindowPlacement                      GetWindowRect 
  788.  GetWindowRgn                            GetWindowTextA 
  789.  GetWindowTextLengthA                    GetWindowTextLengthW 
  790.  GetWindowTextW                          GetWindowThreadProcessId 
  791.  GetWindowWord                           GrayStringA 
  792.  GrayStringW                             HideCaret 
  793.  HiliteMenuItem                          ImpersonateDdeClientWindow 
  794.  InSendMessage                           InflateRect 
  795.  InsertMenuA                             InsertMenuItemA 
  796.  InsertMenuItemW                         InsertMenuW 
  797.  IntersectRect                           InvalidateRect 
  798.  InvalidateRgn                           InvertRect 
  799.  IsCharAlphaA                            IsCharAlphaNumericA 
  800.  IsCharAlphaNumericW                     IsCharAlphaW 
  801.  IsCharLowerA                            IsCharLowerW 
  802.  IsCharUpperA                            IsCharUpperW 
  803.  IsChild                                 IsClipboardFormatAvailable 
  804.  IsDialogMessageA                        IsDialogMessageW 
  805.  IsDlgButtonChecked                      IsIconic 
  806.  IsMenu                                  IsRectEmpty 
  807.  IsWindow                                IsWindowEnabled 
  808.  IsWindowUnicode                         IsWindowVisible 
  809.  IsZoomed                                KillTimer 
  810.  LoadAcceleratorsA                       LoadAcceleratorsW 
  811.  LoadBitmapA                             LoadBitmapW 
  812.  LoadCursorA                             LoadCursorFromFileA 
  813.  LoadCursorFromFileW                     LoadCursorW 
  814.  LoadIconA                               LoadIconW 
  815.  LoadImageA                              LoadImageW 
  816.  LoadKeyboardLayoutA                     LoadKeyboardLayoutW 
  817.  LoadMenuA                               LoadMenuIndirectA 
  818.  LoadMenuIndirectW                       LoadMenuW 
  819.  LoadStringA                             LoadStringW 
  820.  LockWindowUpdate                        LookupIconIdFromDirectory 
  821.  LookupIconIdFromDirectoryEx             MapDialogRect 
  822.  MapVirtualKeyA                          MapVirtualKeyExA 
  823.  MapVirtualKeyExW                        MapVirtualKeyW 
  824.  MapWindowPoints                         MenuItemFromPoint 
  825.  MessageBeep                             MessageBoxA 
  826.  MessageBoxExA                           MessageBoxExW 
  827.  MessageBoxIndirectA                     MessageBoxIndirectW 
  828.  MessageBoxW                             ModifyMenuA 
  829.  ModifyMenuW                             MoveWindow 
  830.  MsgWaitForMultipleObjects               OemKeyScan 
  831.  OemToCharA                              OemToCharBuffA 
  832.  OemToCharBuffW                          OemToCharW 
  833.  OffsetRect                              OpenClipboard 
  834.  OpenDesktopA                            OpenDesktopW 
  835.  OpenIcon                                OpenInputDesktop 
  836.  OpenWindowStationA                      OpenWindowStationW 
  837.  PackDDElParam                           PaintDesktop 
  838.  PeekMessageA                            PeekMessageW 
  839.  PostMessageA                            PostMessageW 
  840.  PostQuitMessage                         PostThreadMessageA 
  841.  PostThreadMessageW                      PtInRect 
  842.  RedrawWindow                            RegisterClassA 
  843.  RegisterClassExA                        RegisterClassExW 
  844.  RegisterClassW                          RegisterClipboardFormatA 
  845.  RegisterClipboardFormatW                RegisterHotKey 
  846.  RegisterWindowMessageA                  RegisterWindowMessageW 
  847.  ReleaseCapture                          ReleaseDC 
  848.  RemoveMenu                              RemovePropA 
  849.  RemovePropW                             ReplyMessage 
  850.  ReuseDDElParam                          ScreenToClient 
  851.  ScrollDC                                ScrollWindow 
  852.  ScrollWindowEx                          SendDlgItemMessageA 
  853.  SendDlgItemMessageW                     SendMessageA 
  854.  SendMessageCallbackA                    SendMessageCallbackW 
  855.  SendMessageTimeoutA                     SendMessageTimeoutW 
  856.  SendMessageW                            SendNotifyMessageA 
  857.  SendNotifyMessageW                      SetActiveWindow 
  858.  SetCapture                              SetCaretBlinkTime 
  859.  SetCaretPos                             SetClassLongA 
  860.  SetClassLongW                           SetClassWord 
  861.  SetClipboardData                        SetClipboardViewer 
  862.  SetCursor                               SetCursorPos 
  863.  SetDebugErrorLevel                      SetDlgItemInt 
  864.  SetDlgItemTextA                         SetDlgItemTextW 
  865.  SetDoubleClickTime                      SetFocus 
  866.  SetForegroundWindow                     SetKeyboardState 
  867.  SetLastErrorEx                          SetMenu 
  868.  SetMenuContextHelpId                    SetMenuDefaultItem 
  869.  SetMenuItemBitmaps                      SetMenuItemInfoA 
  870.  SetMenuItemInfoW                        SetMessageExtraInfo 
  871.  SetMessageQueue                         SetParent 
  872.  SetProcessWindowStation                 SetPropA 
  873.  SetPropW                                SetRect 
  874.  SetRectEmpty                            SetScrollInfo 
  875.  SetScrollPos                            SetScrollRange 
  876.  SetSysColors                            SetSystemCursor 
  877.  SetThreadDesktop                        SetTimer 
  878.  SetUserObjectInformationA               SetUserObjectInformationW 
  879.  SetUserObjectSecurity                   SetWindowContextHelpId 
  880.  SetWindowLongA                          SetWindowLongW 
  881.  SetWindowPlacement                      SetWindowPos 
  882.  SetWindowRgn                            SetWindowTextA 
  883.  SetWindowTextW                          SetWindowWord 
  884.  SetWindowsHookA                         SetWindowsHookExA 
  885.  SetWindowsHookExW                       SetWindowsHookW 
  886.  ShowCaret                               ShowCursor 
  887.  ShowOwnedPopups                         ShowScrollBar 
  888.  ShowWindow                              ShowWindowAsync 
  889.  SubtractRect                            SwapMouseButton 
  890.  SwitchDesktop                           SystemParametersInfoA 
  891.  SystemParametersInfoW                   TabbedTextOutA 
  892.  TabbedTextOutW                          TileWindows 
  893.  ToAscii                                 ToAsciiEx 
  894.  ToUnicode                               TrackPopupMenu 
  895.  TrackPopupMenuEx                        TranslateAcceleratorA 
  896.  TranslateAcceleratorW                   TranslateMDISysAccel 
  897.  TranslateMessage                        UnhookWindowsHook 
  898.  UnhookWindowsHookEx                     UnionRect 
  899.  UnloadKeyboardLayout                    UnpackDDElParam 
  900.  UnregisterClassA                        UnregisterClassW 
  901.  UnregisterHotKey                        UpdateWindow 
  902.  ValidateRect                            ValidateRgn 
  903.  VkKeyScanA                              VkKeyScanExA 
  904.  VkKeyScanExW                            VkKeyScanW 
  905.  WaitForInputIdle                        WaitMessage 
  906.  WinHelpA                                WinHelpW 
  907.  WindowFromDC                            WindowFromPoint 
  908.  keybd_event                             mouse_event 
  909.  wvsprintfA                              wvsprintfW 
  910.  
  911.  
  912. ΓòÉΓòÉΓòÉ 3.4. Creating User Events in Your Program ΓòÉΓòÉΓòÉ
  913.  
  914. The CPPWPA3.OBJ file contains an entry point called PERF that accepts calls 
  915. from the program you are tracing. Calls to the PERF entry point at execution 
  916. time are referred to as user events. User events cause text strings to be 
  917. inserted into the trace file. 
  918.  
  919. To add a call to the PERF entry point: 
  920.  
  921.   1. Declare a prototype for the PERF entry point. 
  922.  
  923.      If you add a user event to your program source file, you must also include 
  924.      a prototype for the PERF entry point. 
  925.  
  926.      For C and C++ programs, the prototype will be inserted for you when you 
  927.      compile your program if you place the following statement at the beginning 
  928.      of your source file: 
  929.  
  930.           #include <iperf.h>
  931.  
  932.      Note:   If you want to insert the prototype yourself, the prototypes for C 
  933.              and C++ programs are as follows: 
  934.  
  935.      C Prototype 
  936.  
  937.           void PERF (const char* string);
  938.  
  939.      C++ Prototype 
  940.  
  941.           extern "C" {void PERF(const char* string);}
  942.  
  943.  
  944.   2. Add a call to the entry point everywhere you want a user event generated. 
  945.  
  946.      The following is an example of a call to the PERF entry point: 
  947.  
  948.           PERF (string);
  949.  
  950.           where:
  951.           string is an ASCIIZ string.
  952.  
  953.      When such a call is made, the string is placed in the trace file. You can 
  954.      see the string in the Call Nesting Statistics, and Time Line diagrams. 
  955.  
  956.      Warning:  The string must exist in storage when your program terminates. 
  957.      If the string exists in automatic storage on the stack or storage defined 
  958.      in a dynamically loaded DLL, the string will appear in the trace file, but 
  959.      the text may not appear as it was defined. (The string can be allocated on 
  960.      the heap if its contents are not deleted when your program terminates.) 
  961.  
  962.  
  963.  Related Information 
  964.  
  965.  o Compiling and Linking Your Program 
  966.  o Tracing System Calls 
  967.  o Starting and Stopping the Performance Analyzer from Your Program 
  968.  o Annotate Window 
  969.  o Call Nesting diagram 
  970.  o Statistics diagram 
  971.  o Time Line diagram 
  972.  o Application Monitor Window 
  973.  o IBM C/C++ Tools: Programming Guide. 
  974.  
  975.  
  976. ΓòÉΓòÉΓòÉ 3.5. Starting and Stopping the Performance Analyzer from Your Program ΓòÉΓòÉΓòÉ
  977.  
  978. The CPPWPA3.OBJ file contains entry points called PerfStart and PerfStop that 
  979. accept calls from the program you are tracing. Calls to the PerfStart and 
  980. PerfStop entry points cause the Performance Analyzer to start and stop tracing, 
  981. respectively. By putting these calls into your source code, you can control 
  982. precisely when the Performance Analyzer starts and stops recording events 
  983. during program execution. To turn tracing: 
  984.  
  985.  On        Call the PerfStart entry point. 
  986.  Off       Call the PerfStop entry point. 
  987.  
  988.  Notes: 
  989.  
  990.   1. If the trace is already on, calling PerfStart has no effect. If the trace 
  991.      is already off, calling PerfStop has no effect. 
  992.   2. You can also start and stop tracing with the Trace on and Trace off push 
  993.      buttons on the Application Monitor window. 
  994.  
  995.  You can place calls to the PerfStart and PerfStop entry points anywhere in 
  996.  your program, even in different functions, object modules, or DLLs. 
  997.  
  998.  To add calls to the PerfStart and PerfStop entry points: 
  999.  
  1000.   1. Declare a prototype for the PerfStart and PerfStop entry points. 
  1001.  
  1002.      For C and C++ programs, the prototypes will be inserted for you when you 
  1003.      compile your program if you place the following statement at the beginning 
  1004.      of your source file: 
  1005.  
  1006.           #include <iperf.h>
  1007.  
  1008.      Note:   If you want to insert the prototypes yourself, the prototypes for 
  1009.              C and C++ programs are as follows: 
  1010.  
  1011.      C Prototype 
  1012.  
  1013.           void PerfStart (void);
  1014.           void PerfStop (void);
  1015.  
  1016.      C++ Prototype 
  1017.  
  1018.           extern "C" {void PerfStart (void);}
  1019.           extern "C" {void PerfStop (void);}
  1020.  
  1021.  
  1022.   2. Add a call to the appropriate entry point everywhere you want to start or 
  1023.      stop tracing. 
  1024.  
  1025.      The following example shows how calls to the PerfStart and PerfStop entry 
  1026.      points could be placed in your program: 
  1027.  
  1028.                .
  1029.                .
  1030.                .
  1031.           PerfStop();  // turn off tracing here
  1032.                .
  1033.                .
  1034.                .
  1035.           PerfStart();  // resume tracing here
  1036.  
  1037.  Related Information 
  1038.  
  1039.  o Compiling and Linking Your Program 
  1040.  o Tracing System Calls 
  1041.  o Annotate Window 
  1042.  o Call Nesting diagram 
  1043.  o Statistics diagram 
  1044.  o Time Line diagram 
  1045.  o Application Monitor Window 
  1046.  o IBM C/C++ Tools: Programming Guide. 
  1047.  
  1048.  
  1049. ΓòÉΓòÉΓòÉ 4. Starting the Performance Analyzer from a Command Line ΓòÉΓòÉΓòÉ
  1050.  
  1051. After completing the instructions in Preparing Your Program for the Performance 
  1052. Analyzer, you are ready to create a trace file and use the Performance Analyzer 
  1053. to analyze your program. 
  1054.  
  1055. The command you enter to start the Performance Execution Trace Analyzer depends 
  1056. on which of the following you want to do first: 
  1057.  
  1058.  o Trace an executable 
  1059.  o Analyze an existing trace file. 
  1060.  o Display the Performance Analyzer's main control window 
  1061.  
  1062.  Tracing an Executable 
  1063.  
  1064.  o If you have an executable you want to trace, you can start the analyzer from 
  1065.    a command line, a command file (CMD), or a batch file (BAT) by entering: 
  1066.  
  1067.       iperf myprog parms
  1068.  
  1069.    Where: 
  1070.  
  1071.     myprog    Represents an executable file name. This is optional. 
  1072.     parms     Represents executable parameters. These are optional. 
  1073.  
  1074.    Note: 
  1075.  
  1076.    The first time you start the Performance Analyzer, a profile window appears 
  1077.    and prompts you to specify where the Performance Analyzer's profile file 
  1078.    should be located. If you want the default, press the OK push button. See 
  1079.    Performance Analyzer - Specify Profile Location Window for more information. 
  1080.  
  1081.  o You can also include the /go option in the command: 
  1082.  
  1083.       iperf /go myprog parms
  1084.  
  1085.    Where: 
  1086.  
  1087.     /go       Option that executes your program, creates a trace file, and then 
  1088.               exits the Performance Analyzer. This option is useful if you have 
  1089.               several programs (requiring no manual intervention) that you want 
  1090.               to run in succession from a command file. This is optional. 
  1091.     myprog    Represents an executable file name. This is required when the go/ 
  1092.               option is specified. 
  1093.     parms     Represents parameters associated with the myprog executable. 
  1094.               These are optional. 
  1095.  
  1096.  Analyzing an Existing Trace File 
  1097.  
  1098.  If you want to start analyzing a trace file you have already created, you can 
  1099.  start the analyzer from a command line, a command file (CMD), or a batch file 
  1100.  (BAT) by entering: 
  1101.  
  1102.   iperf /x myprog.trc
  1103.  
  1104.  Where: 
  1105.  
  1106.  /x            Represents one or more of the following analyzer options. If you 
  1107.                have already created a trace file, these options cause the trace 
  1108.                file to be displayed in their respective diagrams. Once you are 
  1109.                familiar with the Performance Analyzer application, you can 
  1110.                quickly open the diagrams by entering as many of these options 
  1111.                as you want in your startup command. This is optional. 
  1112.  
  1113.     /cn  Displays the trace file in the Call Nesting diagram. 
  1114.  
  1115.     /ed  Displays the trace file in the Execution Density diagram. 
  1116.  
  1117.     /cg  Displays the trace file in the Dynamic Call Graph. 
  1118.  
  1119.     /ss  Displays the trace file in the Statistics diagram. 
  1120.  
  1121.     /tl  Displays the trace file in the Time Line diagram. 
  1122.  
  1123.  myprog.trc    Represents a trace file name. 
  1124.  
  1125.  Displaying the Performance Analyzer's Main Control Window 
  1126.  
  1127.  If you enter the following command, the analyzer's main control window, the 
  1128.  Performance Analyzer - Window Manager window, appears: 
  1129.  
  1130.   iperf
  1131.  
  1132.  From this window, you can start either tracing an executable or analyzing an 
  1133.  existing trace file. See Creating a Trace File to continue. 
  1134.  
  1135.  Related Information 
  1136.  
  1137.  o Introducing the Performance Analyzer 
  1138.  o Preparing Your Program for the Performance Analyzer 
  1139.  o Performance Analyzer - Window Manager Window 
  1140.  o Creating a Trace File 
  1141.  o Analyzing a Trace File 
  1142.  
  1143.  
  1144. ΓòÉΓòÉΓòÉ 5. Starting the Performance Analyzer from WorkFrame ΓòÉΓòÉΓòÉ
  1145.  
  1146. Before you start the Performance Analyzer from the WorkFrame environment, you 
  1147. must: 
  1148.  
  1149.   1. Create a project for the program you want to analyze. 
  1150.  
  1151.      Note:   For information on creating a project, refer to your WorkFrame 
  1152.      documentation. 
  1153.  
  1154.   2. Open a project folder in the WorkFrame window. 
  1155.  
  1156.   3. Compile and link your program with Performance Analyzer options. 
  1157.  
  1158.      Note:   This is described in Compiling and Linking Your Program. 
  1159.  
  1160.   4. Highlight an object that represents an executable file or a trace file. 
  1161.  
  1162.   5. Click mouse button 2 on the highlighted object to display a pop-up menu. 
  1163.  
  1164.   6. Select Analyze. 
  1165.  
  1166.  Related Information 
  1167.  
  1168.  o Introducing the Performance Analyzer 
  1169.  o Preparing Your Program for the Performance Analyzer 
  1170.  o Performance Analyzer - Window Manager Window 
  1171.  o Creating a Trace File 
  1172.  o Analyzing a Trace File 
  1173.  o Search Paths... Choice 
  1174.  o Project Menu 
  1175.  o Exiting the Performance Analyzer. 
  1176.  
  1177.  
  1178. ΓòÉΓòÉΓòÉ 6. Exiting the Performance Analyzer ΓòÉΓòÉΓòÉ
  1179.  
  1180. If you want to exit the Performance Analyzer, and are not in the process of 
  1181. creating a trace file, do the following: 
  1182.  
  1183.   1. Select the Exit the Performance Analyzer choice from one of the following 
  1184.      menus: 
  1185.  
  1186.     o File menu on the Performance Analyzer - Window Manager window 
  1187.     o Application menu on the Trace Generation window 
  1188.     o Trace file menu on any of the diagrams. 
  1189.  
  1190.   2. Select Yes when prompted. 
  1191.  
  1192.  If you want to exit the Performance Analyzer while a trace file is being 
  1193.  created, do the following: 
  1194.  
  1195.   1. Click on the Stop push button on the Application Monitor window. 
  1196.  
  1197.   2. Click on the Cancel push button on the Analyze Trace window. 
  1198.  
  1199.   3. Select the Exit the Performance Analyzer choice from the File menu on the 
  1200.      Performance Analyzer - Window Manager window. 
  1201.  
  1202.   4. Select Yes when prompted. 
  1203.  
  1204.  Related Information 
  1205.  
  1206.  o Performance Analyzer - Window Manager Window 
  1207.  o Quick Exit Choice 
  1208.  o Exit the Performance Analyzer Choice. 
  1209.  
  1210.  
  1211. ΓòÉΓòÉΓòÉ 7. Creating a Trace File ΓòÉΓòÉΓòÉ
  1212.  
  1213. After compiling and linking your program, you can start the Performance 
  1214. Analyzer and create a trace file. A trace file contains a chronological 
  1215. sequence of events that occur during the execution of your program. 
  1216.  
  1217. By analyzing the trace file, you can learn about your program's structure, 
  1218. locate and diagnose problems, and pinpoint ways to improve performance. The 
  1219. Performance Analyzer provides five diagrams in which you can analyze the trace 
  1220. file. Each diagram presents a different view of the trace file to give you an 
  1221. overall idea of how your program performs. The diagrams are as follows: 
  1222.  
  1223.  o Call Nesting 
  1224.  o Dynamic Call Graph 
  1225.  o Execution Density 
  1226.  o Statistics 
  1227.  o Time Line. 
  1228.  
  1229.  Note:   Before creating a trace file, you must prepare your program for use by 
  1230.  the Performance Analyzer. For more information, see Preparing Your Program for 
  1231.  the Performance Analyzer. 
  1232.  
  1233.  To create a trace file: 
  1234.  
  1235.   1. Click on the Create Trace... push button in the Performance Analyzer - 
  1236.      Window Manager window. 
  1237.  
  1238.   2. Type the full path name and the file name of the program you want to trace 
  1239.      in the Program Name entry field. If the program is in your current 
  1240.      directory, you do not have to type the path name. 
  1241.  
  1242.      Note:   If you are not sure where the file is located, select the Find... 
  1243.      push button. 
  1244.  
  1245.   3. Type any parameters that you want to pass to your program in the Program 
  1246.      Parameters entry field. 
  1247.  
  1248.      Note:   This entry field is optional. 
  1249.  
  1250.   4. If you want the trace file to have a different path or file name than the 
  1251.      defaults, type a path and file name in the Trace File Name entry field. 
  1252.  
  1253.      The default path name is the directory where your program resides. The 
  1254.      default trace file name is myprog.trc, where myprog is the name of the 
  1255.      program you are tracing. 
  1256.  
  1257.      Note:   This entry field is optional. 
  1258.  
  1259.   5. Type any comments that you want to make about your trace in the Trace File 
  1260.      Description entry field. 
  1261.  
  1262.      Note:   This entry field is optional. 
  1263.  
  1264.   6. Select the OK push button. The Trace Generation window appears. 
  1265.  
  1266.   7. Select the Trace push button in the Trace Generation window. 
  1267.  
  1268.      Your program begins executing. When your program ends, the Analyze Trace 
  1269.      window is displayed. 
  1270.  
  1271.   8. Click on the check box next to each diagram in which you want to view the 
  1272.      trace file. 
  1273.  
  1274.      Note:   If you open your trace file in a diagram and find that the file 
  1275.      does not contain any trace events, your application may have been unable 
  1276.      to locate CPPWPA3.DLL when you created the trace file. To correct this, 
  1277.      change your path to point to the location of CPPWPA3.DLL (probably in the 
  1278.      DLL subdirectory where you installed VisualAge for C++), and then recreate 
  1279.      your trace file. 
  1280.  
  1281.  Related Information 
  1282.  
  1283.  o Compiling and Linking Your Program 
  1284.  o Create Trace Window 
  1285.  o Trace Generation Window 
  1286.  o Analyze Trace Window. 
  1287.  
  1288.  
  1289. ΓòÉΓòÉΓòÉ 8. Creating a Customized Trace File ΓòÉΓòÉΓòÉ
  1290.  
  1291. By default, the Performance Analyzer generates event information for every 
  1292. function executed that has been compiled and linked with the proper options. 
  1293. However, this sometimes causes the trace file to become large and difficult to 
  1294. manage. 
  1295.  
  1296. To allow you to control the size of your trace file, the Performance Analyzer 
  1297. provides the following parameters, which you can set prior to running your 
  1298. program. 
  1299.  
  1300. The following parameters affect the size of the trace file: 
  1301.  
  1302.  o Enabled or disabled state of components 
  1303.  o Call depth setting for each thread 
  1304.  o Time stamp setting 
  1305.  o Trigger settings. 
  1306.  o Buffer wrap setting. 
  1307.  
  1308.  Although they do not affect the size of your trace file, the following items 
  1309.  can also be customized: 
  1310.  
  1311.  o Trace file name. The default file name is myprog.trc, where myprog is the 
  1312.    name of the program you are tracing. 
  1313.  
  1314.    For more information on specifying a different trace file name, see Name 
  1315.    Trace File... Choice or Unique Trace File Name Choice. 
  1316.  
  1317.  o Trace file description. A description can make a trace file easier to 
  1318.    identify, especially when you create more than one trace file from the same 
  1319.    program and use different options for each trace. The description is 
  1320.    displayed in the Status Area of any open diagram. 
  1321.  
  1322.    For more information on attaching a description to a trace file, see Name 
  1323.    Trace File... Choice or Unique Trace File Name Choice. 
  1324.  
  1325.  Related Information 
  1326.  
  1327.  o Preparing Your Program for the Performance Analyzer 
  1328.  o Compiling and Linking Your Program 
  1329.  o Performance Analyzer - Window Manager Window 
  1330.  o Trace Generation Window. 
  1331.  
  1332.  
  1333. ΓòÉΓòÉΓòÉ 8.1. Enabling and Disabling Components ΓòÉΓòÉΓòÉ
  1334.  
  1335. From the Edit menu in the Trace Generation window, you can control which parts 
  1336. of your program are traced by enabling and disabling components. 
  1337.  
  1338. A component can be an executable file, a dynamic load library (DLL) file, an 
  1339. object (OBJ) file, or a function. EXE and DLL files contain object files, and 
  1340. object files contain functions. 
  1341.  
  1342. To view or hide components in the window, click on the plus and minus icons to 
  1343. expand and contract EXE, DLL, and OBJ files. 
  1344.  
  1345. When a component is enabled, data for that component will be included in the 
  1346. trace file when the component is executed. When the component is disabled, no 
  1347. data is recorded in the trace file when the component is executed. 
  1348.  
  1349. Note:   The Performance Analyzer's default is to enable all components that 
  1350. have been compiled and linked with the proper options. 
  1351.  
  1352. When you disable: 
  1353.  
  1354.  o An EXE, a DLL, or an OBJ file, the Performance Analyzer disables all 
  1355.    functions within the selected file and removes any triggers set on functions 
  1356.    within the file. 
  1357.  o A function, the Performance Analyzer removes any trigger set on it. 
  1358.  
  1359.  When you enable: 
  1360.  
  1361.  o An EXE, a DLL, or an OBJ file, the Performance Analyzer enables all 
  1362.    functions within the selected file. 
  1363.  
  1364.  When you set a trigger on a disabled function, the Performance Analyzer 
  1365.  enables the function. 
  1366.  
  1367.  The following choices are available from the Edit menu on the Trace Generation 
  1368.  window. The choices displayed in the menu change depending upon the type of 
  1369.  component selected; therefore, all of the choices are not displayed at the 
  1370.  same time. 
  1371.  
  1372.  Enable all executables 
  1373.            Enables all functions in all executable files. 
  1374.  
  1375.  Disable all executables 
  1376.            Disables all functions in all executable files. 
  1377.  
  1378.  Enable executable 
  1379.            Enables all functions in a selected executable file. This choice is 
  1380.            available when you select a disabled executable. 
  1381.  
  1382.  Disable executable 
  1383.            Disables all functions in a selected executable file. This choice is 
  1384.            available when you select an enabled executable. 
  1385.  
  1386.  Enable object file 
  1387.            Enables all functions in a selected object file. This choice is 
  1388.            available when you select a disabled object file. 
  1389.  
  1390.  Disable object file 
  1391.            Disables all functions in a selected object file. This choice is 
  1392.            available when you select an enabled object file. 
  1393.  
  1394.  Enable function 
  1395.            Enables a function. This choice is available when you select a 
  1396.            disabled function. 
  1397.  
  1398.  Disable function 
  1399.            Disables a function. This choice is available when you select an 
  1400.            enabled function. 
  1401.  
  1402.  Set trigger 
  1403.            Sets a trigger on a function so that the Performance Analyzer traces 
  1404.            the function and its associated calls. This choice is available when 
  1405.            you select a function that does not have a trigger set on it. 
  1406.  
  1407.            Note:   If triggers are set, the Performance Analyzer starts tracing 
  1408.            when it reaches the triggered function and continues tracing until 
  1409.            it receives a return from that function. If no triggers are set, the 
  1410.            Performance Analyzer traces all enabled components. 
  1411.  
  1412.  Remove trigger 
  1413.            Removes a trigger on a function. This choice is available when you 
  1414.            select a function that has a trigger set on it. 
  1415.  
  1416.            Note:   If triggers are set, the Performance Analyzer starts tracing 
  1417.            when it reaches the triggered function and continues tracing until 
  1418.            it receives a return from that function. If no triggers are set, the 
  1419.            Performance Analyzer traces all enabled components. 
  1420.  
  1421.  You can enable or disable a component in one of the following ways: 
  1422.  
  1423.  o Click on the file name or icon of the component you want to enable or 
  1424.    disable. Then select the appropriate enable or disable choice from the Edit 
  1425.    menu on the Trace Generation window. 
  1426.  o Double-click on the file name or icon of the component you want to enable or 
  1427.    disable. 
  1428.  o Click mouse button 2 on the file name or icon of the component you want to 
  1429.    enable or disable. Then select the appropriate enable or disable choice from 
  1430.    the pop-up menu. 
  1431.  
  1432.  Note:   If the icon next to a component is: 
  1433.  
  1434.  o Green (with no slash mark), the component is enabled. 
  1435.  o Red (with a slash mark), the component is disabled. 
  1436.  o White, the component cannot be traced. 
  1437.  
  1438.  
  1439. ΓòÉΓòÉΓòÉ 8.2. Selecting the Call Depth for Each Thread ΓòÉΓòÉΓòÉ
  1440.  
  1441. You may want to specify the call depth that you want to trace in order to 
  1442. isolate an area of interest and reduce the amount of trace data. 
  1443.  
  1444. Select Call depth... from the Options menu on the Trace Generation window to 
  1445. select the nesting depth of function calls or to specify threads that you want 
  1446. to include in or exclude from the trace file. When the Call Depth window is 
  1447. displayed, you can select as many as 64 threads with a maximum nesting depth of 
  1448. 128 for each thread. The default is to have all threads selected with the 
  1449. maximum depth of 128. 
  1450.  
  1451. Related Information 
  1452.  
  1453.  o Call Depth... Choice 
  1454.  o Trace Generation Window 
  1455.  o Keys Help. 
  1456.  
  1457.  
  1458. ΓòÉΓòÉΓòÉ 8.3. Using Time Stamps ΓòÉΓòÉΓòÉ
  1459.  
  1460. Select Time stamp events from the Options menu on the Trace Generation window 
  1461. to choose whether to time stamp events during the trace analysis. Disabling 
  1462. Time stamp events causes your trace file to be smaller because time stamps are 
  1463. not stored. It does not limit the number of events collected in the trace file. 
  1464.  
  1465. While logging events, the Performance Analyzer adds a small amount of overhead 
  1466. time to the normal execution time of the program through buffer flushing and 
  1467. writing to disk, and through the monitoring of events. Although the time added 
  1468. is negligible, the Performance Analyzer attempts to remove it from the timings 
  1469. reported in the diagrams. Therefore, the timings you see in the diagrams 
  1470. represent your program's actual execution time as nearly as possible. The 
  1471. Performance Analyzer time stamps the buffer flush so that the buffer-flushing 
  1472. overhead can be removed from the diagrams. 
  1473.  
  1474. If you choose to create a trace file without time stamps: 
  1475.  
  1476.  o You can only view the trace file in the Dynamic Call Graph, Call Nesting, 
  1477.    and Statistics diagrams. 
  1478.  o All nodes in the Dynamic Call Graph will be the same size and color. 
  1479.  o Time data (such as execution time and time on stack) will not be present in 
  1480.    either the diagrams or their related dialogs. 
  1481.  
  1482.  Related Information 
  1483.  
  1484.  o Time Stamp Events Choice 
  1485.  o Understanding Overhead Time 
  1486.  o Trace Generation Window 
  1487.  o Keys Help. 
  1488.  
  1489.  
  1490. ΓòÉΓòÉΓòÉ 8.4. Setting and Removing Triggers ΓòÉΓòÉΓòÉ
  1491.  
  1492. A trigger turns tracing on when the function is called and then turns tracing 
  1493. off when it returns. The Performance Analyzer allows you to set and remove 
  1494. triggers on functions. You can set multiple triggers. 
  1495.  
  1496. By setting triggers to start or stop tracing at selected points in your 
  1497. program, you can control the size of your trace file. 
  1498.  
  1499. You can set and remove triggers from the Edit and Function pop-up menus on the 
  1500. Trace Generation window. 
  1501.  
  1502. Remember the following when using triggers: 
  1503.  
  1504.  o If triggers are set, the Performance Analyzer starts tracing when it reaches 
  1505.    the triggered function and continues tracing until it receives a return from 
  1506.    that function. If no triggers are set, the Performance Analyzer traces all 
  1507.    enabled components. 
  1508.  o If a trigger function is nested within another trigger function, tracing is 
  1509.    turned off only after the outer function returns. 
  1510.  o A function that has a trigger set on it has the letter T in the icon next to 
  1511.    its function name in the Trace Generation window. 
  1512.  o If you disable an EXE, a DLL, or an object (OBJ) file, the Performance 
  1513.    Analyzer disables all functions within the selected file and removes any 
  1514.    triggers set on functions within the file. 
  1515.  o If you set a trigger on a disabled function, the Performance Analyzer 
  1516.    enables the function. 
  1517.  o If you disable a function, the Performance Analyzer removes any trigger set 
  1518.    on it. 
  1519.  
  1520.  Related Information 
  1521.  
  1522.  o Set Trigger Choice 
  1523.  o Remove Trigger Choice 
  1524.  o Function Pop-up Menu 
  1525.  o Keys Help. 
  1526.  
  1527.  
  1528. ΓòÉΓòÉΓòÉ 8.5. Enabling and Disabling Buffer Wrap ΓòÉΓòÉΓòÉ
  1529.  
  1530. Select Buffer wrap from the Options menu on the Trace Generation window to 
  1531. enable or disable buffer wrapping. 
  1532.  
  1533. During a trace analysis, the Performance Analyzer and your program share memory 
  1534. with the trace buffer. The trace buffer allows the Performance Analyzer to log 
  1535. events that are running in the address space of the program. 
  1536.  
  1537. When Buffer wrap is enabled, the Performance Analyzer overwrites older events 
  1538. in the buffer with newer ones. Since the buffer is flushed only when the 
  1539. program ends, the trace file is smaller, but some trace data is lost. The 
  1540. default setting for Buffer wrap is disabled. A check mark appears next to the 
  1541. choice when it is enabled. The check mark does not appear when the choice is 
  1542. disabled. 
  1543.  
  1544. If Buffer wrap is disabled and the trace buffer becomes full, the Performance 
  1545. Analyzer: 
  1546.  
  1547.   1. Pauses the program 
  1548.   2. Time stamps the start of the buffer flush 
  1549.   3. Writes the events in the buffer to the trace file 
  1550.   4. Time stamps the end of the buffer flush 
  1551.   5. Resumes the program. 
  1552.  
  1553.      Note:   Time stamping the buffer flush allows the diagrams to remove the 
  1554.      buffer-flushing overhead time. 
  1555.  
  1556.  Related Information 
  1557.  
  1558.  o Buffer Wrap Choice 
  1559.  o Trace Generation Window 
  1560.  o Keys Help. 
  1561.  
  1562.  
  1563. ΓòÉΓòÉΓòÉ 8.6. Naming the Trace File ΓòÉΓòÉΓòÉ
  1564.  
  1565. Select Name trace file... from the Options menu on the Trace Generation window. 
  1566. In the Name Trace File window, you can enter your own trace file name and a 
  1567. short description. 
  1568.  
  1569. The default file name is myprog.trc, where myprog is the file name of the 
  1570. program you are tracing. 
  1571.  
  1572. When you run several traces of the same program, this option lets you name each 
  1573. trace file and describe what you did differently for each trace. 
  1574.  
  1575. For example, if you disable an object file for the first trace and disable time 
  1576. stamps for the second trace, you could name the first trace file TRACE1 and 
  1577. enter Disabled object file for its description. Likewise, you could name the 
  1578. second trace file TRACE2. and enter Disabled time stamps for its description. 
  1579.  
  1580. A trace file's description is displayed in the Status Area of any open diagram. 
  1581.  
  1582. Related Information 
  1583.  
  1584.  o Name Trace File... Choice 
  1585.  o Trace Generation Window 
  1586.  o Keys Help. 
  1587.  
  1588.  
  1589. ΓòÉΓòÉΓòÉ 8.7. Saving Trace File Settings ΓòÉΓòÉΓòÉ
  1590.  
  1591. Trace settings (settings that determine how your program is traced) that you 
  1592. enter are saved for the current session. You can save some trace settings for 
  1593. subsequent traces. If you want to save settings for subsequent sessions, select 
  1594. the Options menu and then select the Save choice from the Settings cascaded 
  1595. menu. 
  1596.  
  1597. Related Information 
  1598.  
  1599.  o Save Choice 
  1600.  o Trace Generation Window 
  1601.  o Keys Help. 
  1602.  
  1603.  
  1604. ΓòÉΓòÉΓòÉ 9. Analyzing a Trace File ΓòÉΓòÉΓòÉ
  1605.  
  1606. After you have created your trace file, the Performance Analyzer provides five 
  1607. diagrams in which you can view and analyze the data. Each diagram presents a 
  1608. different view of the trace file to give you an overall idea of how your 
  1609. program performs. 
  1610.  
  1611. The following list contains a description of each diagram and the icon the 
  1612. Performance Analyzer uses to represent each diagram throughout the application: 
  1613.  
  1614.    Call Nesting 
  1615.            Useful for diagnosing specific performance problems. For example, 
  1616.            you might use this diagram to see what led up to a thread switch. 
  1617.  
  1618.            The Time Line diagram is useful in correlation with this diagram. 
  1619.            For example, you can mark a function call in this diagram, and then 
  1620.            correlate it to the Time Line diagram. The correlated Time Line 
  1621.            diagram shows you when the function call occurred and how long it 
  1622.            lasted. 
  1623.  
  1624.    Dynamic Call Graph 
  1625.            Useful for diagnosing overall performance problems. This diagram 
  1626.            shows performance problem areas by color and size. Components 
  1627.            (functions, classes [if you are analyzing a C++ program], or 
  1628.            executables) that consume the most execution time will appear as 
  1629.            large red rectangles. Components that are called excessively will 
  1630.            have a red arc attached to them. 
  1631.  
  1632.    Execution Density 
  1633.            Useful for showing trends of program execution. This diagram 
  1634.            displays trace data chronologically from top to bottom as thin 
  1635.            horizontal lines of various colors in different columns. 
  1636.  
  1637.    Statistics 
  1638.            Useful for diagnosing overall performance problems. This diagram 
  1639.            provides a textual report of execution time by component type: 
  1640.            function, class (only if you are analyzing a C++ program), or 
  1641.            executable. Components are sorted by execution time, with the 
  1642.            component consuming the most time appearing at the top of the 
  1643.            diagram by default. 
  1644.  
  1645.            This diagram is also useful for determining which user functions to 
  1646.            inline. 
  1647.  
  1648.    Time Line 
  1649.            Useful for diagnosing specific performance problems. For example, 
  1650.            you might use this diagram to determine why a window takes a long 
  1651.            time to paint. 
  1652.  
  1653.            The Call Nesting diagram is useful in correlation with this diagram. 
  1654.            For example, you can mark a point in time in this diagram, and then 
  1655.            correlate it to the Call Nesting diagram. The correlated Call 
  1656.            Nesting diagram shows you the function name associated with the time 
  1657.            you marked in the Time Line diagram. 
  1658.  
  1659.  
  1660. ΓòÉΓòÉΓòÉ 9.1. Opening a Trace File in a Diagram ΓòÉΓòÉΓòÉ
  1661.  
  1662. To open a trace file in any diagram, use any of the following methods: 
  1663.  
  1664.  o Click on the Analyze Trace... push button in the Performance Analyzer - 
  1665.    Window Manager window, and then, in Analyze Trace window, enter a trace file 
  1666.    name and select one of the diagram check boxes. For step by step 
  1667.    instructions, see Using the Analyze Trace Window. 
  1668.  o Double-click on the file name or icon of a trace file in the Performance 
  1669.    Analyzer - Window Manager window, then select one of the diagram check boxes 
  1670.    in the Analyze Trace window and click on OK. 
  1671.  o Click mouse button 2 on the file name or icon of a trace file in the 
  1672.    Performance Analyzer - Window Manager window, then select a diagram from the 
  1673.    Trace File pop-up menu. 
  1674.  o From the Trace File menu of an open diagram, select Open as and then select 
  1675.    a diagram from the cascaded menu. 
  1676.  o From any open diagram, click the appropriate button in the toolbar. 
  1677.  
  1678.  Note:   If you open your trace file in a diagram and find that the file does 
  1679.  not contain any trace events, your application may have been unable to locate 
  1680.  CPPWPA3.DLL when you created the trace file. To correct this, change your path 
  1681.  to point to the location of CPPWPA3.DLL (probably in the DLL subdirectory 
  1682.  where you installed VisualAge for C++), and then recreate your trace file. 
  1683.  
  1684.  Related Information 
  1685.  
  1686.  o Using the Analyze Trace Window 
  1687.  o Performance Analyzer - Window Manager Window 
  1688.  o Analyze Trace Window 
  1689.  o Trace File Pop-up Menu 
  1690.  o Selecting Functions to Inline 
  1691.  o Hints for Using the Performance Analyzer. 
  1692.  
  1693.  
  1694. ΓòÉΓòÉΓòÉ 9.1.1. Using the Analyze Trace Window ΓòÉΓòÉΓòÉ
  1695.  
  1696. To select a trace file to analyze using the Analyze Trace window, complete the 
  1697. following steps: 
  1698.  
  1699.   1. Click on the Analyze Trace... push button in the Performance Analyzer - 
  1700.      Window Manager window. 
  1701.  
  1702.      The Analyze Trace window appears. 
  1703.  
  1704.   2. Type the full path name and file name of the trace file you want to 
  1705.      analyze in the Trace file name entry field. If the program is in your 
  1706.      current directory, you do not have to type the path name. 
  1707.  
  1708.      Note:   If you are not sure where the file is located, select the Find... 
  1709.      push button. 
  1710.  
  1711.   3. From the Diagrams group heading, select a diagram in which you want to 
  1712.      view the trace file by clicking on the check box next to the diagram name. 
  1713.      You can select one or more of the following diagrams: 
  1714.  
  1715.     o Call Nesting 
  1716.     o Dynamic Call Graph 
  1717.     o Execution Density 
  1718.     o Statistics 
  1719.     o Time Line. 
  1720.  
  1721.   4. Select OK. 
  1722.  
  1723.  Related Information 
  1724.  
  1725.  o Analyzing a Trace File 
  1726.  o Call Nesting Diagram 
  1727.  o Dynamic Call Graph 
  1728.  o Execution Density Diagram 
  1729.  o Statistical Summary Diagram 
  1730.  o Time Line Diagram 
  1731.  o Creating a Trace File. 
  1732.  
  1733.  
  1734. ΓòÉΓòÉΓòÉ 9.2. Viewing Trace Files ΓòÉΓòÉΓòÉ
  1735.  
  1736. The Performance Analyzer diagrams provide methods of making trace data easier 
  1737. to view and understand. The following topics describe some of these methods: 
  1738.  
  1739.  o Using Filtering 
  1740.  o Using Zooming 
  1741.  o Using Scaling 
  1742.  o Using Scrolling 
  1743.  o Using Multiple Views 
  1744.  o Recognizing Patterns 
  1745.  o Understanding Correlation. 
  1746.  
  1747.  
  1748. ΓòÉΓòÉΓòÉ 9.2.1. Using Filtering ΓòÉΓòÉΓòÉ
  1749.  
  1750. Filters allow you to temporarily reduce the amount of trace data displayed in a 
  1751. diagram. There are several techniques for filtering the trace file and 
  1752. isolating interesting or problematic areas. 
  1753.  
  1754. The following list contains filtering techniques that you can use in each of 
  1755. the diagrams: 
  1756.  
  1757.  Call Nesting diagram 
  1758.            In this diagram, you can filter data by: 
  1759.  
  1760.            o Selecting specific functions and threads to view. The Performance 
  1761.              Analyzer displays trace information for only those threads or 
  1762.              functions selected. 
  1763.            o Selecting a region of time to view. 
  1764.  Dynamic Call Graph 
  1765.            In this diagram, you can filter data by: 
  1766.  
  1767.            o Selecting specific threads to view. The Performance Analyzer 
  1768.              displays trace information for only those threads selected. 
  1769.            o Displaying data by function, class, or executable. Using 
  1770.              View >Nodes of, you can select which component (function, class, 
  1771.              or executable) the diagram's nodes represent. 
  1772.            o Scaling node sizes to change the size of the graphical 
  1773.              representation of components (functions, classes [if you are 
  1774.              analyzing a C++ program], or executables). 
  1775.  Execution Density diagram 
  1776.            In this diagram, you can filter data by: 
  1777.  
  1778.            o Selecting specific functions and threads to view. The Performance 
  1779.              Analyzer displays only those selected. 
  1780.            o Scaling the diagram to reveal more information. 
  1781.            o Selecting a region of time to view. 
  1782.  Statistics diagram 
  1783.            In this diagram, you can filter data by: 
  1784.  
  1785.            o Selecting specific threads to view. The Performance Analyzer 
  1786.              displays trace information for only those threads selected. 
  1787.            o Displaying data by function, class, or executable. Using 
  1788.              View >Details on, you can select which type of component data 
  1789.              (function, class, or executable) is displayed in the diagram's 
  1790.              Details pane. 
  1791.  Time Line diagram 
  1792.            In this diagram, you can filter data by: 
  1793.  
  1794.            o Scaling the pages of the diagram to reveal more information. 
  1795.            o Selecting a region of time to view. 
  1796.  
  1797.  
  1798. ΓòÉΓòÉΓòÉ 9.2.2. Using Zooming ΓòÉΓòÉΓòÉ
  1799.  
  1800. The Dynamic Call Graph, Execution Density, and Time Line diagrams have zooming 
  1801. capabilities that allow you to enlarge (Zoom in) or reduce (Zoom out) the size 
  1802. of the diagram. 
  1803.  
  1804. Use Zoom in to focus on regions of a diagram that are of most interest. 
  1805.  
  1806. The Overview choice on the Dynamic Call Graph allows you to quickly move around 
  1807. in the diagram, and zoom in and out of the diagram. The gray box in the 
  1808. Overview window highlights the area currently displayed in the Dynamic Call 
  1809. Graph. 
  1810.  
  1811.  o Click and hold mouse button 1 inside the gray box, and then move it around 
  1812.    in the Overview window to quickly change the view in the Dynamic Call Graph. 
  1813.  o Grab the sides of the gray box to resize the area shown in the Dynamic Call 
  1814.    Graph. 
  1815.  
  1816.  
  1817. ΓòÉΓòÉΓòÉ 9.2.3. Using Scaling ΓòÉΓòÉΓòÉ
  1818.  
  1819. Scaling is a way to change how much detail is displayed. You can view the 
  1820. diagram as a whole or magnify areas to see the finer detail. 
  1821.  
  1822. When details are hidden, you cannot spot patterns, anomalies, or features of 
  1823. the execution because there is too much information on the screen. The 
  1824. Execution Density and Time Line diagrams can be scaled along the time 
  1825. dimension. 
  1826.  
  1827.  
  1828. ΓòÉΓòÉΓòÉ 9.2.4. Using Scrolling ΓòÉΓòÉΓòÉ
  1829.  
  1830. You can scroll the window in all diagrams to focus on areas of interest. You 
  1831. can also use correlation to scroll to areas of interest in each of the 
  1832. chronologically-scaled diagrams (Call Nesting, Execution Density, and Time 
  1833. Line). Correlation is described in Understanding Correlation. 
  1834.  
  1835.  
  1836. ΓòÉΓòÉΓòÉ 9.2.5. Using Multiple Views ΓòÉΓòÉΓòÉ
  1837.  
  1838. The Performance Analyzer allows you to open a trace file in several diagrams or 
  1839. multiple views of the same diagram simultaneously. Sometimes opening two or 
  1840. more diagrams can help you better understand a program. 
  1841.  
  1842. For instance, if you have a new program to learn, and you don't want to wade 
  1843. through code listings to determine how the code works, you can display and use 
  1844. the Dynamic Call Graph, Call Nesting, and Time Line diagrams to get a good 
  1845. understanding of the program's flow. 
  1846.  
  1847. After you have opened a diagram, one way you can open another diagram is by 
  1848. selecting the Open as choice from a Trace file menu, and then selecting another 
  1849. diagram from the cascaded menu. 
  1850.  
  1851.  
  1852. ΓòÉΓòÉΓòÉ 9.2.6. Recognizing Patterns ΓòÉΓòÉΓòÉ
  1853.  
  1854. Program loops cause the same sequence of calls and returns to be repeated in 
  1855. the trace. The Performance Analyzer lets you combine like sequences in the Call 
  1856. Nesting diagram. 
  1857.  
  1858. By selecting Use pattern recognition, you can reduce the amount of screen space 
  1859. the diagram uses. Pattern recognition looks at a single thread and finds 
  1860. patterns of calls and returns. When this choice is enabled, the Call Nesting 
  1861. diagram groups these patterns using curved arcs. The number of repetitions is 
  1862. shown to the right. 
  1863.  
  1864. This technique shortens the number of pages which you must scroll through to 
  1865. look at your trace file. 
  1866.  
  1867. If you see a pattern repeated numerous times, you could group the functions in 
  1868. the pattern together with pragma alloc_text statements to improve performance 
  1869. by limiting the number of page swaps between calls in the patterns. 
  1870.  
  1871. Note:   The Use pattern recognition check box (shown when you select 
  1872. View >Include threads...) is only selectable when you are filtering by threads. 
  1873.  
  1874.  
  1875. ΓòÉΓòÉΓòÉ 9.2.7. Understanding Correlation ΓòÉΓòÉΓòÉ
  1876.  
  1877. Correlation allows you to mark a point in time in one diagram and then find 
  1878. that same point in another diagram. 
  1879.  
  1880. Using correlation is helpful because one diagram cannot show everything of 
  1881. interest within a trace file. Additionally, some events are easier to find in 
  1882. one diagram, but the information in another is more meaningful; therefore, you 
  1883. can locate the event in one diagram and correlate to another. 
  1884.  
  1885. The Performance Analyzer provides three time-scaled diagrams that can be 
  1886. correlated: Call Nesting, Execution Density, and Time Line. You can correlate 
  1887. these diagrams based on a specific time or event, or on a range of time or 
  1888. events. 
  1889.  
  1890. For example, use the Call Nesting diagram to identify the order and names of 
  1891. functions called, and then use the Time Line diagram to find out how long a 
  1892. function took to execute. 
  1893.  
  1894. Or you can use the Execution Density diagram to see general patterns that lead 
  1895. up to a certain point, and then correlate that point to the Call Nesting 
  1896. diagram to see the exact order of the function calls. 
  1897.  
  1898.  
  1899. ΓòÉΓòÉΓòÉ 9.3. Understanding Overhead Time ΓòÉΓòÉΓòÉ
  1900.  
  1901. When you compile and link your program, the compiler generates hooks (code 
  1902. added at the start and end of each function) that enable the Performance 
  1903. Analyzer to intercept trace events. The starting and ending times for each 
  1904. trace event are recorded in the trace file. 
  1905.  
  1906. These hooks cause a small monitoring function to be called instead of the 
  1907. program's callee function. The monitoring function time stamps the event and 
  1908. then calls the program's callee function. 
  1909.  
  1910. The monitoring function is run in the program's address space, thereby avoiding 
  1911. the high overhead of an operating system context switch when events are 
  1912. recorded. As a result, it does not significantly affect the program's execution 
  1913. performance. However, the monitoring function does take some small amount of 
  1914. time to execute. In order to compensate for this additional time introduced by 
  1915. the monitoring function, the diagrams adjust the timings appropriately. 
  1916.  
  1917. The Performance Analyzer dynamically determines how much time it takes to 
  1918. execute the monitoring function by internally calling it several times and 
  1919. computing an average prior to executing the program. 
  1920.  
  1921. Note:   It is recommended that you shut down other programs on your desktop so 
  1922. they will not interfere with the Performance Analyzer's timings. 
  1923.  
  1924. If the program is run stand-alone, it should run at or near the same speed as 
  1925. the same program compiled without the profile hooks because trace events are 
  1926. not recorded. 
  1927.  
  1928. Related Information 
  1929.  
  1930.  o Introducing the Performance Analyzer 
  1931.  o Creating User Events in Your Program 
  1932.  o Starting and Stopping the Performance Analyzer from Your Program 
  1933.  o Tracing System Calls 
  1934.  o Compiling and Linking Your Program 
  1935.  o Starting the Performance Analyzer from a Command Line. 
  1936.  o Starting the Performance Analyzer from WorkFrame 
  1937.  o Performance Analyzer - Window Manager Window. 
  1938.  
  1939.  
  1940. ΓòÉΓòÉΓòÉ 9.4. Selecting Functions to Inline ΓòÉΓòÉΓòÉ
  1941.  
  1942. Your trace file can help you determine which functions to inline. To do this: 
  1943.  
  1944.   1. In addition to preparing your program for the Performance Analyzer as 
  1945.      described in Compiling and Linking Your Program, include the /Oi compiler 
  1946.      option, which causes user functions to be inlined. 
  1947.  
  1948.   2. Create a trace file and display it in the Statistics diagram. 
  1949.  
  1950.      Note:   Functions that appear in the Statistics diagram were not inlined. 
  1951.      If an inlined function appears in the Statistics diagram, the compiler 
  1952.      chose not to inline it. 
  1953.  
  1954.   3. Look for functions in the Statistics diagram that were called frequently 
  1955.      and had small average executable times. These functions may be good 
  1956.      candidates for inlining. 
  1957.  
  1958.  Related Information 
  1959.  
  1960.  o Compiling and Linking Your Program 
  1961.  o Statistics Diagram 
  1962.  o IBM C/C++ Tools: Reference Summary 
  1963.  o Keys Help. 
  1964.  
  1965.  
  1966. ΓòÉΓòÉΓòÉ 10. Performance Analyzer - Specify Profile Location Window ΓòÉΓòÉΓòÉ
  1967.  
  1968. When you start the Performance Analyzer for the first time, the Performance 
  1969. Analyzer - Specify Profile Location window appears. This window prompts you to 
  1970. type the path name where you want to store the IPERF.INI file. The IPERF.INI 
  1971. file stores your session settings. 
  1972.  
  1973. The default path name is the root operating system directory. If you want to 
  1974. store the IPERF.INI file in a drive and directory other than the default, type 
  1975. the full path name in the Path entry field, and then select OK. The IPERF.INI 
  1976. file is created in the directory you specified. 
  1977.  
  1978. Related Information 
  1979.  
  1980.  o Introducing the Performance Analyzer. 
  1981.  o Preparing Your Program for the Performance Analyzer 
  1982.  
  1983.  
  1984. ΓòÉΓòÉΓòÉ 11. Performance Analyzer - Window Manager Window ΓòÉΓòÉΓòÉ
  1985.  
  1986. The Performance Analyzer - Window Manager window is the Performance Analyzer's 
  1987. main control window and is always displayed while the Performance Analyzer is 
  1988. running. Once you have properly compiled and linked your program and started 
  1989. the Performance Analyzer, you can start most functions from this window, 
  1990. including creating and analyzing trace files. 
  1991.  
  1992. When you view a trace file, this window lists the file names of your 
  1993. executable, its trace file, and each open diagram. 
  1994.  
  1995. Areas of the Performance Analyzer - Window Manager Window 
  1996.  
  1997.  o Menu Bar Summary 
  1998.  
  1999.     - File 
  2000.     - View 
  2001.     - Options 
  2002.     - Project (only available when working in the WorkFrame environment) 
  2003.     - Help 
  2004.  
  2005.  o Pop-up Menus 
  2006.  
  2007.     - Executable 
  2008.     - Trace file 
  2009.     - Diagram 
  2010.  
  2011.  o Push Buttons 
  2012.  
  2013.     - Create Trace... 
  2014.     - Analyze Trace.... 
  2015.  
  2016.  Related Information 
  2017.  
  2018.  o Introducing the Performance Analyzer 
  2019.  o Compiling and Linking Your Program 
  2020.  o Creating a Trace File 
  2021.  o Using the Analyze Trace Window 
  2022.  o Exiting the Performance Analyzer 
  2023.  o Keys Help. 
  2024.  
  2025.  
  2026. ΓòÉΓòÉΓòÉ 11.1. Performance Analyzer - Window Manager Window File Menu ΓòÉΓòÉΓòÉ
  2027.  
  2028. The Performance Analyzer - Window Manager window File menu has the following 
  2029. choices: 
  2030.  
  2031.  Create Trace... 
  2032.            Displays the Create Trace window, which lets you start creating a 
  2033.            trace file for your program. 
  2034.  
  2035.  Analyze Trace... 
  2036.            Displays the Analyze Trace window, which lets you open a diagram and 
  2037.            start analyzing your program. 
  2038.  
  2039.  Exit the Performance Analyzer 
  2040.            Lets you end the Performance Analyzer application. 
  2041.  
  2042.  Related Information 
  2043.  
  2044.  o Compiling and Linking Your Program 
  2045.  o Executable Pop-up Menu 
  2046.  o Trace File Pop-up Menu 
  2047.  o Diagram Pop-up Menu 
  2048.  o Create Trace Window 
  2049.  o Analyze Trace Window 
  2050.  o Keys Help 
  2051.  o Exiting the Performance Analyzer 
  2052.  o Performance Analyzer - Window Manager Window 
  2053.  o Keys Help. 
  2054.  
  2055.  
  2056. ΓòÉΓòÉΓòÉ 11.1.1. Create Trace... Choice ΓòÉΓòÉΓòÉ
  2057.  
  2058. Select the Create trace... choice to start creating a trace file. This choice 
  2059. is available from the File menu on the Performance Analyzer - Window Manager 
  2060. window. 
  2061.  
  2062. Note:   Before creating a trace file, you must compile and link your program 
  2063. with the proper options. 
  2064.  
  2065. When you select this choice, the Create Trace window appears. On the Create 
  2066. Trace window, specify the program you want to trace and any parameters you want 
  2067. to pass to the program. 
  2068.  
  2069. You can also display the Create Trace window by: 
  2070.  
  2071.  o Clicking mouse button 2 on an executable file name or icon, , in the 
  2072.    Performance Analyzer - Window Manager window, and then selecting Create 
  2073.    trace... from the Executable pop-up menu. 
  2074.  o Clicking on the Create Trace... push button in the Performance Analyzer - 
  2075.    Window Manager window. 
  2076.  
  2077.  Related Information 
  2078.  
  2079.  o Compiling and Linking Your Program 
  2080.  o Create Trace Window 
  2081.  o Creating a Customized Trace File 
  2082.  o Performance Analyzer - Window Manager Window 
  2083.  o Keys Help. 
  2084.  
  2085.  
  2086. ΓòÉΓòÉΓòÉ 11.1.2. Analyze Trace... Choice ΓòÉΓòÉΓòÉ
  2087.  
  2088. Select the Analyze trace... choice to start analyzing an existing trace file. 
  2089. This choice is available from the File menu on the Performance Analyzer - 
  2090. Window Manager window. 
  2091.  
  2092. When you select this choice, the Analyze Trace window appears. On the Analyze 
  2093. Trace window, specify the diagrams in which you want to display and analyze the 
  2094. trace file. 
  2095.  
  2096. You can also display the Analyze Trace window by: 
  2097.  
  2098.  o Clicking mouse button 2 on the file name or icon, , of a trace file in the 
  2099.    Performance Analyzer - Window Manager window, and then selecting Analyze 
  2100.    trace... from the Trace file pop-up menu. 
  2101.  o Clicking on the Analyze Trace... push button in the Performance Analyzer - 
  2102.    Window Manager window. 
  2103.  
  2104.  Related Information 
  2105.  
  2106.  o Compiling and Linking Your Program 
  2107.  o Analyze Trace Window 
  2108.  o Call Nesting Diagram 
  2109.  o Dynamic Call Graph 
  2110.  o Execution Density diagram 
  2111.  o Statistics Diagram 
  2112.  o Time Line Diagram 
  2113.  o Performance Analyzer - Window Manager Window 
  2114.  o Keys Help. 
  2115.  
  2116.  
  2117. ΓòÉΓòÉΓòÉ 11.1.3. Exit the Performance Analyzer Choice ΓòÉΓòÉΓòÉ
  2118.  
  2119. Select the Exit the Performance Analyzer choice to end the Performance Analyzer 
  2120. application and close all associated windows. This choice is available from the 
  2121. File menu on the Performance Analyzer - Window Manager window. 
  2122.  
  2123. Related Information 
  2124.  
  2125.  o Exiting the Performance Analyzer 
  2126.  o Performance Analyzer - Window Manager Window 
  2127.  o Keys Help. 
  2128.  
  2129.  
  2130. ΓòÉΓòÉΓòÉ 11.2. Performance Analyzer - Window Manager Window View Menu ΓòÉΓòÉΓòÉ
  2131.  
  2132. The Performance Analyzer - Window Manager window View menu has the following 
  2133. choices: 
  2134.  
  2135.  Tree lines 
  2136.            Displays tree lines between components on the Performance Analyzer - 
  2137.            Window Manager window. 
  2138.  
  2139.  Show icons 
  2140.            Displays icons that identify file types on the Performance Analyzer 
  2141.            - Window Manager window. 
  2142.  
  2143.  Remove all windows 
  2144.            Removes and closes all open diagrams from your screen. 
  2145.  
  2146.  Related Information 
  2147.  
  2148.  o Introducing the Performance Analyzer 
  2149.  o Using the Analyze Trace Window 
  2150.  o Performance Analyzer - Window Manager Window 
  2151.  o Keys Help. 
  2152.  
  2153.  
  2154. ΓòÉΓòÉΓòÉ 11.2.1. Tree Lines Choice ΓòÉΓòÉΓòÉ
  2155.  
  2156. Select the Tree lines choice to display directory tree lines between components 
  2157. to show relationships. This choice is available from the View menu on the 
  2158. Performance Analyzer - Window Manager window. 
  2159.  
  2160. A check mark next to this choice indicates that it is selected. To remove tree 
  2161. lines, select the choice again. The check mark is removed to show the choice is 
  2162. disabled. 
  2163.  
  2164. Note:   The settings you enter are saved for the current session. If you want 
  2165. to save the settings for subsequent sessions, select the Options menu and then 
  2166. select the Save choice from the Settings cascaded menu. 
  2167.  
  2168. Related Information 
  2169.  
  2170.  o Performance Analyzer - Window Manager Window 
  2171.  o Keys Help. 
  2172.  
  2173.  
  2174. ΓòÉΓòÉΓòÉ 11.2.2. Show Icons Choice ΓòÉΓòÉΓòÉ
  2175.  
  2176. Select the Show icons choice to display icons that identify file types. This 
  2177. choice is available from the View menu on the Performance Analyzer - Window 
  2178. Manager window. A check beside this choice indicates that it is selected. To 
  2179. remove the icons, select the choice again. 
  2180.  
  2181. Icons identify file types as follows: 
  2182.  
  2183.  Icon      File Type 
  2184.            Executable 
  2185.  
  2186.  
  2187.            Trace file 
  2188.  
  2189.  
  2190.            Call Nesting diagram 
  2191.  
  2192.  
  2193.            Dynamic Call Graph diagram 
  2194.  
  2195.  
  2196.            Execution Density diagram 
  2197.  
  2198.  
  2199.            Statistics diagram 
  2200.  
  2201.  
  2202.            Time Line diagram 
  2203.  
  2204.  Related Information 
  2205.  
  2206.  o Introducing the Performance Analyzer 
  2207.  o Using the Analyze Trace Window 
  2208.  o Call Nesting Diagram 
  2209.  o Dynamic Call Graph 
  2210.  o Execution Density Diagram 
  2211.  o Statistics Diagram 
  2212.  o Time Line Diagram 
  2213.  o Performance Analyzer - Window Manager Window 
  2214.  o Keys Help. 
  2215.  
  2216.  
  2217. ΓòÉΓòÉΓòÉ 11.2.3. Remove All Windows Choice ΓòÉΓòÉΓòÉ
  2218.  
  2219. The Remove all windows choice removes and closes all diagram windows displayed 
  2220. on your screen and diagram file names displayed in the Performance Analyzer - 
  2221. Window Manager window. This choice is available from the View menu on the 
  2222. Performance Analyzer - Window Manager window. 
  2223.  
  2224. Related Information 
  2225.  
  2226.  o Introducing the Performance Analyzer 
  2227.  o Using the Analyze Trace Window 
  2228.  o Performance Analyzer - Window Manager Window 
  2229.  o Keys Help. 
  2230.  
  2231.  
  2232. ΓòÉΓòÉΓòÉ 11.3. Performance Analyzer - Window Manager Window Options Menu ΓòÉΓòÉΓòÉ
  2233.  
  2234. The Performance Analyzer - Window Manager window Options menu has the following 
  2235. choices: 
  2236.  
  2237.  Font... 
  2238.            Displays the Font window, which lets you change the font, font 
  2239.            style, and font size for the windows. 
  2240.  
  2241.  Quick exit 
  2242.            Controls whether the Performance Analyzer provides a confirmation 
  2243.            prompt upon exit. 
  2244.  
  2245.  Search paths... 
  2246.            When you are working in the WorkFrame environment, this choice 
  2247.            displays a window in which you can specify where the Performance 
  2248.            Analyzer can locate source files for editing. 
  2249.  
  2250.  Unique trace file name 
  2251.            This choice gives each trace file a different name, which allows you 
  2252.            to save several trace files created from the same program. 
  2253.  
  2254.  Settings > 
  2255.            Displays a cascaded menu that lets you save settings or restore 
  2256.            initial default settings. 
  2257.  
  2258.  Related Information 
  2259.  
  2260.  o Introducing the Performance Analyzer 
  2261.  o Using the Analyze Trace Window 
  2262.  o Performance Analyzer - Window Manager Window 
  2263.  o Keys Help. 
  2264.  
  2265.  
  2266. ΓòÉΓòÉΓòÉ 11.3.1. Font... Choice ΓòÉΓòÉΓòÉ
  2267.  
  2268. Select the Font... choice to change the font, font style, and font size for the 
  2269. text area on the Performance Analyzer - Window Manager window. This choice is 
  2270. available from the Options menu on the Performance Analyzer - Window Manager 
  2271. window. When you select this choice, the Font window appears. 
  2272.  
  2273. The Font window has the following areas: 
  2274.  
  2275.  Font entry field      Type a font name in this entry field or click on the 
  2276.                        scroll bar to see a list of choices and select a name 
  2277.                        from the list. 
  2278.  Font Style entry field Type a font style in this entry field or click on the 
  2279.                        scroll bar to see a list of choices and select a style 
  2280.                        from the list. 
  2281.  Size entry field      Type a font size in this entry field or click on the 
  2282.                        scroll bar to see a list of choices and select a size 
  2283.                        from the list. 
  2284.  Sample box            This box shows a sample of how text will appear with the 
  2285.                        settings you have selected. 
  2286.  OK push button        Changes the font according to the settings you selected. 
  2287.  Cancel push button    Closes the window without making changes. 
  2288.  
  2289.  Note:   The settings you enter are saved for the current session. If you want 
  2290.  to save the settings for subsequent sessions, select the Options menu and then 
  2291.  select the Save choice from the Settings cascaded menu. 
  2292.  
  2293.  Related Information 
  2294.  
  2295.  o Performance Analyzer - Window Manager Window 
  2296.  o Keys Help. 
  2297.  
  2298.  
  2299. ΓòÉΓòÉΓòÉ 11.3.2. Quick Exit Choice ΓòÉΓòÉΓòÉ
  2300.  
  2301. Select the Quick exit choice to control the way the Performance Analyzer ends. 
  2302. If this choice is enabled, (a check mark appears next to the choice when it's 
  2303. enabled) each time you exit the Performance Analyzer, the application will 
  2304. close immediately without a prompt confirming that you want to exit. This 
  2305. choice is available from the Options menu on the Performance Analyzer - Window 
  2306. Manager window. 
  2307.  
  2308. Related Information 
  2309.  
  2310.  o Introducing the Performance Analyzer 
  2311.  o Using the Analyze Trace Window 
  2312.  o Performance Analyzer - Window Manager Window 
  2313.  o Keys Help. 
  2314.  
  2315.  
  2316. ΓòÉΓòÉΓòÉ 11.3.3. Search Paths... Choice ΓòÉΓòÉΓòÉ
  2317.  
  2318. When you are working in the WorkFrame environment, select the Search paths... 
  2319. choice to specify where the Performance Analyzer can locate source files for 
  2320. editing. This choice is available from the Options menu on the Performance 
  2321. Analyzer - Window Manager window. 
  2322.  
  2323. When you select this choice, the Search Paths window appears. 
  2324.  
  2325. Related Information 
  2326.  
  2327.  o Search Paths Window 
  2328.  o Edit Source Choice 
  2329.  o Performance Analyzer - Window Manager Window 
  2330.  o Starting the Performance Analyzer from WorkFrame 
  2331.  o Keys Help. 
  2332.  
  2333.  
  2334. ΓòÉΓòÉΓòÉ 11.3.3.1. Search Paths Window ΓòÉΓòÉΓòÉ
  2335.  
  2336. Use the Search Paths window to specify where the Performance Analyzer can 
  2337. locate source files for editing. When you are working in the WorkFrame 
  2338. environment, this window appears when you select the Search Paths... choice, 
  2339. which is available from the Options menu on the Performance Analyzer - Window 
  2340. Manager window. 
  2341.  
  2342. To locate a source file for editing, the Performance Analyzer must first locate 
  2343. the executable containing the name of the source file. The Performance Analyzer 
  2344. searches the following paths (in the order listed) to locate an executable: 
  2345.  
  2346.   1. Path specified in the Locate Executable window 
  2347.   2. Path specified in the Search path for executable files entry field of the 
  2348.      Search Paths window 
  2349.   3. Directory where the executable to be traced is located (if you selected 
  2350.      the Edit source choice from the Trace Generation window) or the directory 
  2351.      where the executable was located when the trace file was created (if you 
  2352.      selected the Edit function choice from one of the diagrams) 
  2353.   4. The current working directory 
  2354.   5. Path specified by the PATH environment variable. 
  2355.  
  2356.  To identify the name of the source file, the Performance Analyzer looks at the 
  2357.  debug information in the executable. The Performance Analyzer then searches 
  2358.  the following paths (in the order listed) to locate the source file: 
  2359.  
  2360.   1. Path specified in the Locate Source File window 
  2361.   2. Path specified in the Search path for source files entry field of the 
  2362.      Search Paths window 
  2363.   3. Path specified in the compile statement (if provided) 
  2364.   4. Directory where the executable to be traced is located (if you selected 
  2365.      the Edit source choice from the Trace Generation window) or the directory 
  2366.      where the executable was located when the trace file was created (if you 
  2367.      selected the Edit function choice from one of the diagrams) 
  2368.   5. The current working directory 
  2369.   6. Path specified by the INCLUDE environment variable. 
  2370.  
  2371.  To use the Search Paths window: 
  2372.  
  2373.   1. In the Search path for executable files entry field, specify a path that 
  2374.      you want the Performance Analyzer to use when looking for executable 
  2375.      files. 
  2376.   2. In the Search path for source files entry field, specify a path that you 
  2377.      want the Performance Analyzer to use when looking for source files. 
  2378.   3. Select the appropriate push button to continue: 
  2379.  
  2380.     o OK 
  2381.     o Cancel 
  2382.     o Help 
  2383.  
  2384.  Note:   The paths you enter are automatically saved for the current session. 
  2385.  If you want to save the paths for subsequent sessions, select the Save choice. 
  2386.  This choice is available from the Settings cascading choice, which is on the 
  2387.  Options menu. 
  2388.  
  2389.  Related Information 
  2390.  
  2391.  o Edit Source Choice 
  2392.  o Performance Analyzer - Window Manager Window 
  2393.  o Starting the Performance Analyzer from WorkFrame 
  2394.  o Keys Help. 
  2395.  
  2396.  
  2397. ΓòÉΓòÉΓòÉ 11.3.4. Unique Trace File Name Choice ΓòÉΓòÉΓòÉ
  2398.  
  2399. Select the Unique trace file name choice to have the Performance Analyzer give 
  2400. each trace file a unique name. This choice is available from the Options menu 
  2401. on the Performance Analyzer - Window Manager window. 
  2402.  
  2403. The default name for a trace file is myprog.trc, where myprog is the name of 
  2404. the program you are tracing. If you create more than one trace file from the 
  2405. same program, the Performance Analyzer uses the default naming convention and 
  2406. overwrites the previous trace file. 
  2407.  
  2408. However, if this choice is selected, the Performance Analyzer attaches a number 
  2409. to each file name. 
  2410.  
  2411. Select this choice to enable it. A check mark appears next to the choice to 
  2412. indicate that it is enabled. Select this choice again to disable it. 
  2413.  
  2414. Related Information 
  2415.  
  2416.  o Introducing the Performance Analyzer 
  2417.  o Using the Analyze Trace Window 
  2418.  o Performance Analyzer - Window Manager Window 
  2419.  o Keys Help. 
  2420.  
  2421.  
  2422. ΓòÉΓòÉΓòÉ 11.3.5. Settings Cascading Choice ΓòÉΓòÉΓòÉ
  2423.  
  2424. Select the Settings cascading choice to display the following choices: 
  2425.  
  2426.  Save      Saves the current window settings. 
  2427.  Restore initial defaults Restores the preset default settings. 
  2428.  This choice is available from the Options menu on the Performance Analyzer - 
  2429.  Window Manager window. 
  2430.  
  2431.  Related Information 
  2432.  
  2433.  o Performance Analyzer - Window Manager Window 
  2434.  o Keys Help. 
  2435.  
  2436.  
  2437. ΓòÉΓòÉΓòÉ 11.3.5.1. Save Choice ΓòÉΓòÉΓòÉ
  2438.  
  2439. Select the Save choice to save the current window settings for subsequent 
  2440. Performance Analyzer sessions. This choice is available from the Settings 
  2441. cascading choice, which is on the Options menu on the Trace Generation window. 
  2442.  
  2443. If you do not select this choice, settings remain active for the current 
  2444. session. If you select this choice, settings remain active for subsequent 
  2445. sessions because they are stored in the IPERF.INI file. The saved settings 
  2446. remain active until the IPERF.INI file is erased. 
  2447.  
  2448. The Performance Analyzer will save the following on the Performance Analyzer - 
  2449. Window Manager window: 
  2450.  
  2451.  o Font settings 
  2452.  o Paths specified in Search paths window 
  2453.  o Quick exit setting 
  2454.  o Show icons setting 
  2455.  o Tree lines setting 
  2456.  o Unique trace file name setting 
  2457.  o Window position 
  2458.  o Window size 
  2459.  
  2460.  To restore the default settings, select the Restore initial defaults 
  2461.  
  2462.  Related Information 
  2463.  
  2464.  o Restore Initial Defaults Choice 
  2465.  o Performance Analyzer - Window Manager Window 
  2466.  o Keys Help. 
  2467.  
  2468.  
  2469. ΓòÉΓòÉΓòÉ 11.3.5.2. Restore Initial Defaults Choice ΓòÉΓòÉΓòÉ
  2470.  
  2471. Select the Restore initial defaults choice to restore the Performance Analyzer 
  2472. default settings for the Performance Analyzer - Window Manager window. This 
  2473. choice is available from the Settings cascading choice, which is on the Options 
  2474. menu on the Performance Analyzer - Window Manager window. 
  2475.  
  2476. Related Information 
  2477.  
  2478.  o Performance Analyzer - Window Manager Window 
  2479.  o Keys Help. 
  2480.  
  2481.  
  2482. ΓòÉΓòÉΓòÉ 11.4. Performance Analyzer - Window Manager Window Project Menu ΓòÉΓòÉΓòÉ
  2483.  
  2484. This menu appears on the Performance Analyzer - Window Manager window when you 
  2485. start the Performance Analyzer within the WorkFrame environment. The Project 
  2486. menu gives you direct access to all of the actions that you can perform from 
  2487. your current location. 
  2488.  
  2489. Related Information 
  2490.  
  2491.  o Trace Generation Window 
  2492.  o Starting the Performance Analyzer from WorkFrame 
  2493.  o Keys Help. 
  2494.  
  2495.  
  2496. ΓòÉΓòÉΓòÉ 11.5. Performance Analyzer - Window Manager Window Help Menu ΓòÉΓòÉΓòÉ
  2497.  
  2498. Select choices from the Help menu to display the various types of Help 
  2499. information. 
  2500.  
  2501. The Help menu has the following choices: 
  2502.  
  2503.  Help index 
  2504.            Displays an index of Help topics. 
  2505.  
  2506.  General help 
  2507.            Displays Help for the active window. 
  2508.  
  2509.  Using help 
  2510.            Describes how to use Help. 
  2511.  
  2512.  How do I 
  2513.            Displays task Help. 
  2514.  
  2515.  VisualAge for C++ Help Menu Items 
  2516.            Launch the VisualAge for C++ documentation associated with the menu 
  2517.            choice. These choices are available when you start the Performance 
  2518.            Analyzer from WorkFrame. 
  2519.  
  2520.  Product information 
  2521.            Displays information about the Performance Analyzer. 
  2522.  
  2523.  Related Information 
  2524.  
  2525.  o Introducing the Performance Analyzer 
  2526.  o Using the Analyze Trace Window 
  2527.  o Performance Analyzer - Window Manager Window 
  2528.  o Keys Help. 
  2529.  
  2530.  
  2531. ΓòÉΓòÉΓòÉ 11.5.1. Help Index Choice ΓòÉΓòÉΓòÉ
  2532.  
  2533. Select the Help index choice to display an alphabetical index of Performance 
  2534. Analyzer Help topics. This choice is available from the Help menu on the 
  2535. Performance Analyzer - Window Manager window. 
  2536.  
  2537. Use the Previous push button to return to the last panel you viewed. Use the 
  2538. Search... push button to locate topics in the index. Use the Print... push 
  2539. button to print a topic. 
  2540.  
  2541. Related Information 
  2542.  
  2543.  o Performance Analyzer - Window Manager Window 
  2544.  o Keys Help. 
  2545.  
  2546.  
  2547. ΓòÉΓòÉΓòÉ 11.5.2. General Help Choice ΓòÉΓòÉΓòÉ
  2548.  
  2549. Select the General help choice to display Help information for the active 
  2550. window. This choice is available from the Help menu on the Performance Analyzer 
  2551. - Window Manager window. 
  2552.  
  2553. The online Help panel displayed is the same panel that is displayed when you 
  2554. place your cursor inside the window and press F1. 
  2555.  
  2556. Related Information 
  2557.  
  2558.  o Performance Analyzer - Window Manager Window 
  2559.  o Keys Help. 
  2560.  
  2561.  
  2562. ΓòÉΓòÉΓòÉ 11.5.3. Using Help Choice ΓòÉΓòÉΓòÉ
  2563.  
  2564. Select the Using help choice for a description of how to use the Help facility. 
  2565. This choice is available from the Help menu on the Performance Analyzer - 
  2566. Window Manager window. 
  2567.  
  2568. Related Information 
  2569.  
  2570.  o Performance Analyzer - Window Manager Window 
  2571.  o Keys Help. 
  2572.  
  2573.  
  2574. ΓòÉΓòÉΓòÉ 11.5.4. How Do I Choice ΓòÉΓòÉΓòÉ
  2575.  
  2576. Select the How do I choice to display the Performance Analyzer task help. This 
  2577. choice is available from the Help menu on the Performance Analyzer - Window 
  2578. Manager window. 
  2579.  
  2580. Related Information 
  2581.  
  2582.  o Performance Analyzer - Window Manager Window 
  2583.  o Keys Help. 
  2584.  
  2585.  
  2586. ΓòÉΓòÉΓòÉ <hidden> VisualAge for C++ Help Menu Items ΓòÉΓòÉΓòÉ
  2587.  
  2588. The central portion of the Help pull down menu is dedicated to all the online 
  2589. documentation that is shipped with VisualAge for C++. Making a selection from 
  2590. any of these Cascade menus launches the VisualAge for C++ documentation 
  2591. associated with the menu item. You can find the same documentation in the 
  2592. Information notebook found in the VisualAge for C++ Desktop folder. 
  2593.  
  2594. The Cascade menus are organized as follows: 
  2595.  
  2596.  At A Glance 
  2597.            Provides general information about VisualAge for C++, such as 
  2598.            installing the product, a notebook that accesses the sample 
  2599.            programs, and answers to frequently asked questions. 
  2600.  
  2601.  Using VisualAge for C++ 
  2602.            Provides direct access to the individual sections of the User's 
  2603.            Guide. For example, if you are using the Browser, you would look in 
  2604.            the Browsing section for more information. 
  2605.  
  2606.  How Do I... Selections 
  2607.            Provides access to the How Do I... information for each component of 
  2608.            VisualAge for C++. Use How Do I... information to find out how to 
  2609.            perform common tasks within VisualAge for C++. 
  2610.  
  2611.  C/C++ 
  2612.            Provides access to the information that is specific to programming 
  2613.            in C and C++. 
  2614.  
  2615.  Class Libraries 
  2616.            Provides access to the VisualAge for C++ Open Class Library 
  2617.            documentation. 
  2618.  
  2619.  Visual Programming > 
  2620.            Provides access to the information that is specific to creating your 
  2621.            programs visually. 
  2622.  
  2623.  IPF, and Editing 
  2624.            Provides access to the IPF and Editor references. 
  2625.  
  2626.  SOM 
  2627.            Provides access to the information specific to SOM. 
  2628.  
  2629.  Windows Programming 
  2630.            Provides access to information about programming with the Win32 
  2631.            Software Development Kit. 
  2632.  
  2633.  
  2634. ΓòÉΓòÉΓòÉ 11.5.5. Product Information Choice ΓòÉΓòÉΓòÉ
  2635.  
  2636. Select the Product information choice to display copyright and version 
  2637. information about the Performance Analyzer application. This choice is 
  2638. available from the Help menu on the Performance Analyzer - Window Manager 
  2639. window. 
  2640.  
  2641. Related Information 
  2642.  
  2643.  o Performance Analyzer - Window Manager Window 
  2644.  o Keys Help. 
  2645.  
  2646.  
  2647. ΓòÉΓòÉΓòÉ 11.6. Performance Analyzer - Window Manager Window Executable Pop-up Menu ΓòÉΓòÉΓòÉ
  2648.  
  2649. After you have created a trace file and selected a diagram in which to view it, 
  2650. the Performance Analyzer - Window Manager window displays a list of file names, 
  2651. including your executable file, your trace file, and any open diagrams. If the 
  2652. Show icons choice is selected in the View menu, this icon, , is displayed next 
  2653. to each executable listed in the window. 
  2654.  
  2655. Click mouse button 2 on the executable file name or icon to display the 
  2656. Executable pop-up menu. The choices listed in the pop-up menu are different if 
  2657. you click on another file type. 
  2658.  
  2659. The Performance Analyzer - Window Manager window Executable pop-up menu has the 
  2660. following choices: 
  2661.  
  2662.  Create trace...     Displays the window from which you can create a trace 
  2663.                      file. The file name on which you clicked appears in the 
  2664.                      window's Program Name entry field. 
  2665.  Close               Closes the selected executable, its associated trace file, 
  2666.                      and all diagrams in which the trace data is displayed. 
  2667.  
  2668.  Related Information 
  2669.  
  2670.  o Introducing Performance Analyzer 
  2671.  o Using the Analyze Trace Window 
  2672.  o Exiting the Performance Analyzer 
  2673.  o Performance Analyzer - Window Manager Window. 
  2674.  
  2675.  
  2676. ΓòÉΓòÉΓòÉ 11.6.1. Create Trace... Choice ΓòÉΓòÉΓòÉ
  2677.  
  2678. Select the Create trace... choice to start creating a trace file. This choice 
  2679. is available from the Executable pop-up menu on the Performance Analyzer - 
  2680. Window Manager window. 
  2681.  
  2682. When you select this choice, the Create Trace window appears. On the Create 
  2683. Trace window, specify the program you want to trace and any parameters you want 
  2684. to pass to the program. 
  2685.  
  2686. Note:   Before creating a trace file, you must compile and link your program 
  2687. with the proper options. 
  2688.  
  2689. Related Information 
  2690.  
  2691.  o Compiling and Linking Your Program 
  2692.  o Create Trace Window 
  2693.  o Creating a Customized Trace File 
  2694.  o Performance Analyzer - Window Manager Window 
  2695.  o Keys Help. 
  2696.  
  2697.  
  2698. ΓòÉΓòÉΓòÉ 11.6.2. Close Choice ΓòÉΓòÉΓòÉ
  2699.  
  2700. Select the Close choice to close the selected executable, its trace file, and 
  2701. all diagrams in which the trace data is displayed. Only the Performance 
  2702. Analyzer - Window Manager window remains open. This choice is available from 
  2703. the Executable pop-up menu on the Performance Analyzer - Window Manager window. 
  2704.  
  2705. Related Information 
  2706.  
  2707.  o Exiting the Performance Analyzer 
  2708.  o Performance Analyzer - Window Manager Window 
  2709.  o Keys Help. 
  2710.  
  2711.  
  2712. ΓòÉΓòÉΓòÉ 11.7. Performance Analyzer - Window Manager Window Trace File Pop-up Menu ΓòÉΓòÉΓòÉ
  2713.  
  2714. After you have created a trace file and selected a diagram in which to view it, 
  2715. the Performance Analyzer - Window Manager window displays a list of file names, 
  2716. including your executable file, your trace file, and any open diagrams. If the 
  2717. Show icons choice is selected in the View menu, this icon, , is displayed next 
  2718. to each trace file listed in the window. 
  2719.  
  2720. Click on the trace file name or icon to display the Trace File pop-up menu. The 
  2721. choices listed in the pop-up menu are different if you click on another file 
  2722. type. 
  2723.  
  2724. The Performance Analyzer - Window Manager window Trace File pop-up menu has the 
  2725. following choices: 
  2726.  
  2727.  Analyze trace... 
  2728.            Displays the window from which you can select Performance Analyzer 
  2729.            diagrams to analyze the trace file. The file name on which you 
  2730.            clicked appears in the window's Trace File Name entry field. 
  2731.  Open as Call Nesting 
  2732.            Opens the Call Nesting diagram and displays the trace file in it. 
  2733.  Open as Dynamic Call Graph 
  2734.            Opens the Dynamic Call Graph and displays the trace file in it. 
  2735.  Open as Execution Density 
  2736.            Opens the Execution Density diagram and displays the trace file in 
  2737.            it. 
  2738.  Open as Statistics 
  2739.            Opens the Statistics diagram and displays the trace file in it. 
  2740.  Open as Time Line 
  2741.            Opens the Time Line diagram and displays the trace file in it. 
  2742.  Close 
  2743.            Closes the selected trace file and all diagrams in which the trace 
  2744.            file is displayed. 
  2745.  Delete File 
  2746.            Closes all diagrams in which the trace file is displayed, and then 
  2747.            deletes the selected trace file from your hard disk if you select 
  2748.            Yes in the Trace File - Delete window (displayed when you select 
  2749.            this choice). 
  2750.  
  2751.  Related Information 
  2752.  
  2753.  o Introducing the Performance Analyzer 
  2754.  o Using the Analyze Trace Window 
  2755.  o Performance Analyzer - Window Manager Window. 
  2756.  
  2757.  
  2758. ΓòÉΓòÉΓòÉ 11.7.1. Analyze Trace... Choice ΓòÉΓòÉΓòÉ
  2759.  
  2760. Select the Analyze trace... choice to analyze an existing trace file. This 
  2761. choice is available from the Trace file pop-up menu on the Performance Analyzer 
  2762. - Window Manager window. 
  2763.  
  2764. When you select this choice, the Analyze Trace window appears. 
  2765.  
  2766. Related Information 
  2767.  
  2768.  o Performance Analyzer - Window Manager Window 
  2769.  o Keys Help. 
  2770.  
  2771.  
  2772. ΓòÉΓòÉΓòÉ 11.7.2. Open As Call Nesting Choice ΓòÉΓòÉΓòÉ
  2773.  
  2774. Select the Open as Call Nesting choice to display the trace file in the Call 
  2775. Nesting diagram. This choice is available from the Trace file pop-up menu on 
  2776. the Performance Analyzer - Window Manager window. 
  2777.  
  2778. Related Information 
  2779.  
  2780.  o Call Nesting Diagram 
  2781.  o Performance Analyzer - Window Manager Window 
  2782.  o Keys Help. 
  2783.  
  2784.  
  2785. ΓòÉΓòÉΓòÉ 11.7.3. Open As Dynamic Call Graph Choice ΓòÉΓòÉΓòÉ
  2786.  
  2787. Select the Open as Dynamic Call Graph choice to display the trace file in the 
  2788. Dynamic Call Graph. This choice is available from the Trace file pop-up menu on 
  2789. the Performance Analyzer - Window Manager window. 
  2790.  
  2791. Related Information 
  2792.  
  2793.  o Keys Help. 
  2794.  
  2795.  
  2796. ΓòÉΓòÉΓòÉ 11.7.4. Open As Execution Density Choice ΓòÉΓòÉΓòÉ
  2797.  
  2798. Select the Open as Execution Density choice to display the trace file in the 
  2799. Execution Density diagram. This choice is available from the Trace file pop-up 
  2800. menu on the Performance Analyzer - Window Manager window. 
  2801.  
  2802. Related Information 
  2803.  
  2804.  o Execution Density Diagram 
  2805.  o Performance Analyzer - Window Manager Window 
  2806.  o Keys Help. 
  2807.  
  2808.  
  2809. ΓòÉΓòÉΓòÉ 11.7.5. Open As Statistics Choice ΓòÉΓòÉΓòÉ
  2810.  
  2811. Select the Open as Statistics choice to display the trace file in the 
  2812. Statistics diagram. This choice is available from the Trace file pop-up menu on 
  2813. the Performance Analyzer - Window Manager window. 
  2814.  
  2815. Related Information 
  2816.  
  2817.  o Statistics Diagram 
  2818.  o Performance Analyzer - Window Manager Window 
  2819.  o Keys Help. 
  2820.  
  2821.  
  2822. ΓòÉΓòÉΓòÉ 11.7.6. Open As Time Line Choice ΓòÉΓòÉΓòÉ
  2823.  
  2824. Select the Open as Time Line choice to display the trace file in the Time Line 
  2825. diagram. This choice is available from the Trace file pop-up menu on the 
  2826. Performance Analyzer - Window Manager window. 
  2827.  
  2828. Related Information 
  2829.  
  2830.  o Time Line Diagram 
  2831.  o Performance Analyzer - Window Manager Window 
  2832.  o Keys Help. 
  2833.  
  2834.  
  2835. ΓòÉΓòÉΓòÉ 11.7.7. Close Choice ΓòÉΓòÉΓòÉ
  2836.  
  2837. Select the Close choice to close the selected trace file and all diagrams in 
  2838. which the trace data is displayed. Only the Performance Analyzer - Window 
  2839. Manager window remains open. This choice is available from the Trace file 
  2840. pop-up menu on the Performance Analyzer - Window Manager window. 
  2841.  
  2842. Related Information 
  2843.  
  2844.  o Exiting the Performance Analyzer 
  2845.  o Performance Analyzer - Window Manager Window 
  2846.  o Keys Help. 
  2847.  
  2848.  
  2849. ΓòÉΓòÉΓòÉ 11.7.8. Delete File Choice ΓòÉΓòÉΓòÉ
  2850.  
  2851. When you select the Delete file choice, the trace file is deleted from the disk 
  2852. on which it is stored. This choice is available from the Trace file pop-up menu 
  2853. on the Performance Analyzer - Window Manager window. 
  2854.  
  2855. Related Information 
  2856.  
  2857.  o Executable Pop-up Menu 
  2858.  o Trace file Pop-up Menu 
  2859.  o Performance Analyzer - Window Manager Window. 
  2860.  
  2861.  
  2862. ΓòÉΓòÉΓòÉ 11.8. Performance Analyzer - Window Manager Window Diagram Pop-up Menu ΓòÉΓòÉΓòÉ
  2863.  
  2864. After you have created a trace file and selected a diagram in which to view it, 
  2865. the Performance Analyzer - Window Manager window displays a list of file names, 
  2866. including your executable file, your trace file, and any open diagrams. If the 
  2867. Show icons choice is selected in the View menu, an icon is displayed next to 
  2868. each diagram file name listed in the window. 
  2869.  
  2870. Click on the diagram file name or icon to display the Diagram pop-up menu. The 
  2871. choices listed in the pop-up menu are different if you click on another file 
  2872. type. 
  2873.  
  2874. The Performance Analyzer - Window Manager window Diagram pop-up menu has the 
  2875. following choices: 
  2876.  
  2877.  Display   Makes the selected diagram active and brings it to the foreground of 
  2878.            your desktop. 
  2879.  Close     Closes the selected diagram. 
  2880.  
  2881.  Related Information 
  2882.  
  2883.  o Introducing the Performance Analyzer 
  2884.  o Show Icons Choice 
  2885.  o Analyze Trace Window 
  2886.  o Using the Analyze Trace Window 
  2887.  o Performance Analyzer - Window Manager Window. 
  2888.  
  2889.  
  2890. ΓòÉΓòÉΓòÉ 11.8.1. Display Choice ΓòÉΓòÉΓòÉ
  2891.  
  2892. When you select the Display choice, the Performance Analyzer makes the selected 
  2893. diagram active and brings it to the foreground of the desktop. This choice is 
  2894. available from the Diagram pop-up menu on the Performance Analyzer - Window 
  2895. Manager window. 
  2896.  
  2897. Related Information 
  2898.  
  2899.  o Executable Pop-up Menu 
  2900.  o Trace file Pop-up Menu 
  2901.  o Performance Analyzer - Window Manager Window. 
  2902.  
  2903.  
  2904. ΓòÉΓòÉΓòÉ 11.8.2. Close Choice ΓòÉΓòÉΓòÉ
  2905.  
  2906. Select the Close choice to close the selected diagram. Only the Performance 
  2907. Analyzer - Window Manager window remains open. This choice is available from 
  2908. the Diagram pop-up menu on the Performance Analyzer - Window Manager window. 
  2909.  
  2910. Related Information 
  2911.  
  2912.  o Exiting the Performance Analyzer 
  2913.  o Performance Analyzer - Window Manager Window 
  2914.  o Keys Help. 
  2915.  
  2916.  
  2917. ΓòÉΓòÉΓòÉ 12. Create Trace Window ΓòÉΓòÉΓòÉ
  2918.  
  2919. The Create Trace window lets you specify the name of the program that you want 
  2920. to trace. Optional fields allow you to enter parameters that you want to pass 
  2921. to your program, specify a custom trace file name, and attach a description to 
  2922. the trace file. 
  2923.  
  2924. You can display the Create Trace window from the Performance Analyzer - Window 
  2925. Manager window by: 
  2926.  
  2927.  o Clicking on the Create Trace... push button 
  2928.  o Selecting the Create trace... choice from the File menu. 
  2929.  o Clicking mouse button 2 on an executable file name or icon (if displayed), 
  2930.    and then selecting Create trace... from the pop-up menu. 
  2931.  
  2932.  Areas of the Create Trace Window 
  2933.  
  2934.  o Program Name: Entry Field 
  2935.  o Optional Entry Fields 
  2936.  
  2937.     - Program Parameters: 
  2938.     - Trace File Name: 
  2939.     - Trace File Description: 
  2940.  
  2941.  o Push Buttons 
  2942.  
  2943.     - Find... 
  2944.     - OK 
  2945.     - Cancel 
  2946.     - Help. 
  2947.  
  2948.  Related Information 
  2949.  
  2950.  o Creating a Trace File 
  2951.  o Performance Analyzer - Window Manager Window 
  2952.  o Trace Generation Window 
  2953.  o Keys Help. 
  2954.  
  2955.  
  2956. ΓòÉΓòÉΓòÉ 12.1. Program Name Entry Field ΓòÉΓòÉΓòÉ
  2957.  
  2958. Type the full path name and program you want to trace in the Program Name entry 
  2959. field. This entry field is available on the Create Trace window. If the program 
  2960. is in your current directory, you do not have to type the path. 
  2961.  
  2962. Note:   If you are not sure where the file is located, select the Find... push 
  2963. button. 
  2964.  
  2965. Related Information 
  2966.  
  2967.  o Creating a Trace File 
  2968.  o Performance Analyzer - Window Manager Window 
  2969.  o Trace Generation Window 
  2970.  o Keys Help. 
  2971.  
  2972.  
  2973. ΓòÉΓòÉΓòÉ 12.2. Program Parameters Entry Field ΓòÉΓòÉΓòÉ
  2974.  
  2975. Type any parameters that you want to pass to your program in the Program 
  2976. Parameters entry field. This entry field is available on the Create Trace 
  2977. window. 
  2978.  
  2979. Note:   This entry field is optional. 
  2980.  
  2981. Related Information 
  2982.  
  2983.  o Creating a Trace File 
  2984.  o Performance Analyzer - Window Manager Window 
  2985.  o Trace Generation Window 
  2986.  o Keys Help. 
  2987.  
  2988.  
  2989. ΓòÉΓòÉΓòÉ 12.3. Trace File Name Entry Field ΓòÉΓòÉΓòÉ
  2990.  
  2991. Type the name of the trace file in the Trace File Name entry field. This entry 
  2992. field is available on the Create Trace window. 
  2993.  
  2994. The default name for the trace file is myprog.trc, where myprog is the name of 
  2995. the program you are tracing. 
  2996.  
  2997. The Performance Analyzer places the trace file in the executable's directory 
  2998. unless you specify a path. 
  2999.  
  3000. Note:   This entry field is optional. 
  3001.  
  3002. Related Information 
  3003.  
  3004.  o Creating a Trace File 
  3005.  o Creating a Customized Trace File 
  3006.  o Unique trace file name 
  3007.  o Performance Analyzer - Window Manager Window 
  3008.  o Trace Generation Window 
  3009.  o Keys Help. 
  3010.  
  3011.  
  3012. ΓòÉΓòÉΓòÉ 12.4. Trace File Description Entry Field ΓòÉΓòÉΓòÉ
  3013.  
  3014. Type any comments that you want to make about your trace in the Trace File 
  3015. Description entry field. This entry field is available on the Create Trace 
  3016. window. 
  3017.  
  3018. A description can make a trace file easier to identify, especially when you 
  3019. create more than one trace file from the same program and use different options 
  3020. for each trace. The description is displayed in the Status Area of any open 
  3021. diagram. 
  3022.  
  3023. Note:   This entry field is optional. 
  3024.  
  3025. Related Information 
  3026.  
  3027.  o Creating a Trace File 
  3028.  o Creating a Customized Trace File 
  3029.  o Unique trace file name 
  3030.  o Performance Analyzer - Window Manager Window 
  3031.  o Trace Generation Window 
  3032.  o Keys Help. 
  3033.  
  3034.  
  3035. ΓòÉΓòÉΓòÉ 13. Analyze Trace Window ΓòÉΓòÉΓòÉ
  3036.  
  3037. The Analyze Trace window lets you specify the name of the trace file that you 
  3038. want to analyze and the Performance Analyzer diagrams in which you want to 
  3039. display it. 
  3040.  
  3041. Note:   A trace file must have been created before you can open a diagram. See 
  3042. Creating a Trace File for instructions. 
  3043.  
  3044. You can display the Analyze Trace window from the Performance Analyzer - Window 
  3045. Manager window by: 
  3046.  
  3047.  o Clicking on the Analyze Trace... push button 
  3048.  o Selecting the Analyze trace... choice from the File menu. 
  3049.  o Clicking mouse button 2 on a trace file name or icon (if displayed), and 
  3050.    then selecting Analyze trace... from the pop-up menu. 
  3051.  
  3052.  Note:   If you open your trace file in a diagram and find that the file does 
  3053.  not contain any trace events, your application may have been unable to locate 
  3054.  CPPWPA3.DLL when you created the trace file. To correct this, change your path 
  3055.  to point to the location of CPPWPA3.DLL (probably in the DLL subdirectory 
  3056.  where you installed VisualAge for C++), and then recreate your trace file. 
  3057.  
  3058.  Areas of the Analyze Trace Window 
  3059.  
  3060.  o Trace File Name: Entry Field 
  3061.  o Diagrams Check Boxes 
  3062.  
  3063.     - Call Nesting 
  3064.     - Dynamic Call Graph 
  3065.     - Execution Density 
  3066.     - Statistics 
  3067.     - Time Line 
  3068.  
  3069.  o Push Buttons 
  3070.  
  3071.     - Find... 
  3072.     - OK 
  3073.     - Cancel 
  3074.     - Help. 
  3075.  
  3076.  Related Information 
  3077.  
  3078.  o Call Nesting Diagram 
  3079.  o Dynamic Call Graph 
  3080.  o Execution Density Diagram 
  3081.  o Statistics Diagram 
  3082.  o Time Line Diagram 
  3083.  o Performance Analyzer - Window Manager Window 
  3084.  o Keys Help. 
  3085.  
  3086.  
  3087. ΓòÉΓòÉΓòÉ 13.1. Trace File Name Entry Field ΓòÉΓòÉΓòÉ
  3088.  
  3089. Type the full path and file name of the trace file that you want to analyze in 
  3090. the Trace File Name entry field. This entry field is available on the Analyze 
  3091. Trace window. 
  3092.  
  3093. If the program is in your current directory, you do not have to type the path. 
  3094.  
  3095. Note:   If you are not sure where the file is located, select the Find... push 
  3096. button. 
  3097.  
  3098.  
  3099. ΓòÉΓòÉΓòÉ 14. Trace Generation Window ΓòÉΓòÉΓòÉ
  3100.  
  3101. The Trace Generation window lists the file names of the preloaded components in 
  3102. the program and lets you control which parts of your program are traced. 
  3103.  
  3104. A component can be an executable (EXE) file, a dynamic load library (DLL) file, 
  3105. an object file, or a function. EXEs and DLLs contain object files, and object 
  3106. files contain functions. 
  3107.  
  3108. Click on the plus and minus icons to expand and contract EXE, DLL, and object 
  3109. files to view or hide components. 
  3110.  
  3111. Note:   Before creating a trace file, you must compile and link your program 
  3112. with the proper options. 
  3113.  
  3114. Areas of the Trace Generation Window 
  3115.  
  3116.  o Menu Bar Summary 
  3117.  
  3118.     - Application 
  3119.     - Edit 
  3120.     - View 
  3121.     - Options 
  3122.     - Project (only available when working in the WorkFrame environment) 
  3123.     - Help 
  3124.  
  3125.  o Pop-up Menus 
  3126.  
  3127.     - Executable 
  3128.     - Object File 
  3129.     - Function 
  3130.  
  3131.  o Push Button 
  3132.  
  3133.     - Trace. 
  3134.  
  3135.  Related Information 
  3136.  
  3137.  o Compiling and Linking Your Program 
  3138.  o Creating a Trace File 
  3139.  o Creating a Customized Trace File 
  3140.  o Keys Help. 
  3141.  
  3142.  
  3143. ΓòÉΓòÉΓòÉ 14.1. Trace Generation Window Application Menu ΓòÉΓòÉΓòÉ
  3144.  
  3145. The Trace Generation window Application menu has the following choices: 
  3146.  
  3147.  Window Manager      Makes the Performance Analyzer - Window Manager window 
  3148.                      active. 
  3149.  Exit the Performance Analyzer Lets you end the Performance Analyzer 
  3150.                      application. 
  3151.  
  3152.  Related Information 
  3153.  
  3154.  o Trace Generation Window 
  3155.  o Keys Help. 
  3156.  
  3157.  
  3158. ΓòÉΓòÉΓòÉ 14.1.1. Window Manager Choice ΓòÉΓòÉΓòÉ
  3159.  
  3160. Makes the Performance Analyzer - Window Manager window active and brings it to 
  3161. the foreground of your desktop. This choice is available from the Application 
  3162. menu on the Trace Generation window. 
  3163.  
  3164. Related Information 
  3165.  
  3166.  o Trace Generation Window 
  3167.  o Keys Help. 
  3168.  
  3169.  
  3170. ΓòÉΓòÉΓòÉ 14.1.2. Exit the Performance Analyzer Choice ΓòÉΓòÉΓòÉ
  3171.  
  3172. Select the Exit the Performance Analyzer choice to end the Performance Analyzer 
  3173. application and close all associated windows. This choice is available from the 
  3174. Application menu on the Trace Generation window. 
  3175.  
  3176. Related Information 
  3177.  
  3178.  o Exiting the Performance Analyzer 
  3179.  o Trace Generation Window 
  3180.  o Keys Help. 
  3181.  
  3182.  
  3183. ΓòÉΓòÉΓòÉ 14.2. Trace Generation Window Edit Menu ΓòÉΓòÉΓòÉ
  3184.  
  3185. The Trace Generation window Edit menu has the following choices: 
  3186.  
  3187. Note:   This is a dynamic menu that displays choices based on the type of 
  3188. component selected. 
  3189.  
  3190.  Enable all executables 
  3191.                      Enables all functions in all executable files. 
  3192.  
  3193.  Disable all executables 
  3194.                      Disables all functions in all executable files. 
  3195.  
  3196.  Enable executable 
  3197.                      Enables all functions in a selected executable file. This 
  3198.                      choice is available when you select a disabled executable. 
  3199.  
  3200.  Disable executable 
  3201.                      Disables all functions in a selected executable file. This 
  3202.                      choice is available when you select an enabled executable. 
  3203.  
  3204.  Enable object file 
  3205.                      Enables all functions in a selected object file. This 
  3206.                      choice is available when you select a disabled object 
  3207.                      file. 
  3208.  
  3209.  Disable object file 
  3210.                      Disables all functions in a selected object file. This 
  3211.                      choice is available when you select an enabled object 
  3212.                      file. 
  3213.  
  3214.  Enable function 
  3215.                      Enables a function. This choice is available when you 
  3216.                      select a disabled function. 
  3217.  
  3218.  Disable function 
  3219.                      Disables a function. This choice is available when you 
  3220.                      select an enabled function. 
  3221.  
  3222.  Set trigger 
  3223.                      Sets a trigger on a function so that the Performance 
  3224.                      Analyzer traces the function and its associated calls. 
  3225.                      This choice is available when you select a function that 
  3226.                      does not have a trigger set on it. 
  3227.  
  3228.                      Note:   If triggers are set, the Performance Analyzer 
  3229.                      starts tracing when it reaches the triggered function and 
  3230.                      continues tracing until it receives a return from that 
  3231.                      function. If no triggers are set, the Performance Analyzer 
  3232.                      traces all enabled components. 
  3233.  
  3234.  Remove trigger 
  3235.                      Removes a trigger on a function. This choice is available 
  3236.                      when you select a function that has a trigger set on it. 
  3237.  
  3238.                      Note:   If triggers are set, the Performance Analyzer 
  3239.                      starts tracing when it reaches the triggered function and 
  3240.                      continues tracing until it receives a return from that 
  3241.                      function. If no triggers are set, the Performance Analyzer 
  3242.                      traces all enabled components. 
  3243.  
  3244.  Related Information 
  3245.  
  3246.  o Executable Pop-up Menu 
  3247.  o Object File Pop-up Menu 
  3248.  o Function Pop-up Menu 
  3249.  o Trace Generation Window 
  3250.  o Keys Help. 
  3251.  
  3252.  
  3253. ΓòÉΓòÉΓòÉ 14.2.1. Enable All Executables Choice ΓòÉΓòÉΓòÉ
  3254.  
  3255. Select the Enable all executables choice to enable all functions in all 
  3256. executable files. This choice is available from the Edit menu on the Trace 
  3257. Generation window. 
  3258.  
  3259. When you enable executables, the Performance Analyzer includes information 
  3260. about them in the trace file. 
  3261.  
  3262. The default is to enable all components that have been compiled and linked with 
  3263. the proper options. 
  3264.  
  3265. To enable all executables, select Enable all executables from the Edit menu. 
  3266.  
  3267. Related Information 
  3268.  
  3269.  o Disable All Executables Choice 
  3270.  o Executable Pop-up Menu 
  3271.  o Object file Pop-up Menu 
  3272.  o Function Pop-up Menu 
  3273.  o Trace Generation Window 
  3274.  o Keys Help. 
  3275.  
  3276.  
  3277. ΓòÉΓòÉΓòÉ 14.2.2. Disable All Executables Choice ΓòÉΓòÉΓòÉ
  3278.  
  3279. Select the Disable all executables choice to disable all functions in all 
  3280. executable files. This choice is available from the Edit menu on the Trace 
  3281. Generation window. 
  3282.  
  3283. When you disable executables, the Performance Analyzer does not include 
  3284. information about them in the trace file. 
  3285.  
  3286. The default is to enable all components that have been compiled and linked with 
  3287. the proper options. 
  3288.  
  3289. Related Information 
  3290.  
  3291.  o Enable All Executables Choice 
  3292.  o Executable Pop-up Menu 
  3293.  o Object file Pop-up Menu 
  3294.  o Function Pop-up Menu 
  3295.  o Trace Generation Window 
  3296.  o Keys Help. 
  3297.  
  3298.  
  3299. ΓòÉΓòÉΓòÉ 14.2.3. Enable Executable Choice ΓòÉΓòÉΓòÉ
  3300.  
  3301. Select the Enable executable choice to enable all functions in a selected 
  3302. executable file. This choice is available from the Edit menu and the Executable 
  3303. pop-up menu on the Trace Generation window. You can select this choice when a 
  3304. disabled executable is selected. 
  3305.  
  3306. When you enable an executable, the Performance Analyzer includes information 
  3307. about the executable in the trace file. 
  3308.  
  3309. The default is to enable all components that have been compiled and linked with 
  3310. the proper options. 
  3311.  
  3312. Enable an executable in any of the following ways: 
  3313.  
  3314.  o Click on the file name or icon of the executable you want to enable. Then 
  3315.    select Enable executable from the Edit menu. 
  3316.  o Double-click on the file name or icon of the executable you want to enable. 
  3317.  o Click mouse button 2 on the file name or icon of the executable you want to 
  3318.    enable. Then select Enable executable from the Executable pop-up menu. 
  3319.  
  3320.  Note: 
  3321.  
  3322.  If the icon next to a component is: 
  3323.  
  3324.  o Green (with no slash mark), the component is enabled. 
  3325.  o Red (with a slash mark), the component is disabled. 
  3326.  o White, the component cannot be traced. 
  3327.  
  3328.  Related Information 
  3329.  
  3330.  o Disable Executable Choice 
  3331.  o Executable Pop-up Menu 
  3332.  o Object file Pop-up Menu 
  3333.  o Function Pop-up Menu 
  3334.  o Trace Generation Window 
  3335.  o Keys Help. 
  3336.  
  3337.  
  3338. ΓòÉΓòÉΓòÉ 14.2.4. Disable Executable Choice ΓòÉΓòÉΓòÉ
  3339.  
  3340. Select the Disable executable choice to disable all functions in a selected 
  3341. executable file. This choice is available from the Edit menu and the Executable 
  3342. pop-up menu on the Trace Generation window. You can select this choice when an 
  3343. enabled executable is selected. 
  3344.  
  3345. When you disable an executable, the Performance Analyzer does not include 
  3346. information about the executable in the trace file. 
  3347.  
  3348. The default is to enable all components that have been compiled and linked with 
  3349. the proper options. 
  3350.  
  3351. Disable an executable in any of the following ways: 
  3352.  
  3353.  o Click on the file name or icon of the executable you want to disable. Then 
  3354.    select Disable executable from the Edit menu. 
  3355.  o Double-click on the file name or icon of the executable you want to enable. 
  3356.  o Click mouse button 2 on the file name or icon of the executable you want to 
  3357.    disable. Then select Disable executable from the Executable pop-up menu. 
  3358.  
  3359.  Note:   If the icon next to a component is: 
  3360.  
  3361.  o Green (with no slash mark), the component is enabled. 
  3362.  o Red (with a slash mark), the component is disabled. 
  3363.  o White, the component cannot be traced. 
  3364.  
  3365.  Related Information 
  3366.  
  3367.  o Enable Executable Choice 
  3368.  o Executable Pop-up Menu 
  3369.  o Object file Pop-up Menu 
  3370.  o Function Pop-up Menu 
  3371.  o Trace Generation Window 
  3372.  o Keys Help. 
  3373.  
  3374.  
  3375. ΓòÉΓòÉΓòÉ 14.2.5. Enable Object File Choice ΓòÉΓòÉΓòÉ
  3376.  
  3377. Select the Enable object file choice to enable all functions in a selected 
  3378. object file. This choice is available from the Edit menu and the Object file 
  3379. pop-up menu on the Trace Generation window. You can select this choice when a 
  3380. disabled object file is selected. 
  3381.  
  3382. When you enable an object file, the Performance Analyzer includes information 
  3383. about the object in the trace file. 
  3384.  
  3385. The default is to enable all components that have been compiled and linked with 
  3386. the proper options. 
  3387.  
  3388. Enable an object file in any of the following ways: 
  3389.  
  3390.  o Click on the file name or icon of the object file you want to enable. Then 
  3391.    select Enable object file from the Edit menu. 
  3392.  o Double-click on the file name or icon of the object file you want to enable. 
  3393.  o Click mouse button 2 on the file name or icon of the object file you want to 
  3394.    enable. Then select Enable object file from the Object file pop-up menu. 
  3395.  
  3396.  Note:   If the icon next to a component is: 
  3397.  
  3398.  o Green (with no slash mark), the component is enabled. 
  3399.  o Red (with a slash mark), the component is disabled. 
  3400.  o White, the component cannot be traced. 
  3401.  
  3402.  Related Information 
  3403.  
  3404.  o Disable Object File Choice 
  3405.  o Executable Pop-up Menu 
  3406.  o Object file Pop-up Menu 
  3407.  o Function Pop-up Menu 
  3408.  o Trace Generation Window 
  3409.  o Keys Help. 
  3410.  
  3411.  
  3412. ΓòÉΓòÉΓòÉ 14.2.6. Disable Object File Choice ΓòÉΓòÉΓòÉ
  3413.  
  3414. Select the Disable object file choice to disable all functions in a selected 
  3415. object file. This choice is available from the Edit menu and the Object file 
  3416. pop-up menu on the Trace Generation window. You can select this choice when an 
  3417. enabled object file is selected. 
  3418.  
  3419. When you disable an object file, the Performance Analyzer does not include 
  3420. information about the object in the trace file. 
  3421.  
  3422. The default is to enable all components that have been compiled and linked with 
  3423. the proper options. 
  3424.  
  3425. Disable an object file in any of the following ways: 
  3426.  
  3427.  o Click on the file name or icon of the object file you want to disable. Then 
  3428.    select Disable object file from the Edit menu. 
  3429.  o Double-click on the file name or icon of the object file you want to 
  3430.    disable. 
  3431.  o Click mouse button 2 on the file name or icon of the object file you want to 
  3432.    disable. Then select Disable object file from the Object file pop-up menu. 
  3433.  
  3434.  Note:   If the icon next to a component is: 
  3435.  
  3436.  o Green (with no slash mark), the component is enabled. 
  3437.  o Red (with a slash mark), the component is disabled. 
  3438.  o White, the component cannot be traced. 
  3439.  
  3440.  Related Information 
  3441.  
  3442.  o Enable Object File Choice 
  3443.  o Executable Pop-up Menu 
  3444.  o Object file Pop-up Menu 
  3445.  o Function Pop-up Menu 
  3446.  o Trace Generation Window 
  3447.  o Keys Help. 
  3448.  
  3449.  
  3450. ΓòÉΓòÉΓòÉ 14.2.7. Enable Function Choice ΓòÉΓòÉΓòÉ
  3451.  
  3452. Select the Enable function choice to enable a function. This choice is 
  3453. available from the Edit menu and the Function pop-up menu on the Trace 
  3454. Generation window. You can select this choice when a disabled function is 
  3455. selected. 
  3456.  
  3457. When you enable a function, the Performance Analyzer includes information about 
  3458. the function in the trace file. 
  3459.  
  3460. The default is to enable all components that have been compiled and linked with 
  3461. the proper options. 
  3462.  
  3463. Enable a function in any of the following ways: 
  3464.  
  3465.  o Click on the name or icon of the function you want to enable. Then select 
  3466.    Enable function from the Edit menu. 
  3467.  o Double-click on the name or icon of the function you want to enable. 
  3468.  o Click mouse button 2 on the file name or icon of the function you want to 
  3469.    enable. Then select Enable function from the Function pop-up menu. 
  3470.  
  3471.  Note:   If the icon next to a component is: 
  3472.  
  3473.  o Green (with no slash mark), the component is enabled. 
  3474.  o Red (with a slash mark), the component is disabled. 
  3475.  o White, the component cannot be traced. 
  3476.  
  3477.  Related Information 
  3478.  
  3479.  o Disable Function Choice 
  3480.  o Executable Pop-up Menu 
  3481.  o Object file Pop-up Menu 
  3482.  o Function Pop-up Menu 
  3483.  o Trace Generation Window 
  3484.  o Keys Help. 
  3485.  
  3486.  
  3487. ΓòÉΓòÉΓòÉ 14.2.8. Disable Function Choice ΓòÉΓòÉΓòÉ
  3488.  
  3489. Select the Disable function choice to disable a function. This choice is 
  3490. available from the Edit menu and the Function pop-up menu on the Trace 
  3491. Generation window. You can select this choice when an enabled function is 
  3492. selected. 
  3493.  
  3494. When you disable a function, the Performance Analyzer does not include 
  3495. information about the function in the trace file. 
  3496.  
  3497. The default is to enable all components that have been compiled and linked with 
  3498. the proper options. 
  3499.  
  3500. Disable a function in any of the following ways: 
  3501.  
  3502.  o Click on the name or icon of the function you want to disable. Then select 
  3503.    Disable function from the Edit menu. 
  3504.  o Double-click on the name or icon of the function you want to disable. 
  3505.  o Click mouse button 2 on the file name or icon of the function you want to 
  3506.    disable. Then select Disable function from the Function pop-up menu. 
  3507.  
  3508.  Note:   If the icon next to a component is: 
  3509.  
  3510.  o Green (with no slash mark), the component is enabled. 
  3511.  o Red (with a slash mark), the component is disabled. 
  3512.  o White, the component cannot be traced. 
  3513.  
  3514.  Related Information 
  3515.  
  3516.  o Enable Function Choice 
  3517.  o Executable Pop-up Menu 
  3518.  o Object file Pop-up Menu 
  3519.  o Function Pop-up Menu 
  3520.  o Trace Generation Window 
  3521.  o Keys Help. 
  3522.  
  3523.  
  3524. ΓòÉΓòÉΓòÉ 14.2.9. Set Trigger Choice ΓòÉΓòÉΓòÉ
  3525.  
  3526. Select the Set trigger choice to set a trigger on a function. This choice is 
  3527. available from the Edit menu and the Function pop-up menu on the Trace 
  3528. Generation window. You can select this choice when a function is selected. You 
  3529. select a function by clicking on the file name or icon of the function in the 
  3530. Trace Generation window. 
  3531.  
  3532. A trigger turns tracing on when it is called and then turns tracing off when it 
  3533. returns. By setting triggers to start or stop tracing at selected points in 
  3534. your program, you can control the size of your trace file. For more information 
  3535. on controlling the size of your trace file, see Creating a Customized Trace 
  3536. File. 
  3537.  
  3538. The Performance Analyzer allows you to set multiple triggers. If a trigger 
  3539. function is nested within another trigger function, tracing is turned off only 
  3540. after the outer function returns. 
  3541.  
  3542. Note:   If triggers are set, the Performance Analyzer starts tracing when it 
  3543. reaches the triggered function and continues tracing until it receives a return 
  3544. from that function. If no triggers are set, the Performance Analyzer traces all 
  3545. enabled components. 
  3546.  
  3547. Set a trigger in either of the following ways. On the Trace Generation window: 
  3548.  
  3549.   1. Select the function you want to trigger, and then select the Set trigger 
  3550.      choice from the Edit menu. 
  3551.   2. Click mouse button 2 on the function you want to trigger (or the icon next 
  3552.      to it), and then click on the Set trigger choice in the Function pop-up 
  3553.      menu. 
  3554.  
  3555.  The letter T appears in the icon next to the name of a triggered function. 
  3556.  
  3557.  Related Information 
  3558.  
  3559.  o Setting and Removing Triggers 
  3560.  o Remove Trigger Choice 
  3561.  o Function Pop-up Menu 
  3562.  o Trace Generation Window 
  3563.  o Keys Help. 
  3564.  
  3565.  
  3566. ΓòÉΓòÉΓòÉ 14.2.10. Remove Trigger Choice ΓòÉΓòÉΓòÉ
  3567.  
  3568. Select the Remove trigger choice to remove a trigger that has been set on a 
  3569. function. This choice is available from the Edit menu and the Function pop-up 
  3570. menu on the Trace Generation window. 
  3571.  
  3572. You can select this choice when a function on which a trigger has been set is 
  3573. selected. You select a function by clicking on the function name or icon in the 
  3574. Trace Generation window. 
  3575.  
  3576. A trigger turns tracing on when it is called and then turns tracing off when it 
  3577. returns. By setting triggers to start or stop tracing at selected points in 
  3578. your program, you can control the size of your trace file. For more information 
  3579. on controlling the size of your trace file, see Creating a Customized Trace 
  3580. File. 
  3581.  
  3582. The Performance Analyzer allows you to set multiple triggers. If a trigger 
  3583. function is nested within another trigger function, tracing is turned off only 
  3584. after the outer function returns. 
  3585.  
  3586. Note:   If triggers are set, the Performance Analyzer starts tracing when it 
  3587. reaches the triggered function and continues tracing until it receives a return 
  3588. from that function. If no triggers are set, the Performance Analyzer traces all 
  3589. enabled components. 
  3590.  
  3591. Remove a trigger in either of the following ways. On the Trace Generation 
  3592. window: 
  3593.  
  3594.   1. Select a function on which a trigger has been set (the letter T appears in 
  3595.      the icon next to its name in the Trace Generation window), and then select 
  3596.      the Remove trigger choice from the Edit menu. 
  3597.   2. Select a function on which a trigger has been set by clicking 
  3598.      mouse button2 on the function name (or the icon next to it), and then 
  3599.      click on the Remove trigger choice in the Function pop-up menu. 
  3600.  
  3601.  The T is removed from the icon next to the function name to indicate the 
  3602.  trigger has been removed. 
  3603.  
  3604.  Related Information 
  3605.  
  3606.  o Setting and Removing Triggers 
  3607.  o Set Trigger Choice 
  3608.  o Function Pop-up Menu 
  3609.  o Trace Generation Window 
  3610.  o Keys Help. 
  3611.  
  3612.  
  3613. ΓòÉΓòÉΓòÉ 14.3. Trace Generation Window View Menu ΓòÉΓòÉΓòÉ
  3614.  
  3615. The Trace Generation window View menu has the following choices: 
  3616.  
  3617.  Traceable filter 
  3618.            Displays only the components that are traceable. 
  3619.  Tree lines 
  3620.            Displays lines between components to show relationships. 
  3621.  
  3622.  Related Information 
  3623.  
  3624.  o Trace Generation Window 
  3625.  o Keys Help. 
  3626.  
  3627.  
  3628. ΓòÉΓòÉΓòÉ 14.3.1. Traceable Filter Choice ΓòÉΓòÉΓòÉ
  3629.  
  3630. Select the Traceable filter choice to view only the components that are 
  3631. traceable. For a component to be traceable, it must have been properly compiled 
  3632. and linked, and it must be linked with CPPWPA3.OBJ. For instructions on 
  3633. compiling and linking your program, see Compiling and Linking Your Program. 
  3634. This choice is available from the View menu on the Trace Generation window. 
  3635.  
  3636. To filter the traceable components, select Traceable filter from the View menu. 
  3637. A check mark is displayed next to the choice to show it is enabled. 
  3638.  
  3639. To reset the filter, select Traceable filter from the View menu. The check mark 
  3640. is removed to show the choice is disabled. 
  3641.  
  3642. Note:   The settings you enter are saved for the current session. If you want 
  3643. to save the settings for subsequent sessions, select the Options menu and then 
  3644. select the Save choice from the Settings cascaded menu. 
  3645.  
  3646. Related Information 
  3647.  
  3648.  o Trace Generation Window 
  3649.  o Keys Help. 
  3650.  
  3651.  
  3652. ΓòÉΓòÉΓòÉ 14.3.2. Tree Lines Choice ΓòÉΓòÉΓòÉ
  3653.  
  3654. Select the Tree lines choice to display directory tree lines between components 
  3655. to show relationships. This choice is available from the View menu on the Trace 
  3656. Generation window. 
  3657.  
  3658. A check mark next to this choice indicates that it is selected. To remove tree 
  3659. lines, select the choice again. The check mark is removed to show the choice is 
  3660. disabled. 
  3661.  
  3662. Note:   The settings you enter are saved for the current session. If you want 
  3663. to save the settings for subsequent sessions, select the Options menu and then 
  3664. select the Save choice from the Settings cascaded menu. 
  3665.  
  3666. Related Information 
  3667.  
  3668.  o Trace Generation Window 
  3669.  o Keys Help. 
  3670.  
  3671.  
  3672. ΓòÉΓòÉΓòÉ 14.4. Trace Generation Window Options Menu ΓòÉΓòÉΓòÉ
  3673.  
  3674. Select choices from the Options menu to customize your trace sessions. 
  3675.  
  3676. The Trace Generation window Options menu has the following choices: 
  3677.  
  3678.  Buffer wrap 
  3679.            Enable or disable buffer wrapping. 
  3680.  Call depth... 
  3681.            Select the call depth limit for each thread. 
  3682.  Font... 
  3683.            Displays the Font window, which lets you change the font, font 
  3684.            style, and font size for the Trace Generation window. 
  3685.  Name trace file... 
  3686.            Type a new path or rename the trace file for the program you are 
  3687.            analyzing and change the trace file description. 
  3688.  Timeout control... 
  3689.            Select the maximum number of seconds your program may run without 
  3690.            logging events. Use this choice when your program is in a continuous 
  3691.            loop or deadlock. 
  3692.  Time stamp events 
  3693.            Select to log or not log time stamps. 
  3694.  Settings > 
  3695.            Displays a cascaded menu that lets you save settings or restore 
  3696.            initial default settings. 
  3697.  
  3698.  Related Information 
  3699.  
  3700.  o Trace Generation Window 
  3701.  o Keys Help. 
  3702.  
  3703.  
  3704. ΓòÉΓòÉΓòÉ 14.4.1. Buffer Wrap Choice ΓòÉΓòÉΓòÉ
  3705.  
  3706. Select the Buffer wrap choice to enable or disable buffer wrapping. This choice 
  3707. is available from the Options menu on the Trace Generation window. 
  3708.  
  3709. You can enable or disable buffer wrapping to choose when the data is written to 
  3710. the trace file. The default setting is disabled. A check mark appears next to 
  3711. the choice when it is enabled. The check mark does not appear when the choice 
  3712. is disabled. 
  3713.  
  3714. When Buffer wrap is enabled, the trace data is written to the trace file only 
  3715. when tracing has stopped. As the program is traced, the buffer fills and 
  3716. overwrites older events in the buffer with newer ones. Since the buffer is 
  3717. flushed only when the program ends, the trace file is smaller, but some trace 
  3718. data is lost. 
  3719.  
  3720. When Buffer wrap is disabled, the data is written to the trace file every time 
  3721. the buffer fills. 
  3722.  
  3723. Related Information 
  3724.  
  3725.  o Creating a Customized Trace File 
  3726.  o Trace Generation Window 
  3727.  o Keys Help. 
  3728.  
  3729.  
  3730. ΓòÉΓòÉΓòÉ 14.4.2. Call Depth... Choice ΓòÉΓòÉΓòÉ
  3731.  
  3732. Select the Call depth... choice to set the nesting depth (the number of 
  3733. functions that are on the call stack) for each thread in your program. This 
  3734. choice is available from the Options menu on the Trace Generation window. 
  3735.  
  3736. You can select as many as 64 threads with a maximum nesting depth of 128 for 
  3737. each thread. The default is to have all threads selected with the maximum depth 
  3738. of 128. 
  3739.  
  3740. When you select Call depth, a Call Depth window appears. 
  3741.  
  3742. Related Information 
  3743.  
  3744.  o Creating a Customized Trace File 
  3745.  o Trace Generation Window 
  3746.  o Keys Help. 
  3747.  
  3748.  
  3749. ΓòÉΓòÉΓòÉ 14.4.2.1. Call Depth Window ΓòÉΓòÉΓòÉ
  3750.  
  3751. Use the Call Depth window to set the nesting depth for each thread in your 
  3752. program. This window appears when you select the Call depth... choice, which is 
  3753. available from the Options menu on the Trace Generation window. 
  3754.  
  3755. You can select as many as 64 threads with a maximum nesting depth of 128 for 
  3756. each thread. The default is to have all threads selected with the maximum depth 
  3757. of 128. 
  3758.  
  3759. Changing the Call Depth 
  3760.  
  3761. The Call Depth window displays 64 thread entry fields. 
  3762.  
  3763. To set call depth, use either of the following methods: 
  3764.  
  3765.   1. Method one 
  3766.  
  3767.      a) Select (or deselect) threads by clicking on them. 
  3768.  
  3769.      b) Click on the spin buttons next to the Set selected entry field until 
  3770.         the desired call depth is shown, or click in the entry field and type 
  3771.         the desired call depth. 
  3772.  
  3773.      c) Press the Set selected push button to change all selected threads to 
  3774.         the desired call depth. 
  3775.  
  3776.         Note:   To disable tracing of any event in a thread, set the call depth 
  3777.         of that thread to 0. 
  3778.  
  3779.      d) Select the appropriate push button to continue: 
  3780.  
  3781.        o OK 
  3782.        o Cancel 
  3783.        o Help. 
  3784.  
  3785.   2. Method two 
  3786.  
  3787.      a) Select a thread by double-clicking on it. A box appears around the 
  3788.         value in the Depth column of the selected thread. 
  3789.  
  3790.      b) Type the desired call depth. 
  3791.  
  3792.      c) Press Enter. 
  3793.  
  3794.      d) Repeat these steps for each thread you want to change. 
  3795.  
  3796.  Note:   The settings you enter are saved for the current session. If you want 
  3797.  to save the settings for subsequent sessions, select the Options menu and then 
  3798.  select the Save choice from the Settings cascaded menu. 
  3799.  
  3800.  Related Information 
  3801.  
  3802.  o Creating a Customized Trace File 
  3803.  o Trace Generation Window 
  3804.  o Keys Help. 
  3805.  
  3806.  
  3807. ΓòÉΓòÉΓòÉ 14.4.3. Font... Choice ΓòÉΓòÉΓòÉ
  3808.  
  3809. Select the Font... choice to change the font, font style, and font size for the 
  3810. text area on the Trace Generation window. This choice is available from the 
  3811. Options menu on the Trace Generation window. When you select this choice, the 
  3812. Font window appears. 
  3813.  
  3814. The Font window has the following areas: 
  3815.  
  3816.  Font entry field      Type a font name in this entry field or click on the 
  3817.                        scroll bar to see a list of choices and select a name 
  3818.                        from the list. 
  3819.  Font Style entry field Type a font style in this entry field or click on the 
  3820.                        scroll bar to see a list of choices and select a style 
  3821.                        from the list. 
  3822.  Size entry field      Type a font size in this entry field or click on the 
  3823.                        scroll bar to see a list of choices and select a size 
  3824.                        from the list. 
  3825.  Sample box            This box shows a sample of how text will appear with the 
  3826.                        settings you have selected. 
  3827.  OK push button        Changes the font according to the settings you selected. 
  3828.  Cancel push button    Closes the window without making changes. 
  3829.  
  3830.  Note:   The settings you enter are saved for the current session. If you want 
  3831.  to save the settings for subsequent sessions, select the Options menu and then 
  3832.  select the Save choice from the Settings cascaded menu. 
  3833.  
  3834.  Related Information 
  3835.  
  3836.  o Trace Generation Window 
  3837.  o Keys Help. 
  3838.  
  3839.  
  3840. ΓòÉΓòÉΓòÉ 14.4.4. Name Trace File... Choice ΓòÉΓòÉΓòÉ
  3841.  
  3842. Select the Name trace file choice to create a trace file with a name other than 
  3843. the default or to rename a trace file you are analyzing. This choice is 
  3844. available from the Options menu on the Trace Generation window. 
  3845.  
  3846. The default name for the trace file is myprog.trc, where myprog is the name of 
  3847. the program you are tracing. 
  3848.  
  3849. When you select Name trace file..., a Name Trace File window appears. On this 
  3850. window, you can also add or change a trace file description. 
  3851.  
  3852. Related Information 
  3853.  
  3854.  o Creating a Customized Trace File 
  3855.  o Trace Generation Window 
  3856.  o Keys Help. 
  3857.  
  3858.  
  3859. ΓòÉΓòÉΓòÉ 14.4.4.1. Name Trace File Window ΓòÉΓòÉΓòÉ
  3860.  
  3861. Use the Name Trace File window to give a trace file a different name and to 
  3862. attach a description to it. This window appears when you select the Name trace 
  3863. file... choice from the Options menu on the Trace Generation window. 
  3864.  
  3865. The default name for a trace file is myprog.trc, where myprog is the name of 
  3866. the program you are tracing. If you create more than one trace file from the 
  3867. same program, The Performance Analyzer uses the default naming convention and 
  3868. overwrites the previous trace file. 
  3869.  
  3870. This choice is useful when you want to save two or more trace files created 
  3871. from the same program. 
  3872.  
  3873. If you try to create a trace file with the same name as one that is currently 
  3874. displayed in a diagram, the Performance Analyzer allows you to display this 
  3875. window and name the new trace file. For more information, see Resolve Name 
  3876. Conflict Window. 
  3877.  
  3878. A description can make a trace file easier to identify, especially when you 
  3879. create more than one trace file from the same program and use different options 
  3880. for each trace. The description is displayed in the Status Area of any open 
  3881. diagram. 
  3882.  
  3883. Naming the Trace File and Adding a Description 
  3884.  
  3885. To name or change the name of a trace file and attach a description to it: 
  3886.  
  3887.   1. Type the new path, file name, and file extension in the Trace file entry 
  3888.      field. 
  3889.  
  3890.   2. Type a description for the trace file in the Description entry field. 
  3891.  
  3892.      Note:   This entry field is optional. 
  3893.  
  3894.   3. Select the appropriate push button to continue: 
  3895.  
  3896.     o OK 
  3897.     o Cancel 
  3898.     o Help. 
  3899.  
  3900.  Related Information 
  3901.  
  3902.  o Resolve Name Conflict Window 
  3903.  o Unique Trace File Name Choice 
  3904.  o Trace Generation Window 
  3905.  o Keys Help. 
  3906.  
  3907.  
  3908. ΓòÉΓòÉΓòÉ 14.4.5. Timeout Control... Choice ΓòÉΓòÉΓòÉ
  3909.  
  3910. Select the Timeout control... choice to specify the maximum number of seconds 
  3911. your program can run without logging events. This choice is available from the 
  3912. Options menu on the Trace Generation window. 
  3913.  
  3914. Use this choice when your program deadlocks to determine where the problem is 
  3915. located. 
  3916.  
  3917. When you select Timeout control..., a Timeout Control window appears. 
  3918.  
  3919. Related Information 
  3920.  
  3921.  o Creating a Customized Trace File 
  3922.  o Trace Generation Window 
  3923.  o Keys Help. 
  3924.  
  3925.  
  3926. ΓòÉΓòÉΓòÉ 14.4.5.1. Timeout Control Window ΓòÉΓòÉΓòÉ
  3927.  
  3928. Use the Timeout Control window to specify the maximum number of seconds your 
  3929. program can run without logging events. This window appears when you select the 
  3930. Timeout control... choice, which is available from the Options menu on the 
  3931. Trace Generation window. 
  3932.  
  3933. Use this choice when your program deadlocks to determine where the problem is 
  3934. located. 
  3935.  
  3936. Setting a Timeout 
  3937.  
  3938. To use the Timeout Control window: 
  3939.  
  3940.   1. Type a number from 0 to 3600 in the Number entry field or use the spin 
  3941.      buttons to scroll to the number of seconds you want. 
  3942.  
  3943.      Note:   A 0 in the Number entry field implies that there is not a maximum 
  3944.      limit. 
  3945.  
  3946.   2. Select the appropriate push button to continue: 
  3947.  
  3948.     o OK 
  3949.     o Cancel 
  3950.     o Help. 
  3951.  
  3952.  Note:   The settings you enter are saved for the current session. If you want 
  3953.  to save the settings for subsequent sessions, select the Options menu and then 
  3954.  select the Save choice from the Settings cascaded menu. 
  3955.  
  3956.  Related Information 
  3957.  
  3958.  o Analyze Trace Window 
  3959.  o Trace Generation Window 
  3960.  o Keys Help. 
  3961.  
  3962.  
  3963. ΓòÉΓòÉΓòÉ 14.4.6. Time Stamp Events Choice ΓòÉΓòÉΓòÉ
  3964.  
  3965. Select the Time stamp events choice to enable or disable time stamps. This 
  3966. choice is available from the Options menu on the Trace Generation window. 
  3967.  
  3968. To set time stamp events on: 
  3969.  
  3970.  o Select the Trace Generation window Options menu. 
  3971.  o Select the Time stamp events choice. A check mark is displayed next to the 
  3972.    choice to show that it is selected. 
  3973.  
  3974.  To set time stamp events off: 
  3975.  
  3976.  o Select the Trace Generation window Options menu. 
  3977.  o Select the Time stamp events choice. The check mark is removed to show that 
  3978.    the choice is not selected. 
  3979.  
  3980.  If you choose to disable time stamps, the Performance Analyzer produces a 
  3981.  smaller trace file and only the Statistics and Call Nesting diagrams and the 
  3982.  Dynamic Call Graph can be viewed. 
  3983.  
  3984.  The default is to have time stamps enabled. 
  3985.  
  3986.  Note:   The settings you enter are saved for the current session. If you want 
  3987.  to save the settings for subsequent sessions, select the Options menu and then 
  3988.  select the Save choice from the Settings cascaded menu. 
  3989.  
  3990.  Related Information 
  3991.  
  3992.  o Creating a Customized Trace File 
  3993.  o Trace Generation Window 
  3994.  o Keys Help. 
  3995.  
  3996.  
  3997. ΓòÉΓòÉΓòÉ 14.4.7. Settings Cascading Choice ΓòÉΓòÉΓòÉ
  3998.  
  3999. Select the Settings cascading choice to display a cascaded menu that lets you 
  4000. save settings or restore Analyzer default settings. This choice is available 
  4001. from the Options menu on the Trace Generation window. 
  4002.  
  4003. Related Information 
  4004.  
  4005.  o Trace Generation Window 
  4006.  o Keys Help. 
  4007.  
  4008.  
  4009. ΓòÉΓòÉΓòÉ 14.4.7.1. Save Choice ΓòÉΓòÉΓòÉ
  4010.  
  4011. Select the Save choice to save the current window settings for subsequent 
  4012. Performance Analyzer sessions. This choice is available from the Settings 
  4013. cascading choice, which is on the Options menu on the Trace Generation window. 
  4014.  
  4015. If you do not select this choice, settings remain active for the current 
  4016. session. If you select this choice, settings remain active for subsequent 
  4017. sessions because they are stored in the IPERF.INI file. The saved settings 
  4018. remain active until the IPERF.INI file is erased. 
  4019.  
  4020. The Performance Analyzer will save the following settings on the Trace 
  4021. Generation window: 
  4022.  
  4023.  o Buffer wrap 
  4024.  o Font 
  4025.  o Call depth 
  4026.  o Time stamp events 
  4027.  o Timeout control 
  4028.  o Traceable filter 
  4029.  o Tree lines 
  4030.  o Window position 
  4031.  o Window size 
  4032.  
  4033.  To restore the default settings, select the Restore Initial Defaults 
  4034.  
  4035.  Related Information 
  4036.  
  4037.  o Restore Initial Defaults Choice 
  4038.  o Trace Generation Window 
  4039.  o Keys Help. 
  4040.  
  4041.  
  4042. ΓòÉΓòÉΓòÉ 14.4.7.2. Restore Initial Defaults Choice ΓòÉΓòÉΓòÉ
  4043.  
  4044. Select the Restore Initial Defaults choice to restore the Performance Analyzer 
  4045. default settings for the Trace Generation window. This choice is available from 
  4046. the Settings cascading choice, which is on the Options menu on the Trace 
  4047. Generation window. 
  4048.  
  4049. Related Information 
  4050.  
  4051.  o Trace Generation Window 
  4052.  o Keys Help. 
  4053.  
  4054.  
  4055. ΓòÉΓòÉΓòÉ 14.5. Trace Generation Window Project Menu ΓòÉΓòÉΓòÉ
  4056.  
  4057. This menu appears on the Trace Generation window when you start the Performance 
  4058. Analyzer within the WorkFrame environment. The Project menu gives you direct 
  4059. access to all of the actions that you can perform from your current location. 
  4060.  
  4061. When you select the Edit source choice from this menu, the source file for a 
  4062. selected object file or function is displayed in WorkFrame's default editor. 
  4063.  
  4064. Related Information 
  4065.  
  4066.  o Edit Source Choice 
  4067.  o Search Paths Window 
  4068.  o Trace Generation Window 
  4069.  o Starting the Performance Analyzer from WorkFrame 
  4070.  o Keys Help. 
  4071.  
  4072.  
  4073. ΓòÉΓòÉΓòÉ 14.5.1. Edit Source Choice ΓòÉΓòÉΓòÉ
  4074.  
  4075. Select the Edit source choice to edit a source file in WorkFrame's default 
  4076. editor. This choice lets you edit the source for an object file or a function 
  4077. selected on the Trace Generation window. When you are working in the WorkFrame 
  4078. environment, this choice is available from the Project menu on the Trace 
  4079. Generation window. It is also available from the Object file pop-up menu and 
  4080. the Function pop-up menu on the Trace Generation window. 
  4081.  
  4082. To locate a source file for editing, the Performance Analyzer must first locate 
  4083. the executable containing the name of the source file. The Performance Analyzer 
  4084. searches the following paths (in the order listed) to locate an executable: 
  4085.  
  4086.   1. Path specified in the Locate Executable window 
  4087.   2. Path specified in the Search path for executable files entry field of the 
  4088.      Search Paths window 
  4089.   3. Directory where the executable to be traced is located 
  4090.   4. The current working directory 
  4091.   5. Path specified by the PATH environment variable. 
  4092.  
  4093.  To identify the name of the source file, the Performance Analyzer looks at the 
  4094.  debug information in the executable. The Performance Analyzer then searches 
  4095.  the following paths (in the order listed) to locate the source file: 
  4096.  
  4097.   1. Path specified in the Locate Source File window 
  4098.   2. Path specified in the Search path for source files entry field of the 
  4099.      Search Paths window 
  4100.   3. Path specified in the compile statement (if provided) 
  4101.   4. Directory where the executable to be traced is located 
  4102.   5. The current working directory 
  4103.   6. Path specified by the INCLUDE environment variable. 
  4104.  
  4105.  If, after searching these paths, the Performance Analyzer cannot find the: 
  4106.  
  4107.   1. Executable, it displays the Locate Executable window to let you enter the 
  4108.      path where the executable resides. 
  4109.   2. Source file, it displays the Locate Source File window to let you enter 
  4110.      the path where the source file resides. 
  4111.  
  4112.  If you are editing the source for: 
  4113.  
  4114.  o An object file, the source is opened to the first line of the file. 
  4115.  o A function, the source is opened to the first line of the function's code. 
  4116.  
  4117.  Notes: 
  4118.  
  4119.   1. The Performance Analyzer remembers the paths you enter in the Locate 
  4120.      Executable and Locate Source File windows and uses them to look for files 
  4121.      the next time you select the Edit source choice. 
  4122.   2. You can specify paths that you want the Performance Analyzer to use by 
  4123.      selecting the Search Paths choice in the Options menu on the Performance 
  4124.      Analyzer - Window Manager window. The paths you enter are automatically 
  4125.      saved for the current session. If you want to save the paths for 
  4126.      subsequent sessions, select the Options menu and then select the Save 
  4127.      choice from the Settings cascaded menu. 
  4128.  
  4129.  Related Information 
  4130.  
  4131.  o Locate Executable Window 
  4132.  o Locate Source File Window 
  4133.  o Search Paths Window 
  4134.  o Trace Generation Window 
  4135.  o Starting the Performance Analyzer from WorkFrame 
  4136.  o Keys Help. 
  4137.  
  4138.  
  4139. ΓòÉΓòÉΓòÉ 14.6. Trace Generation Window Help Menu ΓòÉΓòÉΓòÉ
  4140.  
  4141. Select choices from the Help menu to display the various types of Help 
  4142. information. 
  4143.  
  4144. The Help menu has the following choices: 
  4145.  
  4146.  Help index 
  4147.            Displays an index of Help topics. 
  4148.  
  4149.  General help 
  4150.            Displays Help for the active window. 
  4151.  
  4152.  Using help 
  4153.            Describes how to use Help. 
  4154.  
  4155.  How do I 
  4156.            Displays task Help. 
  4157.  
  4158.  VisualAge for C++ Help Menu Items 
  4159.            Launch the VisualAge for C++ documentation associated with the menu 
  4160.            choice. These choices are available when you start the Performance 
  4161.            Analyzer from WorkFrame. 
  4162.  
  4163.  Product information 
  4164.            Displays information about the Performance Analyzer. 
  4165.  
  4166.  Related Information 
  4167.  
  4168.  o Trace Generation Window 
  4169.  o Keys Help. 
  4170.  
  4171.  
  4172. ΓòÉΓòÉΓòÉ 14.6.1. Help Index Choice ΓòÉΓòÉΓòÉ
  4173.  
  4174. Select the Help index choice to display an alphabetical index of Performance 
  4175. Analyzer Help topics. This choice is available from the Help menu on the Trace 
  4176. Generation window. 
  4177.  
  4178. Use the Previous push button to return to the last topic you viewed. Use the 
  4179. Search... push button to locate topics in the index. Use the Print... push 
  4180. button to print a topic. 
  4181.  
  4182. Related Information 
  4183.  
  4184.  o Trace Generation Window 
  4185.  o Keys Help. 
  4186.  
  4187.  
  4188. ΓòÉΓòÉΓòÉ 14.6.2. General Help Choice ΓòÉΓòÉΓòÉ
  4189.  
  4190. Select the General help choice to display Help information for the active 
  4191. window. This choice is available from the Help menu on the Trace Generation 
  4192. window. 
  4193.  
  4194. The online Help panel displayed is the same panel that is displayed when you 
  4195. place your cursor inside the window and press F1. 
  4196.  
  4197. Related Information 
  4198.  
  4199.  o Trace Generation Window 
  4200.  o Keys Help. 
  4201.  
  4202.  
  4203. ΓòÉΓòÉΓòÉ 14.6.3. Using Help Choice ΓòÉΓòÉΓòÉ
  4204.  
  4205. Select the Using help choice for a description of how to use the Help facility. 
  4206. This choice is available from the Help menu on the Trace Generation window. 
  4207.  
  4208. Related Information 
  4209.  
  4210.  o Trace Generation Window 
  4211.  o Keys Help. 
  4212.  
  4213.  
  4214. ΓòÉΓòÉΓòÉ 14.6.4. How Do I Choice ΓòÉΓòÉΓòÉ
  4215.  
  4216. Select the How do I choice to display the Performance Analyzer task help. This 
  4217. choice is available from the Help menu on the Trace Generation window. 
  4218.  
  4219. Related Information 
  4220.  
  4221.  o Trace Generation Window 
  4222.  o Keys Help. 
  4223.  
  4224.  
  4225. ΓòÉΓòÉΓòÉ 14.6.5. Product Information Choice ΓòÉΓòÉΓòÉ
  4226.  
  4227. Select the Product information choice to display copyright and version 
  4228. information about the Performance Analyzer application. This choice is 
  4229. available from the Help menu on the Trace Generation window. 
  4230.  
  4231. Related Information 
  4232.  
  4233.  o Trace Generation Window 
  4234.  o Keys Help. 
  4235.  
  4236.  
  4237. ΓòÉΓòÉΓòÉ 14.7. Trace Generation Window Executable Pop-up Menu ΓòÉΓòÉΓòÉ
  4238.  
  4239. The Trace Generation window displays a list of component file names that make 
  4240. up your program. 
  4241.  
  4242. Click mouse button 2 on the file name or icon of an executable (EXE) or a 
  4243. dynamic link library (DLL) file to display the Executable pop-up menu. (If you 
  4244. click on the file name of a component other than an executable, the pop-up menu 
  4245. you see will be different.) 
  4246.  
  4247. The Trace Generation window Executable pop-up menu has the following choices: 
  4248.  
  4249.  Disable executable 
  4250.            Disables the selected executable file so that the Performance 
  4251.            Analyzer does not record trace analysis data for it in the trace 
  4252.            file. This choice is available when you select an enabled 
  4253.            executable. 
  4254.  Enable executable 
  4255.            Enables the selected executable file so that the Performance 
  4256.            Analyzer records trace analysis data for it in the trace file. This 
  4257.            choice is available when you select a disabled executable. 
  4258.  
  4259.  Related Information 
  4260.  
  4261.  o Introducing the Performance Analyzer 
  4262.  o Edit Menu 
  4263.  o Trace Generation Window 
  4264.  o Keys Help. 
  4265.  
  4266.  
  4267. ΓòÉΓòÉΓòÉ 14.8. Trace Generation Window Object File Pop-up Menu ΓòÉΓòÉΓòÉ
  4268.  
  4269. The Trace Generation window displays a list of component file names that make 
  4270. up your program, including those of object files. 
  4271.  
  4272. Click mouse button 2 on the file name of an object file (or the plus or minus 
  4273. icon next to it) to display the Object File pop-up menu. (If you click on the 
  4274. file name of a component other than an executable, the pop-up menu you see will 
  4275. be different.) 
  4276.  
  4277. The Trace Generation window Object File pop-up menu has the following choices: 
  4278.  
  4279.  Disable object file 
  4280.            Disables the selected object file so that the Performance Analyzer 
  4281.            does not record trace analysis data for it in the trace file. This 
  4282.            choice is available when you select an enabled object file. 
  4283.  Enable object file 
  4284.            Enables the selected object file so that the Performance Analyzer 
  4285.            records trace analysis data for it in the trace file. This choice is 
  4286.            available when you select a disabled object file. 
  4287.  Edit source 
  4288.            Displays the source file for a selected object file in WorkFrame's 
  4289.            default editor. The Performance Analyzer finds the source file and 
  4290.            opens it to the first line of the file. 
  4291.  
  4292.  Related Information 
  4293.  
  4294.  o Edit Menu 
  4295.  o Edit Source Choice 
  4296.  o Project Menu 
  4297.  o Trace Generation Window 
  4298.  o Starting the Performance Analyzer from WorkFrame 
  4299.  o Keys Help. 
  4300.  
  4301.  
  4302. ΓòÉΓòÉΓòÉ 14.9. Trace Generation Window Function Pop-up Menu ΓòÉΓòÉΓòÉ
  4303.  
  4304. The Trace Generation window displays a list of component file names that make 
  4305. up your program, including those of functions. 
  4306.  
  4307. Click mouse button 2 on the name of a function (or the plus or minus icon next 
  4308. to it) to display the Function pop-up menu. (If you click on the file name of a 
  4309. component other than an executable, the pop-up menu you see will be different.) 
  4310.  
  4311. The Trace Generation window Function pop-up menu has the following choices: 
  4312.  
  4313.  Disable function 
  4314.            Disables the selected function so that the Performance Analyzer does 
  4315.            not record trace analysis data for it in the trace file. This choice 
  4316.            is available when you select an enabled function. 
  4317.  
  4318.  Enable function 
  4319.            Enables the selected function so that the Performance Analyzer 
  4320.            records trace analysis data for it in the trace file. This choice is 
  4321.            available when you select a disabled function. 
  4322.  
  4323.  Set trigger 
  4324.            Sets a trigger on a function so that the Performance Analyzer traces 
  4325.            the function and its associated calls. This choice is available when 
  4326.            you select a function that does not have a trigger set on it. 
  4327.  
  4328.            Note:   If triggers have not been set, the Performance Analyzer 
  4329.            traces enabled executables, DLLs, object files, and functions (and 
  4330.            their associated calls). If triggers have been set, the Performance 
  4331.            Analyzer traces enabled executables, DLLs, and object files, but it 
  4332.            only traces functions (and their associated calls) on which triggers 
  4333.            have been set. 
  4334.  
  4335.  Remove trigger 
  4336.            Removes a trigger on a function. This choice is available when you 
  4337.            select a function that has a trigger set on it. 
  4338.  
  4339.            Note:   If triggers have not been set, the Performance Analyzer 
  4340.            traces enabled executables, DLLs, object files, and functions (and 
  4341.            their associated calls). If triggers have been set, the Performance 
  4342.            Analyzer traces enabled executables, DLLs, and object files, but it 
  4343.            only traces functions (and their associated calls) on which triggers 
  4344.            have been set. 
  4345.  
  4346.  Edit source 
  4347.            Displays the source file for a selected function in WorkFrame's 
  4348.            default editor. The Performance Analyzer finds the source file and 
  4349.            opens it to the line where the function begins. 
  4350.  
  4351.  Related Information 
  4352.  
  4353.  o Edit Menu 
  4354.  o Edit Source Choice 
  4355.  o Project Menu 
  4356.  o Trace Generation Window 
  4357.  o Starting the Performance Analyzer from WorkFrame 
  4358.  o Keys Help. 
  4359.  
  4360.  
  4361. ΓòÉΓòÉΓòÉ 14.10. Locate Executable Window ΓòÉΓòÉΓòÉ
  4362.  
  4363. When you select the Edit source choice (available when working in the WorkFrame 
  4364. environment), the Performance Analyzer must find the source file containing the 
  4365. code you want to edit before it can be displayed in the editor. 
  4366.  
  4367. When searching for a source file, the Performance Analyzer first looks for the 
  4368. executable containing the object file or function you want to edit. (You can 
  4369. select object files and functions for editing on the Trace Generation window. 
  4370. You can select functions for editing on any of the diagrams.) Then it looks at 
  4371. the debug information in the executable to identify the name of the source file 
  4372. containing the code you want to edit. 
  4373.  
  4374. The Performance Analyzer searches the following paths (in the order listed) 
  4375. when looking for an executable file: 
  4376.  
  4377.   1. Path specified in the Locate Executable window 
  4378.   2. Path specified in the Search path for executable files entry field of the 
  4379.      Search Paths window 
  4380.   3. Directory where the executable to be traced is located (if you selected 
  4381.      the Edit source choice from the Trace Generation window) or the directory 
  4382.      where the executable was located when the trace file was created (if you 
  4383.      selected the Edit function choice from one of the diagrams) 
  4384.   4. The current working directory 
  4385.   5. Path specified by the PATH environment variable. 
  4386.  
  4387.  The Locate Executable window is only displayed if the Performance Analyzer 
  4388.  cannot find the executable in any of these paths. 
  4389.  
  4390.  To use the Locate Executable window: 
  4391.  
  4392.   1. Enter the path name where the executable containing the source file is 
  4393.      located. 
  4394.  
  4395.      Note:   If you are not sure where the file is located, select the Find... 
  4396.      push button. 
  4397.  
  4398.   2. Select the appropriate push button to continue: 
  4399.  
  4400.     o OK 
  4401.     o Cancel 
  4402.     o Help 
  4403.  
  4404.  Notes: 
  4405.  
  4406.   1. The Performance Analyzer remembers the path you enter in the Locate 
  4407.      Executable window and uses it to look for files the next time you select 
  4408.      the Edit source choice. 
  4409.   2. Specify paths that you want the Performance Analyzer to use by selecting 
  4410.      the Search Paths choice in the Options menu on the Performance Analyzer - 
  4411.      Window Manager window. The paths you enter are automatically saved for the 
  4412.      current session. If you want to save the paths for subsequent sessions, 
  4413.      select the Options menu and then select the Save choice from the Settings 
  4414.      cascaded menu. 
  4415.  
  4416.  Related Information 
  4417.  
  4418.  o Edit Source Choice 
  4419.  o Locate Source File Window 
  4420.  o Search Paths Window 
  4421.  o Trace Generation Window 
  4422.  o Starting the Performance Analyzer from WorkFrame 
  4423.  o Keys Help. 
  4424.  
  4425.  
  4426. ΓòÉΓòÉΓòÉ 14.11. Locate Source File Window ΓòÉΓòÉΓòÉ
  4427.  
  4428. When you select the Edit source choice (available when working in the WorkFrame 
  4429. environment), the Performance Analyzer must find the source file containing the 
  4430. code you want to edit before it can be displayed in the editor. 
  4431.  
  4432. When searching for a source file, the Performance Analyzer first looks for the 
  4433. executable containing the object file or function you want to edit. Then it 
  4434. looks at the debug information in the executable to identify the name of the 
  4435. source file containing the code you want to edit. 
  4436.  
  4437. The Performance Analyzer searches the following paths (in the order listed) 
  4438. when looking for a source file: 
  4439.  
  4440.   1. Path specified in the Locate Source File window 
  4441.   2. Path specified in the Search path for source files entry field of the 
  4442.      Search Paths window 
  4443.   3. Path specified in the compile statement (if provided) 
  4444.   4. Directory where the executable to be traced is located (if you selected 
  4445.      the Edit source choice from the Trace Generation window) or the directory 
  4446.      where the executable was located when the trace file was created (if you 
  4447.      selected the Edit function choice from one of the diagrams) 
  4448.   5. The current working directory 
  4449.   6. Path specified by the INCLUDE environment variable. 
  4450.  
  4451.  The Locate Source File window is only displayed if the Performance Analyzer 
  4452.  cannot find the source file in any of these paths. 
  4453.  
  4454.  To use the Locate Source File window: 
  4455.  
  4456.   1. Enter the path name where the source file is located. 
  4457.  
  4458.      Note:   If you are not sure where the file is located, select the Find... 
  4459.      push button. 
  4460.  
  4461.   2. Select the appropriate push button to continue: 
  4462.  
  4463.     o OK 
  4464.     o Cancel 
  4465.     o Help 
  4466.  
  4467.  Notes: 
  4468.  
  4469.   1. The Performance Analyzer remembers the path you enter in the Locate Source 
  4470.      File window and uses it to look for files the next time you select the 
  4471.      Edit source choice. 
  4472.   2. Specify paths that you want the Performance Analyzer to use by selecting 
  4473.      the Search Paths choice in the Options menu on the Performance Analyzer - 
  4474.      Window Manager window. The paths you enter are automatically saved for the 
  4475.      current session. If you want to save the paths for subsequent sessions, 
  4476.      select the Options menu and then select the Save choice from the Settings 
  4477.      cascaded menu. 
  4478.  
  4479.  Related Information 
  4480.  
  4481.  o Edit Source Choice 
  4482.  o Locate Executable Window 
  4483.  o Search Paths Window 
  4484.  o Trace Generation Window 
  4485.  o Starting the Performance Analyzer from WorkFrame 
  4486.  o Keys Help. 
  4487.  
  4488.  
  4489. ΓòÉΓòÉΓòÉ 14.12. Resolve Name Conflict Window ΓòÉΓòÉΓòÉ
  4490.  
  4491. The Resolve Name Conflict window appears when you're trying to create a new 
  4492. trace file with the same name as one that is currently displayed in a diagram. 
  4493.  
  4494. To correct this problem, you can do any of the following: 
  4495.  
  4496.  o Give the trace file a different name. To do this: 
  4497.  
  4498.      1. Click on the Rename trace file push button. 
  4499.      2. Enter a different trace file name in the Name Trace File window. You 
  4500.         can also give the trace file a description that will make it easier to 
  4501.         identify. 
  4502.      3. Click on the OK push button. 
  4503.  
  4504.  o Overwrite the existing trace file by creating a new one. To do this: 
  4505.  
  4506.      1. Click on the Cancel push button to return to the Window Manager window. 
  4507.      2. Close the diagram or diagrams using the trace file you want to 
  4508.         recreate. 
  4509.      3. Create another trace file using the same executable file. 
  4510.  
  4511.  o Create another trace file using the same executable file, but with Unique 
  4512.    trace file name choice selected. To do this: 
  4513.  
  4514.      1. Click on the Cancel push button to return to the Window Manager window. 
  4515.      2. Select Unique trace file name from the Options menu on the Performance 
  4516.         Analyzer - Window Manager window. 
  4517.      3. Create another trace file using the same executable file. 
  4518.  
  4519.  
  4520. ΓòÉΓòÉΓòÉ 15. Application Monitor Window ΓòÉΓòÉΓòÉ
  4521.  
  4522. After you select the Trace push button (on the Trace Generation window) to 
  4523. start tracing your program, the Performance Analyzer displays the Application 
  4524. Monitor window. 
  4525.  
  4526. This window is displayed until your entire program has run or you select the 
  4527. Stop push button, which causes your program to stop running. When you stop the 
  4528. program, you also stop the collection of trace data. 
  4529.  
  4530. Areas of the Application Monitor Window 
  4531.  
  4532.  o Status Area 
  4533.  o Push Buttons 
  4534.  
  4535.     - Stop 
  4536.     - Trace on 
  4537.     - Trace off. 
  4538.  
  4539.  Note:   The Help push button displays this Help information. 
  4540.  
  4541.  Related Information 
  4542.  
  4543.  o Using the Analyze Trace Window 
  4544.  o Trace Generation Window 
  4545.  o Keys Help. 
  4546.  
  4547.  
  4548. ΓòÉΓòÉΓòÉ 15.1. Status Area ΓòÉΓòÉΓòÉ
  4549.  
  4550. The following information is displayed in the Status Area on the Application 
  4551. Monitor window: 
  4552.  
  4553.  o Name of the program being traced 
  4554.  o Name of the trace file 
  4555.  o Number of bytes written to the trace file 
  4556.  o Number of events written to the trace file 
  4557.  
  4558.  Related Information 
  4559.  
  4560.  o Trace Off Push Button 
  4561.  o Trace On Push Button 
  4562.  o Using the Analyze Trace Window 
  4563.  o Trace Generation Window 
  4564.  o Keys Help. 
  4565.  
  4566.  
  4567. ΓòÉΓòÉΓòÉ 16. Call Nesting Diagram ΓòÉΓòÉΓòÉ
  4568.  
  4569. The Call Nesting diagram shows the trace file as a vertical series of function 
  4570. calls and returns. Use this diagram to diagnose problems with critical 
  4571. sections, sequencing protocols, program deadlocks, program crashes, and thread 
  4572. delays. 
  4573.  
  4574. A call is shown as a step to the right and a return is shown as a line back to 
  4575. the left. The calls are labeled with the name of the function being called. 
  4576.  
  4577. Use the mouse to select a call, a return or a user event. (User events and 
  4578. annotations are text strings in the diagram.) When the call is selected, it is 
  4579. highlighted. 
  4580.  
  4581. Context switches between threads are shown by dashed horizontal lines. While 
  4582. the vertical lines do not show elapsed scaled times in this diagram, you can 
  4583. clearly see the flow of control and the interactions among the various threads. 
  4584.  
  4585. You can use this diagram to find where a deadlock occurred. 
  4586.  
  4587. Areas of the Call Nesting Window 
  4588.  
  4589.  o Menu Bar 
  4590.    The following choices are available from the Call Nesting diagram menu bar: 
  4591.  
  4592.     - Trace file 
  4593.     - Edit 
  4594.     - View 
  4595.     - Options 
  4596.     - Project 
  4597.     - Help 
  4598.  
  4599.  o Status Area 
  4600.    The Status Area provides information about the following: 
  4601.  
  4602.     - Trace description 
  4603.     - Filters 
  4604.  
  4605.  o Call Nesting Pop-up Menus 
  4606.  
  4607.     - Call Nesting Diagram Pop-up Menu 
  4608.     - Call Nesting Selected Item Pop-up Menu 
  4609.  
  4610.  Related Information 
  4611.  
  4612.  o Analyze Trace Window 
  4613.  o Dynamic Call Graph 
  4614.  o Execution Density Diagram 
  4615.  o Statistics Diagram 
  4616.  o Time Line Diagram 
  4617.  o Hints for Using the Performance Analyzer 
  4618.  o Keys Help. 
  4619.  
  4620.  
  4621. ΓòÉΓòÉΓòÉ 16.1. Call Nesting Trace File Menu ΓòÉΓòÉΓòÉ
  4622.  
  4623. The following choices are available from the Call Nesting Trace file menu: 
  4624.  
  4625.  Open as > 
  4626.            Shows a new or an additional diagram. 
  4627.  
  4628.  Printer settings... 
  4629.            Allows you to choose printer settings for your output. 
  4630.  
  4631.  Print selected region... 
  4632.            Prints a selected area of the diagram. 
  4633.  
  4634.  Window Manager 
  4635.            Displays the Window Manager. 
  4636.  
  4637.  Exit the Performance Analyzer 
  4638.            Exits the Performance Analyzer. 
  4639.  
  4640.  Related Information 
  4641.  
  4642.  o Analyze Trace Window 
  4643.  o Dynamic Call Graph 
  4644.  o Execution Density Diagram 
  4645.  o Statistics Diagram 
  4646.  o Time Line Diagram 
  4647.  o Keys Help. 
  4648.  
  4649.  
  4650. ΓòÉΓòÉΓòÉ 16.1.1. Open as Cascading Choice ΓòÉΓòÉΓòÉ
  4651.  
  4652. Select the Open as cascading choice to view another diagram. You can open as 
  4653. many new diagram windows as you want. 
  4654.  
  4655. To select a new diagram: 
  4656.  
  4657.   1. Select Open as from the Trace file menu. A cascaded menu is displayed with 
  4658.      the following choices: 
  4659.  
  4660.     Call Nesting 
  4661.     Dynamic Call Graph 
  4662.     Execution Density 
  4663.     Statistics 
  4664.     Time Line 
  4665.  
  4666.   2. Select the name of the diagram you want to view. A new window opens to 
  4667.      display the diagram you selected. 
  4668.  
  4669.  Related Information 
  4670.  
  4671.  o Dynamic Call Graph 
  4672.  o Execution Density Diagram 
  4673.  o Statistics Diagram 
  4674.  o Time Line Diagram 
  4675.  o Keys Help. 
  4676.  
  4677.  
  4678. ΓòÉΓòÉΓòÉ 16.1.1.1. Call Nesting Choice ΓòÉΓòÉΓòÉ
  4679.  
  4680. The Call Nesting choice is available from the Open as cascaded menu. When you 
  4681. select Call Nesting diagram, the Call Nesting diagram displays. 
  4682.  
  4683. Related Information 
  4684.  
  4685.  o Open As Choice 
  4686.  o Keys Help. 
  4687.  
  4688.  
  4689. ΓòÉΓòÉΓòÉ 16.1.1.2. Dynamic Call Graph Choice ΓòÉΓòÉΓòÉ
  4690.  
  4691. The Dynamic Call Graph choice is available from the Open as cascaded menu. When 
  4692. you select Dynamic Call Graph, the Dynamic Call Graph displays. 
  4693.  
  4694. Related Information 
  4695.  
  4696.  o Open As Choice 
  4697.  o Keys Help. 
  4698.  
  4699.  
  4700. ΓòÉΓòÉΓòÉ 16.1.1.3. Execution Density Choice ΓòÉΓòÉΓòÉ
  4701.  
  4702. The Execution Density choice is available from the Open as cascaded menu. When 
  4703. you select Execution Density, the Execution Density diagram displays. 
  4704.  
  4705. Related Information 
  4706.  
  4707.  o Open As Choice 
  4708.  o Keys Help. 
  4709.  
  4710.  
  4711. ΓòÉΓòÉΓòÉ 16.1.1.4. Statistics Choice ΓòÉΓòÉΓòÉ
  4712.  
  4713. The Statistics choice is available from the Open as cascaded menu. When you 
  4714. select Statistics, the Statistics diagram displays. 
  4715.  
  4716. Related Information 
  4717.  
  4718.  o Open As Choice 
  4719.  o Keys Help. 
  4720.  
  4721.  
  4722. ΓòÉΓòÉΓòÉ 16.1.1.5. Time Line Choice ΓòÉΓòÉΓòÉ
  4723.  
  4724. The Time Line choice is available from the Open as cascaded menu. When you 
  4725. select Time Line, the Time Line diagram displays. 
  4726.  
  4727. Related Information 
  4728.  
  4729.  o Open As Choice 
  4730.  o Keys Help. 
  4731.  
  4732.  
  4733. ΓòÉΓòÉΓòÉ 16.1.2. Printer Settings... Choice ΓòÉΓòÉΓòÉ
  4734.  
  4735. Select the Printer settings... choice to select settings for your print jobs. 
  4736.  
  4737. When you select the Printer settings... choice, the Printer Settings window 
  4738. appears. 
  4739.  
  4740.  o OK 
  4741.  o Font... 
  4742.  o Job properties... 
  4743.  o Cancel 
  4744.  o Help 
  4745.  
  4746.  Related Information 
  4747.  
  4748.  o Keys Help. 
  4749.  
  4750.  
  4751. ΓòÉΓòÉΓòÉ <hidden> Printer Settings Window ΓòÉΓòÉΓòÉ
  4752.  
  4753. The Printer Settings window allows you to choose which printer you want to use 
  4754. and how your output will be printed. This window displays a list of all 
  4755. printers installed on your system. You can select your choice by highlighting 
  4756. it. 
  4757.  
  4758. Select the Font push button to change the font of the print job. 
  4759.  
  4760. Note:   The Execution Density diagram does not have a Font push button. 
  4761.  
  4762. From the Font window, select the appropriate choices. 
  4763.  
  4764. Select the Job properties... push button for more detailed information about 
  4765. your print job. 
  4766.  
  4767. From the Job properties... window, select the appropriate push buttons and 
  4768. check boxes. Depending on your printer, you may be able to select the 
  4769. following: 
  4770.  
  4771.  o Orientation 
  4772.  o Form Configuration 
  4773.  o Select Form Source 
  4774.  o Select Form 
  4775.  o Default Font 
  4776.  o Resolution 
  4777.  o Performance Options 
  4778.  
  4779.  From the Printer Settings window, select the appropriate push button. 
  4780.  
  4781.  Related Information 
  4782.  
  4783.  o Keys Help. 
  4784.  
  4785.  
  4786. ΓòÉΓòÉΓòÉ 16.1.3. Print Selected Region... Choice ΓòÉΓòÉΓòÉ
  4787.  
  4788. Select the Print selected region... choice to print a selected area of the Call 
  4789. Nesting diagram. 
  4790.  
  4791. To print an area of the Call Nesting diagram, highlight the area and then 
  4792. select this choice from the Trace file menu. The Print Selected Region window 
  4793. appears. 
  4794.  
  4795. Related Information 
  4796.  
  4797.  o Keys Help. 
  4798.  
  4799.  
  4800. ΓòÉΓòÉΓòÉ <hidden> Print Selected Region Window ΓòÉΓòÉΓòÉ
  4801.  
  4802. The Print Selected Region window displays your printer and job name. Select the 
  4803. appropriate push button to continue. 
  4804.  
  4805. Click on the Print push button to accept the defaults. The diagram will print 
  4806. on the selected printer. 
  4807.  
  4808. Click on the Cancel push button to cancel the print request. 
  4809.  
  4810. Related Information 
  4811.  
  4812.  o Keys Help. 
  4813.  
  4814.  
  4815. ΓòÉΓòÉΓòÉ 16.1.4. Window Manager Choice ΓòÉΓòÉΓòÉ
  4816.  
  4817. Select the Window Manager choice to display the Window Manager window. 
  4818.  
  4819. Related Information 
  4820.  
  4821.  o Performance Analyzer - Window Manager 
  4822.  o Keys Help. 
  4823.  
  4824.  
  4825. ΓòÉΓòÉΓòÉ 16.1.5. Exit the Performance Analyzer Choice ΓòÉΓòÉΓòÉ
  4826.  
  4827. Select the Exit the Performance Analyzer choice from the Trace file menu to 
  4828. exit the application. 
  4829.  
  4830. Related Information 
  4831.  
  4832.  o Keys Help. 
  4833.  
  4834.  
  4835. ΓòÉΓòÉΓòÉ 16.2. Call Nesting Edit Menu ΓòÉΓòÉΓòÉ
  4836.  
  4837. The Edit menu allows you to locate and change text in the Call Nesting diagram. 
  4838.  
  4839. Items you can select from this menu include the following: 
  4840.  
  4841.  Find >                   Find a function call, function return, an annotation, 
  4842.                           or a user event. 
  4843.  Find next                Find the next occurrence of the last item you 
  4844.                           searched for. 
  4845.  Annotate...              Insert comments in your diagram. 
  4846.  Select time...           Go to a specific time in the diagram. 
  4847.  Select time range...     Select all events in a specified time range. 
  4848.  Select all               Select the entire Call Nesting diagram. 
  4849.  
  4850.  Related Information 
  4851.  
  4852.  o Dynamic Call Graph 
  4853.  o Execution Density Diagram 
  4854.  o Statistics Diagram 
  4855.  o Time Line Diagram 
  4856.  o Keys Help. 
  4857.  
  4858.  
  4859. ΓòÉΓòÉΓòÉ 16.2.1. Find Cascading Choice ΓòÉΓòÉΓòÉ
  4860.  
  4861. Select the Find > cascading choice to locate text. 
  4862.  
  4863. Items you can select from the cascaded menu include: 
  4864.  
  4865.  Function...  Locates the text of function calls and returns. 
  4866.  User event... Locates user events. 
  4867.  Annotation... Locates annotated text. 
  4868.  
  4869.  Related Information 
  4870.  
  4871.  o Keys Help. 
  4872.  
  4873.  
  4874. ΓòÉΓòÉΓòÉ 16.2.1.1. Function Choice ΓòÉΓòÉΓòÉ
  4875.  
  4876. Select the Function... choice to search for function calls and returns. 
  4877.  
  4878. When you select the Function... choice, the Find Function window appears. 
  4879.  
  4880. Related Information 
  4881.  
  4882.  o Keys Help. 
  4883.  
  4884.  
  4885. ΓòÉΓòÉΓòÉ 16.2.1.1.1. Find Function Window ΓòÉΓòÉΓòÉ
  4886.  
  4887. Use the Find Function window to search for a specific function in the Call 
  4888. Nesting diagram. You can choose to search when the function was called or 
  4889. returned. 
  4890.  
  4891. To search for a function call or return: 
  4892.  
  4893. Note:   The Performance Analyzer begins searching at any area that is 
  4894. highlighted and stops at the end of the diagram. To make sure the entire 
  4895. diagram is searched for a particular function, highlight an area at the top of 
  4896. the diagram before you start the search. 
  4897.  
  4898.   1. Select Find... from the Edit menu in the Call Nesting diagram. 
  4899.  
  4900.   2. Select Function... from the cascaded menu, and the Find Function window 
  4901.      appears. 
  4902.  
  4903.   3. Enter the function file name in the Find entry field. If you don't know 
  4904.      the function file name, you can use wildcard characters (* and ?) in the 
  4905.      entry field, as follows: 
  4906.  
  4907.     o Use an asterisk (*) to represent 0 or more arbitrary characters. For 
  4908.       example, enter: 
  4909.  
  4910.        - * to display a list of all function file names. 
  4911.        - b* to display all function file names, regardless of length, that 
  4912.          begin with the letter b. 
  4913.        - *b to display all function file names that end with the letter b. 
  4914.  
  4915.     o Use a question mark (?) to represent a single arbitrary character. For 
  4916.       example, enter ?b* to display all function file names that start with any 
  4917.       character and have the letter b as their second character. 
  4918.  
  4919.       Note:   Wildcards are especially useful when you are searching for a 
  4920.       fully qualified C++ function name (for example, 
  4921.       myClass::function[parameter] ). 
  4922.  
  4923.   4. Click on the Case sensitive check box if you want to enable case sensitive 
  4924.      searching. 
  4925.  
  4926.   5. Click on the OK push button. 
  4927.  
  4928.   6. Click on the name of a function in the list box. 
  4929.  
  4930.   7. Select the thread that you want searched. 
  4931.  
  4932.   8. Click on the appropriate radio button to search for occurrences of when 
  4933.      the function was: 
  4934.  
  4935.     o Called 
  4936.     o Returned 
  4937.     o Either called or returned. 
  4938.  
  4939.   9. Select the appropriate push button to continue: 
  4940.  
  4941.     o OK 
  4942.     o Cancel 
  4943.     o Help. 
  4944.  
  4945.      Note:   The function is highlighted when found. 
  4946.  
  4947.  Related Information 
  4948.  
  4949.  o Call Nesting Diagram 
  4950.  o Find Annotation Window 
  4951.  o Find User Event Window 
  4952.  o Keys Help. 
  4953.  
  4954.  
  4955. ΓòÉΓòÉΓòÉ 16.2.1.2. User Event Choice ΓòÉΓòÉΓòÉ
  4956.  
  4957. Select the User event choice to search for user events. 
  4958.  
  4959. When you select the User event choice, the Find User Event window appears. 
  4960.  
  4961. Related Information 
  4962.  
  4963.  o Keys Help. 
  4964.  
  4965.  
  4966. ΓòÉΓòÉΓòÉ <hidden> Find User Event Window ΓòÉΓòÉΓòÉ
  4967.  
  4968. Use the Find User Event... window to search for a specific user event. 
  4969.  
  4970. Note:   This choice is only available when there are user events in the trace 
  4971. file. 
  4972.  
  4973. Find User Event... 
  4974.  
  4975. To search for a user event : 
  4976.  
  4977. Note:   The Performance Analyzer begins searching at any area that is 
  4978. highlighted and stops at the end of the diagram. To make sure the entire 
  4979. diagram is searched for a particular user event, highlight an area at the top 
  4980. of the diagram before you start the search. 
  4981.  
  4982.   1. Select Find... from the Edit menu. 
  4983.  
  4984.   2. Select User event... from the cascaded menu, and the Find User Event 
  4985.      dialog appears. 
  4986.  
  4987.   3. Use the Find entry field and the Case sensitive check box to get a list of 
  4988.      user events. 
  4989.  
  4990.      Note:   If you don't know the entire string, you can enter an asterisk (*) 
  4991.      with a few characters of the string in the Find entry field. 
  4992.  
  4993.   4. Select a user event from the list box. 
  4994.  
  4995.   5. Select the appropriate push button to continue: 
  4996.  
  4997.     o OK 
  4998.     o Cancel 
  4999.     o Help. 
  5000.  
  5001.      Note:   The user event is highlighted when found. 
  5002.  
  5003.  Related Information 
  5004.  
  5005.  o Call Nesting Diagram 
  5006.  o Defining User Events and Creating Prototypes 
  5007.  o Find Function Window 
  5008.  o Find Annotation Window 
  5009.  o Keys Help. 
  5010.  
  5011.  
  5012. ΓòÉΓòÉΓòÉ 16.2.1.3. Annotation Choice ΓòÉΓòÉΓòÉ
  5013.  
  5014. Select the Annotation choice to search for annotations. 
  5015.  
  5016. When you select the Annotation choice, the Find Annotation window appears. 
  5017.  
  5018. Related Information 
  5019.  
  5020.  o Keys Help. 
  5021.  
  5022.  
  5023. ΓòÉΓòÉΓòÉ <hidden> Find Annotation Window ΓòÉΓòÉΓòÉ
  5024.  
  5025. Use the Find Annotation window to search for a specific annotation in the Call 
  5026. Nesting diagram. 
  5027.  
  5028. Find Annotation 
  5029.  
  5030. To search for an annotation: 
  5031.  
  5032. Note:   The Performance Analyzer begins searching at any area that is 
  5033. highlighted and stops at the end of the diagram. To make sure the entire 
  5034. diagram is searched for a particular annotation, highlight an area at the top 
  5035. of the diagram before you start the search. 
  5036.  
  5037.   1. Select Find... from the Edit menu in the Call Nesting diagram. 
  5038.  
  5039.   2. Select Annotation... from the cascaded menu, and the Find Annotation 
  5040.      window appears. 
  5041.  
  5042.   3. Follow the directions in the dialog window to get a list of all 
  5043.      annotations. 
  5044.  
  5045.      Note:   If you don't know the entire annotation, you can enter an asterisk 
  5046.      (*) with a few characters of the annotation in the Find entry field. 
  5047.  
  5048.   4. Select an annotation from the list box. 
  5049.  
  5050.   5. Select the appropriate push button to continue: 
  5051.  
  5052.     o OK 
  5053.     o Cancel 
  5054.     o Help 
  5055.  
  5056.      Note:   The annotated comment is highlighted when found. 
  5057.  
  5058.  Related Information 
  5059.  
  5060.  o Call Nesting Diagram 
  5061.  o Find Function Window 
  5062.  o Find User Event Window 
  5063.  o Keys Help. 
  5064.  
  5065.  
  5066. ΓòÉΓòÉΓòÉ 16.2.2. Find Next Choice ΓòÉΓòÉΓòÉ
  5067.  
  5068. Select the Find next choice to locate the next instance of the searched text. 
  5069.  
  5070. To find the next occurrence, select Find next from the Edit menu. Press the 
  5071. Enter key to start the search. The string is highlighted when found. A message 
  5072. box appears if the string cannot be found. 
  5073.  
  5074. Related Information 
  5075.  
  5076.  o Call Nesting Diagram Pop-up Menu 
  5077.  o Find Function Window 
  5078.  o Find User Event Window 
  5079.  o Find Annotation Window 
  5080.  o Keys Help. 
  5081.  
  5082.  
  5083. ΓòÉΓòÉΓòÉ 16.2.3. Annotate... Choice ΓòÉΓòÉΓòÉ
  5084.  
  5085. Select the Annotate... choice to add notes that will appear on the screen, or 
  5086. to change or delete existing annotated text. The annotated comments that are 
  5087. added to the diagram are saved, and will appear on the screen to the right of 
  5088. the function name. 
  5089.  
  5090. When you select the Annotate... choice, an Annotate window appears. 
  5091.  
  5092. Related Information 
  5093.  
  5094.  o Call Nesting Selected Item Pop-up Menu 
  5095.  o Keys Help. 
  5096.  
  5097.  
  5098. ΓòÉΓòÉΓòÉ <hidden> Annotate Window ΓòÉΓòÉΓòÉ
  5099.  
  5100. Use the Annotate window to add annotated comments to the Call Nesting diagram. 
  5101. The Performance Analyzer saves the comments to the trace file so you can see 
  5102. the comments later. 
  5103.  
  5104. Adding Annotated Comments 
  5105.  
  5106. To add an annotated comment to the diagram: 
  5107.  
  5108.   1. Click on the function where you want to add the comment. 
  5109.  
  5110.   2. Select the Annotation choice from the Edit menu. 
  5111.  
  5112.   3. Type the comment in the window. The comment is limited to 64 characters. 
  5113.  
  5114.   4. Select the appropriate push button to continue: 
  5115.  
  5116.     o Add/Change 
  5117.     o Remove 
  5118.     o Cancel 
  5119.     o Help. 
  5120.  
  5121.  Deleting Annotated Comments 
  5122.  
  5123.  To delete an annotated comment: 
  5124.  
  5125.   1. Click on the comment you want to remove. 
  5126.  
  5127.   2. Select Annotate... from the Edit menu. 
  5128.  
  5129.   3. Remove the comment. 
  5130.  
  5131.  Related Information 
  5132.  
  5133.  o Find Annotation Window 
  5134.  o Defining User Events 
  5135.  o Call Nesting Selected Item Pop-up Menu 
  5136.  o Keys Help. 
  5137.  
  5138.  
  5139. ΓòÉΓòÉΓòÉ 16.2.4. Select Time... Choice ΓòÉΓòÉΓòÉ
  5140.  
  5141. Select the Select time... choice to scroll and select highlighted functions 
  5142. occurring at a specified time. 
  5143.  
  5144. Select the Select time... choice to go to a specific time in the diagram. When 
  5145. you select Select time..., the Select Time window appears. 
  5146.  
  5147. Related Information 
  5148.  
  5149.  o Keys Help. 
  5150.  
  5151.  
  5152. ΓòÉΓòÉΓòÉ 16.2.4.1. Select Time Window ΓòÉΓòÉΓòÉ
  5153.  
  5154. Use the Select Time window to go to a specific time in the diagram. 
  5155.  
  5156. Going to a Specific Time 
  5157.  
  5158. To select the time: 
  5159.  
  5160.   1. Select the appropriate radio button: 
  5161.  
  5162.     o Seconds (s) 
  5163.     o Milliseconds (ms) 
  5164.     o Microseconds (us) 
  5165.  
  5166.   2. Use the spin buttons to select the time you want to display. 
  5167.  
  5168.   3. Select the appropriate push button to continue: 
  5169.  
  5170.     o OK 
  5171.     o Cancel 
  5172.     o Help. 
  5173.  
  5174.  Related Information 
  5175.  
  5176.  o Select Time Range Window 
  5177.  o Keys Help. 
  5178.  
  5179.  
  5180. ΓòÉΓòÉΓòÉ 16.2.5. Select Time Range... Choice ΓòÉΓòÉΓòÉ
  5181.  
  5182. Select the Select time range... choice to scroll to all highlighted functions. 
  5183.  
  5184. Select the Select time range... choice to chose a specific period of time to 
  5185. view. When you select the Select time range... choice, the Select Time Range 
  5186. window appears. 
  5187.  
  5188. Related Information 
  5189.  
  5190.  o Keys Help. 
  5191.  
  5192.  
  5193. ΓòÉΓòÉΓòÉ 16.2.5.1. Select Time Range Window ΓòÉΓòÉΓòÉ
  5194.  
  5195. Use the Select Time Range window to view a specific period of time. The Select 
  5196. Time Range window shows you a range of time. 
  5197.  
  5198. Selecting Time Periods 
  5199.  
  5200. To select the time period: 
  5201.  
  5202.   1. In the Start time list box, use the spin buttons to select the start time 
  5203.      you want to highlight. 
  5204.  
  5205.   2. To select the time, select the appropriate radio button: 
  5206.  
  5207.     o seconds (s), 
  5208.     o milliseconds (ms), 
  5209.     o microseconds (us). 
  5210.  
  5211.   3. In the End time list box, use the spin buttons to select the end time, 
  5212.      where the highlight will stop. 
  5213.  
  5214.   4. To select the time, select the appropriate radio button: 
  5215.  
  5216.     o seconds (s), 
  5217.     o milliseconds (ms), 
  5218.     o microseconds (us). 
  5219.  
  5220.   5. Select the appropriate push button to continue: 
  5221.  
  5222.     o OK 
  5223.     o Cancel 
  5224.     o Help. 
  5225.  
  5226.  Related Information 
  5227.  
  5228.  o Keys Help. 
  5229.  
  5230.  
  5231. ΓòÉΓòÉΓòÉ 16.2.6. Select All Choice ΓòÉΓòÉΓòÉ
  5232.  
  5233. Select the Select all... choice to select and highlight all functions. 
  5234.  
  5235. Select the Select all choice to highlight the entire diagram. To remove the 
  5236. highlighting, select a specific function. 
  5237.  
  5238. Related Information 
  5239.  
  5240.  o Keys Help. 
  5241.  
  5242.  
  5243. ΓòÉΓòÉΓòÉ 16.3. Call Nesting View Menu ΓòÉΓòÉΓòÉ
  5244.  
  5245. The View menu allows you to change displayed information. 
  5246.  
  5247. Items you can select from this menu include the following: 
  5248.  
  5249.  Include functions... 
  5250.            Controls which functions are included in the diagram. Each selected 
  5251.            function and any functions in its call chain will be shown. 
  5252.  
  5253.  Include threads.... 
  5254.            Controls which threads are included in the diagram and lets you 
  5255.            select Pattern Recognition. 
  5256.  
  5257.  Related Information 
  5258.  
  5259.  o Dynamic Call Graph 
  5260.  o Execution Density Diagram 
  5261.  o Statistics Diagram 
  5262.  o Time Line Diagram 
  5263.  o Keys Help. 
  5264.  
  5265.  
  5266. ΓòÉΓòÉΓòÉ 16.3.1. Include Functions... Choice ΓòÉΓòÉΓòÉ
  5267.  
  5268. Select the Include functions... choice to list all the functions in the trace 
  5269. file and select one or more for viewing. 
  5270.  
  5271. Note:   Any items on the call stack that lead to the selected function will 
  5272.         also be displayed. 
  5273.  
  5274.  When you select Include functions..., the Include Functions window is 
  5275.  displayed. 
  5276.  
  5277.  Related Information 
  5278.  
  5279.  o Call Nesting Diagram Pop-up Menu 
  5280.  o Keys Help. 
  5281.  
  5282.  
  5283. ΓòÉΓòÉΓòÉ 16.3.1.1. Include Functions Window ΓòÉΓòÉΓòÉ
  5284.  
  5285. Use the Include Functions window to isolate specific functions or view all 
  5286. functions. This window filters the trace file allowing you to isolate specific 
  5287. areas of interest or areas where problems are occurring. 
  5288.  
  5289. Each selected function and any functions in its call chain will be shown. 
  5290.  
  5291. Isolating Specific Functions 
  5292.  
  5293. To include functions: 
  5294.  
  5295.   1. Scroll the list to find the function or functions you want displayed. 
  5296.  
  5297.   2. Highlight each function you want displayed. 
  5298.  
  5299.   3. Select the appropriate push button to continue: 
  5300.  
  5301.     o OK 
  5302.     o Cancel 
  5303.     o Help 
  5304.  
  5305.  Note:   All calls which called the selected function are also displayed. 
  5306.  
  5307.  Viewing All Functions 
  5308.  
  5309.   1. To select all functions, select the Select all push button. 
  5310.  
  5311.   2. Select the appropriate push button to continue: 
  5312.  
  5313.     o OK 
  5314.     o Cancel 
  5315.     o Help 
  5316.  
  5317.  Viewing A Specific Function 
  5318.  
  5319.   1. To select a specific function, select the Deselect all push button. 
  5320.  
  5321.   2. Select a specific function. 
  5322.  
  5323.   3. Select the appropriate push button to continue: 
  5324.  
  5325.     o OK 
  5326.     o Cancel 
  5327.     o Help 
  5328.  
  5329.  Related Information 
  5330.  
  5331.  o Call Nesting Diagram Pop-up Menu 
  5332.  o Keys Help. 
  5333.  
  5334.  
  5335. ΓòÉΓòÉΓòÉ 16.3.2. Include Threads... Choice ΓòÉΓòÉΓòÉ
  5336.  
  5337. Select the Include threads... choice to select which threads are displayed in 
  5338. the diagram and to select Pattern Recognition. 
  5339.  
  5340. Use the Include threads... choice to filter the trace file, which allows you to 
  5341. isolate specific areas of interest or areas where problems are occurring. 
  5342.  
  5343. When you select Include threads..., the Include Threads window is displayed. 
  5344.  
  5345. Related Information 
  5346.  
  5347.  o Call Nesting Diagram Pop-up Menu 
  5348.  o Keys Help. 
  5349.  
  5350.  
  5351. ΓòÉΓòÉΓòÉ 16.3.2.1. Include Threads Window ΓòÉΓòÉΓòÉ
  5352.  
  5353. Use the Include Threads window to select or isolate specific threads, and to 
  5354. enable and display specific pattern recognitions in the Call Nesting diagram. 
  5355.  
  5356. Use the mouse to highlight your thread selection. You can choose a particular 
  5357. thread or all threads. 
  5358.  
  5359. Select Options > Color... to see the range of execution times represented by 
  5360. the colors of the lines in the diagram. 
  5361.  
  5362. You can also enable Use pattern recognition from this window. Pattern 
  5363. recognition looks at a single thread and finds patterns of calls and returns. 
  5364. When this choice is enabled, the Call Nesting diagram displays these patterns 
  5365. as a curved arc and the number of repetitions is on the right. 
  5366.  
  5367. Note:   Use pattern recognition can only be enabled when a single thread 
  5368. pattern is displayed. When Use pattern recognition is enabled, the Call Nesting 
  5369. diagram will not display annotations. 
  5370.  
  5371. Selecting Specific Threads 
  5372.  
  5373. To select a specific threads: 
  5374.  
  5375.   1. Select the specific threads you want to display. 
  5376.  
  5377.   2. Select the appropriate push button to continue: 
  5378.  
  5379.     o OK 
  5380.     o Cancel 
  5381.     o Help. 
  5382.  
  5383.  Displaying Patterns 
  5384.  
  5385.  To display the patterns for a thread: 
  5386.  
  5387.   1. Select the specific threads you want to display. 
  5388.  
  5389.   2. Select the pattern recognition check box. 
  5390.  
  5391.   3. Select the appropriate push button to continue: 
  5392.  
  5393.     o OK 
  5394.     o Cancel 
  5395.     o Help. 
  5396.  
  5397.  Selecting All Threads 
  5398.  
  5399.  To select all threads: 
  5400.  
  5401.   1. Highlight All threads to select all threads. 
  5402.  
  5403.   2. Select the appropriate push button to continue: 
  5404.  
  5405.     o OK 
  5406.     o Cancel 
  5407.     o Help 
  5408.  
  5409.  Related Information 
  5410.  
  5411.  o Call Nesting Diagram Pop-up Menu 
  5412.  o Keys Help. 
  5413.  
  5414.  
  5415. ΓòÉΓòÉΓòÉ 16.4. Call Nesting Options Menu ΓòÉΓòÉΓòÉ
  5416.  
  5417. The Options menu allows you to customize the Call Nesting diagram and display 
  5418. additional information. 
  5419.  
  5420. The following choices are available from the Options menu: 
  5421.  
  5422.  Call stack...            Displays all the functions currently on the call 
  5423.                           stack from a selected point. 
  5424.  Correlation...           Synchronizes other diagrams to display the same 
  5425.                           highlighted region. 
  5426.  Font...                  Selects the font, font style, and font size for the 
  5427.                           function names. 
  5428.  Thread layout...         Selects the indentation amount for each thread column 
  5429.                           and draws separator bars between threads. 
  5430.  Status area...           Area at top of window that describes the diagram. You 
  5431.                           can select which items will appear in the Status 
  5432.                           Area. 
  5433.  Tool bar >               Use the tool bar for a shortcut to other menus. 
  5434.  Settings >               Select to save the current settings or restore the 
  5435.                           original settings. 
  5436.  
  5437.  Related Information 
  5438.  
  5439.  o Dynamic Call Graph 
  5440.  o Execution Density Diagram 
  5441.  o Statistics Diagram 
  5442.  o Time Line Diagram 
  5443.  o Call Nesting Diagram Pop-up Menu 
  5444.  o Call Nesting Selected Item Pop-up Menu 
  5445.  o Keys Help. 
  5446.  
  5447.  
  5448. ΓòÉΓòÉΓòÉ 16.4.1. Call Stack... Choice ΓòÉΓòÉΓòÉ
  5449.  
  5450. Select the Call stack... choice to display the hierarchy of function calls in a 
  5451. thread. 
  5452.  
  5453. When you select the Call stack... choice, a Call Stack window appears. 
  5454.  
  5455. Related Information 
  5456.  
  5457.  o Call Nesting Selected Item Pop-up Menu 
  5458.  o Keys Help. 
  5459.  
  5460.  
  5461. ΓòÉΓòÉΓòÉ <hidden> Call Stack Window ΓòÉΓòÉΓòÉ
  5462.  
  5463. Select the Call Stack window to display the order in which the functions were 
  5464. called at a selected point. 
  5465.  
  5466. Displaying the Call Stack 
  5467.  
  5468. To display a call stack for a function: 
  5469.  
  5470.   1. Click on a function to select it. 
  5471.  
  5472.   2. Select Call stack from the Options menu. A Call Stack window appears with 
  5473.      the function you selected and its parents (called functions) in the order 
  5474.      in which they were called. 
  5475.  
  5476.   3. Select the appropriate push button to continue: 
  5477.  
  5478.     o OK 
  5479.     o Help. 
  5480.  
  5481.  Related Information 
  5482.  
  5483.  o Call Nesting Diagram 
  5484.  o Call Nesting Selected Item Pop-up Menu 
  5485.  o Keys Help. 
  5486.  
  5487.  
  5488. ΓòÉΓòÉΓòÉ 16.4.2. Correlation... Choice ΓòÉΓòÉΓòÉ
  5489.  
  5490. Select the Correlation... choice to show the location of a particular function 
  5491. in the Call Nesting window with other available views. 
  5492.  
  5493. When you select the Correlation... choice, the Correlation window appears. 
  5494.  
  5495. Related Information 
  5496.  
  5497.  o Call Nesting Selected Item Pop-up Menu 
  5498.  o Keys Help. 
  5499.  
  5500.  
  5501. ΓòÉΓòÉΓòÉ 16.4.3. Font... Choice ΓòÉΓòÉΓòÉ
  5502.  
  5503. Select the Font... choice to change the font, font style, and font size for the 
  5504. text area of the Call Nesting window. This choice is available from the Options 
  5505. menu of the Call Nesting window. 
  5506.  
  5507. When you select the Font... choice, the Font window appears. 
  5508.  
  5509. The Font window has the following areas: 
  5510.  
  5511.  Font entry field    Type a font name in this entry field or click on the 
  5512.                      scroll bar to see a list of choices and select a name from 
  5513.                      the list. 
  5514.  Font Style entry field Type a font style in this entry field or click on the 
  5515.                      scroll bar to see a list of choices and select a style 
  5516.                      from the list. 
  5517.  Size entry field    Type a font size in this entry field or click on the 
  5518.                      scroll bar to see a list of choices and select a size from 
  5519.                      the list. 
  5520.  Sample box          This box shows a sample of how text will appear with the 
  5521.                      settings you have selected. 
  5522.  OK push button      Changes the font according to the settings you selected. 
  5523.  Cancel push button  Closes the window without making changes. 
  5524.  
  5525.  Related Information 
  5526.  
  5527.  o Call Nesting Diagram Pop-up Menu 
  5528.  o Keys Help. 
  5529.  
  5530.  
  5531. ΓòÉΓòÉΓòÉ <hidden> Correlation Window ΓòÉΓòÉΓòÉ
  5532.  
  5533. Use the Correlation window to mark a point in time in a chronologically-scaled 
  5534. diagram, such as the Call Nesting diagram, Execution Density diagram, or Time 
  5535. Line diagram, and then find that same point in another chronologically-scaled 
  5536. diagram. 
  5537.  
  5538. To correlate two or more diagrams using the Correlation... choice: 
  5539.  
  5540.   1. Open your trace file in a diagram that has correlation capability (Call 
  5541.      Nesting, Execution Density, or Time Line). 
  5542.  
  5543.   2. Open at least one other window with a different diagram or the same 
  5544.      diagram at a different scale. (You can change a diagram's scale by 
  5545.      selecting the Zoom in or Zoom out choice.) 
  5546.  
  5547.   3. Highlight the area between the events of interest in one of the diagrams. 
  5548.      To highlight an area: 
  5549.  
  5550.      a) Click and hold mouse button 1 on the first event. 
  5551.  
  5552.      b) While holding mouse button 1, drag the pointer to the last event. 
  5553.  
  5554.      c) Release the mouse button. 
  5555.  
  5556.   4. Select Correlation... from the Options menu. The Correlation window 
  5557.      appears. 
  5558.  
  5559.   5. Select the name of each diagram you want to correlate. 
  5560.  
  5561.   6. Select the appropriate push button to continue: 
  5562.  
  5563.     o OK 
  5564.     o Select all 
  5565.     o Deselect all 
  5566.     o Cancel 
  5567.     o Help. 
  5568.  
  5569.      When you select the OK push button, the Performance Analyzer highlights 
  5570.      correlated points in the selected diagrams. 
  5571.  
  5572.  Related Information 
  5573.  
  5574.  o Zoom In Choice 
  5575.  o Zoom Out Choice 
  5576.  o Call Nesting Diagram 
  5577.  o Call Nesting Diagram Pop-up Menu 
  5578.  o Execution Density Diagram 
  5579.  o Time Line Diagram 
  5580.  o Keys Help. 
  5581.  
  5582.  
  5583. ΓòÉΓòÉΓòÉ 16.4.4. Thread layout... Choice ΓòÉΓòÉΓòÉ
  5584.  
  5585. Select the Thread layout... choice to arrange the starting placement of 
  5586. multiple threads within the Call Nesting window. 
  5587.  
  5588. When you select Thread layout..., a Thread Layout window appears. 
  5589.  
  5590. Related Information 
  5591.  
  5592.  o Call Nesting Diagram Pop-up Menu 
  5593.  o Keys Help. 
  5594.  
  5595.  
  5596. ΓòÉΓòÉΓòÉ 16.4.4.1. Thread Layout Window ΓòÉΓòÉΓòÉ
  5597.  
  5598. Use the Thread Layout window to control the thread indentation and to control 
  5599. whether separator bars are drawn between the threads. 
  5600.  
  5601. Controlling Indentation and Separator Bars 
  5602.  
  5603. To use the Thread Layout window: 
  5604.  
  5605.   1. Select the spin buttons in the Indents per thread entry field until the 
  5606.      value you want displays. 
  5607.  
  5608.   2. Select the check box to draw separator lines between the threads. A check 
  5609.      mark in the box indicates to draw separator bars and an empty box 
  5610.      indicates not to draw the separator bars. 
  5611.  
  5612.   3. Select the appropriate push button to continue: 
  5613.  
  5614.     o OK 
  5615.     o Apply 
  5616.     o Cancel 
  5617.     o Help. 
  5618.  
  5619.  Related Information 
  5620.  
  5621.  o Call Nesting Diagram 
  5622.  o Time Line Diagram 
  5623.  o Call Nesting Diagram Pop-up Menu 
  5624.  o Keys Help. 
  5625.  
  5626.  
  5627. ΓòÉΓòÉΓòÉ 16.4.5. Status Area... Choice ΓòÉΓòÉΓòÉ
  5628.  
  5629. The Status Area, located at the top of the window, describes the settings of 
  5630. the diagram. 
  5631.  
  5632. Select the Status area... choice to change what appears in the area at the top 
  5633. of the Call Nesting window. 
  5634.  
  5635. You can select Status area from the Options menu and a Status Area 
  5636.  
  5637. When you select the Status area... choice, the Status Area window. appears. 
  5638.  
  5639. Related Information 
  5640.  
  5641.  o Keys Help. 
  5642.  
  5643.  
  5644. ΓòÉΓòÉΓòÉ <hidden> Call Nesting Status Area Window ΓòÉΓòÉΓòÉ
  5645.  
  5646. Use the Status Area window to control the area at the top of the window. 
  5647.  
  5648. The check boxes represent the choices in the Status Area that you can show or 
  5649. hide. When you disable the check box the choice is hidden. Likewise, when you 
  5650. enable the check box the choice displays in the Status Area. 
  5651.  
  5652. In each diagram, the Status Area displays different information. When you 
  5653. select the Status Area window, the choices in the window change based upon the 
  5654. Status Area of the diagram. 
  5655.  
  5656. Choices from the Call Nesting Status Area window include: 
  5657.  
  5658.  o Trace Description 
  5659.  o Filters 
  5660.  
  5661.  Select the appropriate check box to continue. 
  5662.  
  5663.  Related Information 
  5664.  
  5665.  o Dynamic Call Graph Status Area Window 
  5666.  o Execution Density Status Area Window 
  5667.  o Status Area Window 
  5668.  o Keys Help. 
  5669.  
  5670.  
  5671. ΓòÉΓòÉΓòÉ 16.4.6. Tool Bar Cascading Choice ΓòÉΓòÉΓòÉ
  5672.  
  5673. Select the Tool bar cascading choice to have the tool bar display or not 
  5674. display in your window, and to enable and disable Hover help. 
  5675.  
  5676. The choices from the Tool bar cascaded menu are: 
  5677.  
  5678.  Show      Choose to either show or hide the tool bar. 
  5679.  Hover help Choose to either enable or disable displaying the help text when 
  5680.            the mouse pointer hovers over the tool bar buttons. 
  5681.  
  5682.  Related Information 
  5683.  
  5684.  o Keys Help. 
  5685.  
  5686.  
  5687. ΓòÉΓòÉΓòÉ 16.4.6.1. Tool Bar Show Choice ΓòÉΓòÉΓòÉ
  5688.  
  5689. Select the Show choice from the Tool bar cascaded menu to show the tool bar in 
  5690. your window. When the Show choice is enabled, a check mark will appear beside 
  5691. the choice. 
  5692.  
  5693. Select the Show choice again to remove the check mark and the Tool bar choice 
  5694. will be disabled. 
  5695.  
  5696. Related Information 
  5697.  
  5698.  o Tool Bar Hover Help Choice 
  5699.  o Keys Help. 
  5700.  
  5701.  
  5702. ΓòÉΓòÉΓòÉ 16.4.6.2. Tool Bar Hover Help Choice ΓòÉΓòÉΓòÉ
  5703.  
  5704. Select the Hover help choice from the Tool bar cascaded menu to display the 
  5705. name of the tool bar function it represents when you position the mouse pointer 
  5706. over the buttons. When the Hover help choice is enabled, a check mark will 
  5707. appear beside the choice. 
  5708.  
  5709. Select the Hover help choice again to remove the check mark and the Hover help 
  5710. choice will be disabled. 
  5711.  
  5712. Related Information 
  5713.  
  5714.  o Tool Bar Show Choice 
  5715.  o Keys Help. 
  5716.  
  5717.  
  5718. ΓòÉΓòÉΓòÉ 16.4.7. Settings Cascading Choice ΓòÉΓòÉΓòÉ
  5719.  
  5720. Select the Settings cascading choice to save changes made to the Call Nesting 
  5721. window or to restore the defaults. 
  5722.  
  5723. The choices from the Settings cascaded menu are: 
  5724.  
  5725.  Save      Saves the current session settings. 
  5726.  Restore initial defaults Restores the original settings. 
  5727.  
  5728.  Related Information 
  5729.  
  5730.  o Save Choice 
  5731.  o Restore Initial Defaults Choice 
  5732.  o Keys Help. 
  5733.  
  5734.  
  5735. ΓòÉΓòÉΓòÉ 16.4.7.1. Save Choice ΓòÉΓòÉΓòÉ
  5736.  
  5737. Select the Save choice to save the current settings. These settings are stored 
  5738. in the IPERF.INI file and remain active until that file is erased. 
  5739.  
  5740. To restore the default settings, select the Restore defaults choice. 
  5741.  
  5742. Related Information 
  5743.  
  5744.  o Restore Initial Defaults Choice 
  5745.  o Keys Help. 
  5746.  
  5747.  
  5748. ΓòÉΓòÉΓòÉ 16.4.7.2. Restore Initial Defaults Choice ΓòÉΓòÉΓòÉ
  5749.  
  5750. Select the Restore initial defaults choice to change to the original or default 
  5751. settings. You can select the Save choice to save settings. 
  5752.  
  5753. Related Information 
  5754.  
  5755.  o Save Choice 
  5756.  o Keys Help. 
  5757.  
  5758.  
  5759. ΓòÉΓòÉΓòÉ 16.5. Call Nesting Project Menu ΓòÉΓòÉΓòÉ
  5760.  
  5761. This menu appears when you start the Performance Analyzer from within the 
  5762. WorkFrame environment. The Project menu gives you direct access to all of the 
  5763. actions that you can perform from your current location. 
  5764.  
  5765. When you select the Edit function choice from this menu, the source code for 
  5766. the selected function is displayed in the default editor for WorkFrame's edit 
  5767. action. 
  5768.  
  5769. Related Information 
  5770.  
  5771.  o Search Paths Window 
  5772.  o Trace Generation Window 
  5773.  o Keys Help 
  5774.  
  5775.  
  5776. ΓòÉΓòÉΓòÉ 16.5.1. Edit Function Choice ΓòÉΓòÉΓòÉ
  5777.  
  5778. Select the Edit function choice to edit a source file in WorkFrame's default 
  5779. editor. This choice lets you edit the source for a function selected on the 
  5780. Call Nesting diagram. When you are working in the WorkFrame environment, this 
  5781. choice is available from the Project menu on the Call Nesting diagram. It is 
  5782. also available from the Selected Item pop-up menu on the Call Nesting diagram. 
  5783.  
  5784. To locate a source file for editing, the Performance Analyzer must first locate 
  5785. the executable containing the name of the source file. The Performance Analyzer 
  5786. searches the following paths (in the order listed) to locate an executable: 
  5787.  
  5788.   1. Path specified in the Locate Executable window 
  5789.   2. Path specified in the Search path for executable files entry field of the 
  5790.      Search Paths window 
  5791.   3. Directory where the executable was located when the trace file was created 
  5792.   4. The current working directory 
  5793.   5. Path specified by the PATH environment variable. 
  5794.  
  5795.  To identify the name of the source file, the Performance Analyzer looks at the 
  5796.  debug information in the executable. The Performance Analyzer then searches 
  5797.  the following paths (in the order listed) to locate the source file: 
  5798.  
  5799.   1. Path specified in the Locate Source File window 
  5800.   2. Path specified in the Search path for source files entry field of the 
  5801.      Search Paths window 
  5802.   3. Path specified in the compile statement (if provided) 
  5803.   4. Directory where the executable was located when the trace file was created 
  5804.   5. The current working directory 
  5805.   6. Path specified by the INCLUDE environment variable. 
  5806.  
  5807.  If, after searching these paths, the Performance Analyzer cannot find the: 
  5808.  
  5809.   1. Executable, it displays the Locate Executable window to let you enter the 
  5810.      path where the executable resides. 
  5811.   2. Source file, it displays the Locate Source File window to let you enter 
  5812.      the path where the source file resides. 
  5813.  
  5814.  Once the source file for a function is located, the file is opened to the 
  5815.  first line of the function's code. 
  5816.  
  5817.  Notes: 
  5818.  
  5819.   1. The Performance Analyzer remembers the paths you enter in the Locate 
  5820.      Executable and Locate Source File windows and uses them to look for files 
  5821.      the next time you select the Edit function choice. 
  5822.   2. You can specify paths that you want the Performance Analyzer to use by 
  5823.      selecting the Search paths choice in the Options menu on the Performance 
  5824.      Analyzer - Window Manager window. The paths you enter are automatically 
  5825.      saved for the current session. If you want to save the paths for 
  5826.      subsequent sessions, select the Options menu and then select the Save 
  5827.      choice from the Settings cascaded menu. 
  5828.  
  5829.  Related Information 
  5830.  
  5831.  o Locate Executable Window 
  5832.  o Locate Source File Window 
  5833.  o Search Paths Window 
  5834.  o Starting the Performance Analyzer from WorkFrame 
  5835.  o Keys Help. 
  5836.  
  5837.  
  5838. ΓòÉΓòÉΓòÉ 16.6. Call Nesting Help Menu ΓòÉΓòÉΓòÉ
  5839.  
  5840. The Help menu has the following choices: 
  5841.  
  5842.  Help index               Displays an index of Help topics. 
  5843.  
  5844.  General help             Displays Help for the active window. 
  5845.  
  5846.  Using help               Describes how to use Help. 
  5847.  
  5848.  How do I                 Displays task Help. 
  5849.  
  5850.  VisualAge for C++ Help Menu Items Launch the VisualAge for C++ documentation 
  5851.                           associated with the menu choice. These choices are 
  5852.                           available when you start the Performance Analyzer 
  5853.                           from WorkFrame. 
  5854.  
  5855.  Product information      Displays information about the Performance Analyzer. 
  5856.  
  5857.  Related Information 
  5858.  
  5859.  o Call Nesting Diagram 
  5860.  o Dynamic Call Graph 
  5861.  o Execution Density Diagram 
  5862.  o Statistics Diagram 
  5863.  o Time Line Diagram 
  5864.  o Hints for Using the Performance Analyzer 
  5865.  o Keys Help. 
  5866.  
  5867.  
  5868. ΓòÉΓòÉΓòÉ 16.6.1. Help Index Choice ΓòÉΓòÉΓòÉ
  5869.  
  5870. Select the Help index choice to display an alphabetical index of Performance 
  5871. Analyzer Help topics. This choice is available from the Help menu of the Call 
  5872. Nesting diagram. 
  5873.  
  5874. Use the Previous push button to return to the last topic you viewed. Use the 
  5875. Search... push button to locate topics in the index. Use the Print... push 
  5876. button to print a topic. 
  5877.  
  5878. Related Information 
  5879.  
  5880.  o Call Nesting Diagram 
  5881.  o Dynamic Call Graph 
  5882.  o Execution Density Diagram 
  5883.  o Statistics Diagram 
  5884.  o Time Line Diagram 
  5885.  o Hints for Using the Performance Analyzer 
  5886.  o Keys Help. 
  5887.  
  5888.  
  5889. ΓòÉΓòÉΓòÉ 16.6.2. General Help Choice ΓòÉΓòÉΓòÉ
  5890.  
  5891. Select the General help choice to display Help information for the active 
  5892. window. This choice is available from the Help menu of the Call Nesting 
  5893. diagram. 
  5894.  
  5895. The online Help panel displayed is the same panel that is displayed when you 
  5896. place your cursor inside the window and press F1. 
  5897.  
  5898. Related Information 
  5899.  
  5900.  o Call Nesting Diagram 
  5901.  o Dynamic Call Graph 
  5902.  o Execution Density Diagram 
  5903.  o Statistics Diagram 
  5904.  o Time Line Diagram 
  5905.  o Hints for Using the Performance Analyzer 
  5906.  o Keys Help. 
  5907.  
  5908.  
  5909. ΓòÉΓòÉΓòÉ 16.6.3. Using Help Choice ΓòÉΓòÉΓòÉ
  5910.  
  5911. Select the Using help choice for a description of how to use the IBM 
  5912. Performance Analyzer Help facility. This choice is available from the Help menu 
  5913. of the Call Nesting diagram. 
  5914.  
  5915. Related Information 
  5916.  
  5917.  o Call Nesting Diagram 
  5918.  o Dynamic Call Graph 
  5919.  o Execution Density Diagram 
  5920.  o Statistics Diagram 
  5921.  o Time Line Diagram 
  5922.  o Hints for Using the Performance Analyzer 
  5923.  o Keys Help. 
  5924.  
  5925.  
  5926. ΓòÉΓòÉΓòÉ 16.6.4. How Do I Choice ΓòÉΓòÉΓòÉ
  5927.  
  5928. Select the How do I choice to display the Performance Analyzer task help. This 
  5929. choice is available from the Help menu of the Call Nesting diagram. 
  5930.  
  5931. Related Information 
  5932.  
  5933.  o Call Nesting Diagram 
  5934.  o Dynamic Call Graph 
  5935.  o Execution Density Diagram 
  5936.  o Statistics Diagram 
  5937.  o Time Line Diagram 
  5938.  o Hints for Using the Performance Analyzer 
  5939.  o Keys Help. 
  5940.  
  5941.  
  5942. ΓòÉΓòÉΓòÉ 16.6.5. Product Information Choice ΓòÉΓòÉΓòÉ
  5943.  
  5944. Select the Product information choice to display copyright and version 
  5945. information about the Performance Analyzer application. This choice is 
  5946. available from the Help menu of the Call Nesting diagram. 
  5947.  
  5948. Related Information 
  5949.  
  5950.  o Call Nesting Diagram 
  5951.  o Dynamic Call Graph 
  5952.  o Execution Density Diagram 
  5953.  o Statistics Diagram 
  5954.  o Time Line Diagram 
  5955.  o Hints for Using the Performance Analyzer 
  5956.  o Keys Help. 
  5957.  
  5958.  
  5959. ΓòÉΓòÉΓòÉ 16.7. Call Nesting Status Area ΓòÉΓòÉΓòÉ
  5960.  
  5961. The Status Area, located at the top of the window, describes the settings of 
  5962. the diagram. 
  5963.  
  5964. You can select the Status area... choice to change what appears in the area at 
  5965. the top of the Call Nesting window. 
  5966.  
  5967. When you select the Status area... choice, the Status Area window. appears. 
  5968.  
  5969. The choices in the Status Area window include: 
  5970.  
  5971.  Trace description 
  5972.            Select for a brief description of the trace file. 
  5973.  Filters 
  5974.            Select to display selected filters. 
  5975.  
  5976.  Related Information 
  5977.  
  5978.  o Dynamic Call Graph Status Area 
  5979.  o Execution Density Status Area 
  5980.  o Time Line Status Area 
  5981.  o Keys Help. 
  5982.  
  5983.  
  5984. ΓòÉΓòÉΓòÉ 16.8. Call Nesting Diagram Pop-up Menu ΓòÉΓòÉΓòÉ
  5985.  
  5986. The pop-up menus allow you to quickly access features that are frequently used. 
  5987.  
  5988. The Call Nesting Diagram Pop-up Menu contains actions that can be applied to 
  5989. the entire diagram and the Call Nesting Selected Item Pop-up Menu contains 
  5990. actions that can be a applied to the highlighted item. 
  5991.  
  5992. To access the Call Nesting Diagram Pop-up Menu, click mouse button 2 on the 
  5993. background area of the diagram. 
  5994.  
  5995. The menu is displayed with the following choices: 
  5996.  
  5997.  o Find > 
  5998.  o Find next 
  5999.  o Include functions... 
  6000.  o Include threads... 
  6001.  o Font... 
  6002.  o Thread layout... 
  6003.  
  6004.  Related Information 
  6005.  
  6006.  o Call Nesting Selected Item Pop-up Menu 
  6007.  o Keys Help. 
  6008.  
  6009.  
  6010. ΓòÉΓòÉΓòÉ 16.9. Call Nesting Selected Item Pop-up Menu ΓòÉΓòÉΓòÉ
  6011.  
  6012. The pop-up menus allow you to quickly access features that are frequently used. 
  6013.  
  6014. The Call Nesting Selected Item Pop-up Menu contains actions that can be applied 
  6015. to the highlighted item and the Call Nesting Diagram Pop-up Menu contains 
  6016. actions that can be a applied to the entire diagram. 
  6017.  
  6018. To access the Call Nesting Selected Item Pop-up Menu, click mouse button 2 on 
  6019. the highlighted area of the diagram. 
  6020.  
  6021. The menu is displayed with the following choices: 
  6022.  
  6023.  o Annotate... 
  6024.  o Call stack... 
  6025.  o Correlation... 
  6026.  o Edit function 
  6027.  
  6028.  Related Information 
  6029.  
  6030.  o Call Nesting Diagram Pop-up Menu 
  6031.  o Keys Help. 
  6032.  
  6033.  
  6034. ΓòÉΓòÉΓòÉ 17. Dynamic Call Graph ΓòÉΓòÉΓòÉ
  6035.  
  6036. The Dynamic Call Graph is a graphical representation of your program's 
  6037. execution. Use this diagram to: 
  6038.  
  6039.  o Get an overall view of your program and its flow. 
  6040.  
  6041.  o See the relative importance (in terms of execution time) of program 
  6042.    components. 
  6043.  
  6044.  o See where time is spent in your program. 
  6045.  
  6046.  o See your program's call hierarchy. 
  6047.  
  6048.    Note:   The Dynamic Call Graph is not an inheritance diagram. 
  6049.  
  6050.  In this diagram, nodes represent components. Components can be functions, 
  6051.  classes (only if you are analyzing a C++ program), or executables. 
  6052.  
  6053.  Arcs, which are displayed between pairs of nodes, represent calls from one 
  6054.  component to another. Only calls made during the given execution of the 
  6055.  program are displayed. 
  6056.  
  6057.  The diagram's color code helps you quickly determine where time is spent in 
  6058.  your program and estimate the relative number of calls that occur between 
  6059.  functions, classes, or executables. 
  6060.  
  6061.  Additionally, the diagram uses node size to show you information about 
  6062.  execution time and time on stack. 
  6063.  
  6064.  For more information about the diagram's use of color and node size, see 
  6065.  Dynamic Call Graph Nodes and Arcs. 
  6066.  
  6067.  To choose which type of component the nodes represent, select View > Nodes of, 
  6068.  and then select one of the following choices: 
  6069.  
  6070.  o Functions. 
  6071.  o Classes. (You can only select this choice if you are analyzing a C++ 
  6072.    program.) 
  6073.  o Executables. 
  6074.  
  6075.  By default, the Nodes of setting is Functions for C programs and Classes for 
  6076.  C++ programs. 
  6077.  
  6078.  Using the Nodes of choice to filter the diagram by function, class, or 
  6079.  executable allows you to show the amount of detail that is meaningful to you. 
  6080.  For example, you may want to view classes instead of functions in order to 
  6081.  discern patterns or find problem areas more easily. 
  6082.  
  6083.  The Status Area displays the trace file description (if it has one), the type 
  6084.  of component information displayed (function, class, or executable), and 
  6085.  information about the selected node or arc. 
  6086.  
  6087.  Areas of the Dynamic Call Graph Window 
  6088.  
  6089.  o Menu Bar 
  6090.    The following choices are available from the Dynamic Call Graph menu bar: 
  6091.  
  6092.     - Trace file 
  6093.     - View 
  6094.     - Options 
  6095.     - Project 
  6096.     - Help. 
  6097.  
  6098.  o Status Area 
  6099.    The Status Area provides information about the following: 
  6100.  
  6101.     - Trace description 
  6102.     - Filters 
  6103.     - Selected object. 
  6104.     - Dynamic Call Graph Pop-up Menus 
  6105.  
  6106.        -- Dynamic Call Graph Selected Arc Pop-up Menu 
  6107.        -- Dynamic Call Graph Node Pop-up Menu 
  6108.  
  6109.  Related Information 
  6110.  
  6111.  o Dynamic Call Graph Nodes and Arcs 
  6112.  o Call Nesting Diagram 
  6113.  o Execution Density Diagram 
  6114.  o Statistics Diagram 
  6115.  o Time Line Diagram 
  6116.  o Hints for Using the Performance Analyzer 
  6117.  o Keys Help. 
  6118.  
  6119.  
  6120. ΓòÉΓòÉΓòÉ 17.1. Dynamic Call Graph Nodes and Arcs ΓòÉΓòÉΓòÉ
  6121.  
  6122. The Dynamic Call Graph uses nodes to represent program components (functions, 
  6123. classes [only if you are analyzing a C++ program], or executables) and arcs to 
  6124. represent calls between components. 
  6125.  
  6126. Color and node size have special significance in this diagram. Node color and 
  6127. arc color depict the time spent in the node and the number of calls between 
  6128. nodes, respectively. Node size for a function is based on the function's 
  6129. execution time and time on stack as they compare to the function or functions 
  6130. with the greatest execution time and time on stack. Node size for an executable 
  6131. or a class is based on execution time. 
  6132.  
  6133. When a node is selected, it is surrounded by a green box. When an arc is 
  6134. selected, it is green. 
  6135.  
  6136. Displaying Information about Nodes and Arcs 
  6137.  
  6138. To display: 
  6139.  
  6140.  o The name of the component a node represents, click on the node to select it. 
  6141.    (When selected, a node is surrounded by a box.) 
  6142.    The name of the component represented appears in the Status Area. 
  6143.  
  6144.  o Detailed information about the component a node represents, do either of the 
  6145.    following: 
  6146.  
  6147.     - Double-click on the node. 
  6148.     - Click mouse button 2 on the node, and then select Display information... 
  6149.       from the pop-up menu. 
  6150.    The pop-up window displayed using either of these methods identifies the 
  6151.    component represented and reports other useful statistics, including 
  6152.    execution time, number of calls, and time on the stack. For classes, member 
  6153.    function information is also displayed. 
  6154.  
  6155.  o The names of the components involved in a call, click on the arc 
  6156.    representing the call to select it. (When selected, an arc is green.) 
  6157.    The names of the components represented (the caller and callee) appear in 
  6158.    the Status Area. 
  6159.  
  6160.  o Detailed information about the components involved in a call, do either of 
  6161.    the following: 
  6162.  
  6163.     - Double-click on the arc. 
  6164.     - Click mouse button 2 on the arc, and then select Display information... 
  6165.       from the pop-up menu. 
  6166.    The pop-up window displayed using either of these methods identifies the 
  6167.    caller, the callee, the number of times the caller called the callee, and 
  6168.    the total number of times the callee was called during the program 
  6169.    execution. 
  6170.  
  6171.  Node and Arc Color 
  6172.  
  6173.  Node color is based on the maximum execution time spent in any component. Arc 
  6174.  color is based on the maximum number of calls between any two pairs of 
  6175.  components. 
  6176.  
  6177.  The following table explains how the Dynamic Call Graph uses node color. 
  6178.  
  6179.  Note:   Class execution time is calculated by totalling the execution times 
  6180.  for all member functions contained in the class. 
  6181.  
  6182.   +--------------------------------------------------------+
  6183.   |Node Color:    |Indicates:                              |
  6184.   |---------------+----------------------------------------|
  6185.   |---------------+----------------------------------------|
  6186.   |Gray           |Less than 1/8 of the maximum execution  |
  6187.   |               |time was spent in the component.        |
  6188.   |---------------+----------------------------------------|
  6189.   |Blue           |Between 1/8 and 1/4 of the maximum      |
  6190.   |               |execution time was spent in the         |
  6191.   |               |component.                              |
  6192.   |---------------+----------------------------------------|
  6193.   |Yellow         |Between 1/4 and 1/2 of the maximum      |
  6194.   |               |execution time was spent in the         |
  6195.   |               |component.                              |
  6196.   |---------------+----------------------------------------|
  6197.   |Red            |Greater than 1/2 of the maximum         |
  6198.   |               |execution time was spent in the         |
  6199.   |               |component.                              |
  6200.   +--------------------------------------------------------+
  6201.  
  6202.  The following table explains how the Dynamic Call Graph uses arc color: 
  6203.  
  6204.   +--------------------------------------------------------+
  6205.   |Arc Color:     |Indicates:                              |
  6206.   |---------------+----------------------------------------|
  6207.   |Green          |An arc is selected.                     |
  6208.   |---------------+----------------------------------------|
  6209.   |Gray           |Less than 1/8 of the maximum number of  |
  6210.   |               |calls made were made between components.|
  6211.   |---------------+----------------------------------------|
  6212.   |Blue           |1/8 to 1/4 of the maximum number of     |
  6213.   |               |calls made were made between components.|
  6214.   |---------------+----------------------------------------|
  6215.   |Yellow         |1/4 to 1/2 of the maximum number of     |
  6216.   |               |calls made were made between components.|
  6217.   |---------------+----------------------------------------|
  6218.   |Red            |At least 1/2 of the maximum number of   |
  6219.   |               |calls made were made between components.|
  6220.   +--------------------------------------------------------+
  6221.  
  6222.  Node Size 
  6223.  
  6224.  For functions, node height is determined by the node's execution time relative 
  6225.  to the function that has the greatest execution time. 
  6226.  
  6227.  Node width is determined by the node's time on stack relative to the function 
  6228.  that has the greatest time on stack. 
  6229.  
  6230.  Time on stack is the time spent on the call stack. If a function is waiting 
  6231.  for a message, the time spent waiting is logged as time on stack. 
  6232.  
  6233.  Note:   Time on stack includes all time spent in subroutines. 
  6234.  
  6235.  For executables and classes, node height and width are based on execution 
  6236.  time; therefore, the nodes representing these components will always be 
  6237.  square. 
  6238.  
  6239.  Time on stack is not relevant for executables and classes. 
  6240.  
  6241.  Related Information 
  6242.  
  6243.  o Dynamic Call Graph Function Information Window 
  6244.  o Dynamic Call Graph Class Information Window 
  6245.  o Dynamic Call Graph Executable Information Window 
  6246.  o Dynamic Call Graph 
  6247.  o Dynamic Call Graph Status Area 
  6248.  o Keys Help. 
  6249.  
  6250.  
  6251. ΓòÉΓòÉΓòÉ 17.2. Dynamic Call Graph Trace File Menu ΓòÉΓòÉΓòÉ
  6252.  
  6253. The following choices are available from the Dynamic Call Graph Trace file 
  6254. menu: 
  6255.  
  6256.  Open as > 
  6257.            Shows a new or an additional diagram. 
  6258.  
  6259.  Printer settings... 
  6260.            Allows you to choose printer settings for your output. 
  6261.  
  6262.  Print selected region... 
  6263.            Prints the information that is displayed in the current window. 
  6264.  
  6265.  Window Manager 
  6266.            Displays the Window Manager window. 
  6267.  
  6268.  Exit the Performance Analyzer 
  6269.            Exits the Performance Analyzer. 
  6270.  
  6271.  Related Information 
  6272.  
  6273.  o Analyze Trace Window 
  6274.  o Call Nesting Diagram 
  6275.  o Execution Density Diagram 
  6276.  o Statistics Diagram 
  6277.  o Time Line Diagram 
  6278.  o Keys Help. 
  6279.  
  6280.  
  6281. ΓòÉΓòÉΓòÉ 17.2.1. Open As Cascading Choice ΓòÉΓòÉΓòÉ
  6282.  
  6283. Select the Open as choice to view another diagram. You can open as many new 
  6284. windows as you want. 
  6285.  
  6286. To select a new diagram: 
  6287.  
  6288.   1. Select Open as from the Trace file menu. A cascaded menu is displayed with 
  6289.      the following choices: 
  6290.  
  6291.     Call Nesting 
  6292.     Dynamic Call Graph 
  6293.     Execution Density 
  6294.     Statistics 
  6295.     Time Line 
  6296.  
  6297.   2. Select the name of the diagram you want to view. A new window opens and 
  6298.      displays the diagram you selected. 
  6299.  
  6300.  Related Information 
  6301.  
  6302.  o Using the Analyze Trace Window 
  6303.  o Keys Help. 
  6304.  
  6305.  
  6306. ΓòÉΓòÉΓòÉ 17.2.1.1. Call Nesting Choice ΓòÉΓòÉΓòÉ
  6307.  
  6308. The Call Nesting choice is available from the Open as cascaded menu. When you 
  6309. select Call Nesting, the Call Nesting Diagram displays. 
  6310.  
  6311. Related Information 
  6312.  
  6313.  o Open As Choice 
  6314.  o Keys Help. 
  6315.  
  6316.  
  6317. ΓòÉΓòÉΓòÉ 17.2.1.2. Dynamic Call Graph Choice ΓòÉΓòÉΓòÉ
  6318.  
  6319. The Dynamic Call Graph choice is available from the Open as cascaded menu. When 
  6320. you select Dynamic Call Graph, the Dynamic Call Graph displays. 
  6321.  
  6322. Related Information 
  6323.  
  6324.  o Open As Choice 
  6325.  o Keys Help. 
  6326.  
  6327.  
  6328. ΓòÉΓòÉΓòÉ 17.2.1.3. Execution Density Choice ΓòÉΓòÉΓòÉ
  6329.  
  6330. The Execution Density choice is available from the Open as cascaded menu. When 
  6331. you select Execution Density, the Execution Density diagram displays. 
  6332.  
  6333. Related Information 
  6334.  
  6335.  o Open As Choice 
  6336.  o Keys Help. 
  6337.  
  6338.  
  6339. ΓòÉΓòÉΓòÉ 17.2.1.4. Statistics Choice ΓòÉΓòÉΓòÉ
  6340.  
  6341. The Statistics choice is available from the Open as cascaded menu. When you 
  6342. select Statistics, the Statistics Diagram displays. 
  6343.  
  6344. Related Information 
  6345.  
  6346.  o Open As Choice 
  6347.  o Keys Help. 
  6348.  
  6349.  
  6350. ΓòÉΓòÉΓòÉ 17.2.1.5. Time Line Choice ΓòÉΓòÉΓòÉ
  6351.  
  6352. The Time Line choice is available from the Open as cascaded menu. When you 
  6353. select Time Line, the Time Line diagram displays. 
  6354.  
  6355. Related Information 
  6356.  
  6357.  o Open As Choice 
  6358.  o Keys Help. 
  6359.  
  6360.  
  6361. ΓòÉΓòÉΓòÉ 17.2.2. Printer Settings... Choice ΓòÉΓòÉΓòÉ
  6362.  
  6363. Select the Printer settings... choice to select settings for your print jobs. 
  6364.  
  6365. When you select the Printer settings... choice, the Printer Settings window 
  6366. appears. 
  6367.  
  6368.  o OK 
  6369.  o Font... 
  6370.  o Job properties... 
  6371.  o Cancel 
  6372.  o Help 
  6373.  
  6374.  Related Information 
  6375.  
  6376.  o Keys Help. 
  6377.  
  6378.  
  6379. ΓòÉΓòÉΓòÉ 17.2.3. Print Selected Region... Choice ΓòÉΓòÉΓòÉ
  6380.  
  6381. Select the Print selected region... choice to print the information from the 
  6382. Dynamic Call Graph. 
  6383.  
  6384. To print the Dynamic Call Graph, select the Print selected region... choice 
  6385. from the Trace file menu. The Print Selected Region window appears. 
  6386.  
  6387. Related Information 
  6388.  
  6389.  o Keys Help. 
  6390.  
  6391.  
  6392. ΓòÉΓòÉΓòÉ 17.2.4. Window Manager Choice ΓòÉΓòÉΓòÉ
  6393.  
  6394. Select the Window Manager choice to display the Window Manager window. 
  6395.  
  6396. Related Information 
  6397.  
  6398.  o Performance Analyzer - Window Manager 
  6399.  o Keys Help. 
  6400.  
  6401.  
  6402. ΓòÉΓòÉΓòÉ 17.2.5. Exit the Performance Analyzer Choice ΓòÉΓòÉΓòÉ
  6403.  
  6404. Select Exit the Performance Analyzer to close Performance Analyzer and all 
  6405. windows. 
  6406.  
  6407. Related Information 
  6408.  
  6409.  o Keys Help. 
  6410.  
  6411.  
  6412. ΓòÉΓòÉΓòÉ 17.3. Dynamic Call Graph View Menu ΓòÉΓòÉΓòÉ
  6413.  
  6414. The following choices are available from the View menu: 
  6415.  
  6416.  Nodes of > 
  6417.            Lets you choose whether the diagram's nodes represent functions, 
  6418.            classes (only if you are analyzing a C++ program) or executables. 
  6419.  
  6420.  Include threads... 
  6421.            Controls which threads are included in the diagram. 
  6422.  
  6423.  Show arcs 
  6424.            Displays or hides all arcs in the diagram. 
  6425.  
  6426.  Overview 
  6427.            Use to navigate through large diagrams quickly. 
  6428.  
  6429.  Zoom in 
  6430.            Enlarges the size of the diagram without changing the size of the 
  6431.            window. 
  6432.  
  6433.  Zoom out 
  6434.            Decreases the size of the diagram without changing the size of the 
  6435.            window. 
  6436.  
  6437.  Re-lay graph 
  6438.            Sizes the diagram to fit in the window. 
  6439.  
  6440.  Restore graph 
  6441.            Restores nodes and arcs to the diagram to show the default view. 
  6442.  
  6443.  Related Information 
  6444.  
  6445.  o Call Nesting Diagram 
  6446.  o Execution Density Diagram 
  6447.  o Statistics Diagram 
  6448.  o Time Line Diagram 
  6449.  o Keys Help. 
  6450.  
  6451.  
  6452. ΓòÉΓòÉΓòÉ 17.3.1. Nodes of Cascading Choice ΓòÉΓòÉΓòÉ
  6453.  
  6454. Select the Nodes of choice to choose which type of component the diagram's 
  6455. nodes represent. This choice is available from the View menu on the Dynamic 
  6456. Call Graph. 
  6457.  
  6458. Nodes can represent functions, classes (only if you are analyzing a C++ 
  6459. program), or executables. For C programs, the default setting for Nodes of is 
  6460. Functions. For C++ programs, the default setting for Nodes of is Classes. 
  6461.  
  6462. In the Dynamic Call Graph diagram, you can access this choice by selecting 
  6463. View >Nodes of, and then selecting one of the following choices: 
  6464.  
  6465.  o Functions. 
  6466.  o Classes. (You can only select this choice if you are analyzing a C++ 
  6467.    program.) 
  6468.  o Executables. 
  6469.  
  6470.  By using these choices to group program components, you can show the amount of 
  6471.  detail that is meaningful to you. For example, you may want to view classes 
  6472.  instead of functions in order to discern patterns or find problem areas more 
  6473.  easily. 
  6474.  
  6475.  Related Information 
  6476.  
  6477.  o Keys Help. 
  6478.  
  6479.  
  6480. ΓòÉΓòÉΓòÉ 17.3.1.1. Functions Choice ΓòÉΓòÉΓòÉ
  6481.  
  6482. Select the Functions choice to specify that nodes in the Dynamic Call Graph 
  6483. represent functions. 
  6484.  
  6485. You can access this choice by selecting View > Nodes of > Functions. A check 
  6486. mark is displayed next to the choice when it is selected. 
  6487.  
  6488. Related Information 
  6489.  
  6490.  o Classes Choice 
  6491.  o Executables Choice 
  6492.  o Keys Help. 
  6493.  
  6494.  
  6495. ΓòÉΓòÉΓòÉ 17.3.1.2. Classes Choice ΓòÉΓòÉΓòÉ
  6496.  
  6497. Select the Classes choice to specify that nodes in the Dynamic Call Graph 
  6498. represent classes. As a class, each node represents the data for every member 
  6499. function contained in that class. 
  6500.  
  6501. You can access this choice by selecting View > Nodes of > Classes. A check mark 
  6502. is displayed next to the choice when it is selected. 
  6503.  
  6504. Related Information 
  6505.  
  6506.  o Functions Choice 
  6507.  o Executables Choice 
  6508.  o Keys Help. 
  6509.  
  6510.  
  6511. ΓòÉΓòÉΓòÉ 17.3.1.3. Executables Choice ΓòÉΓòÉΓòÉ
  6512.  
  6513. Select the Executables choice to specify that nodes in the Dynamic Call Graph 
  6514. represent executables. As an executable, each node represents the data for 
  6515. every function contained in that executable. 
  6516.  
  6517. You can access this choice by selecting View > Nodes of > Executables. A check 
  6518. mark is displayed next to the choice when it is selected. 
  6519.  
  6520. Related Information 
  6521.  
  6522.  o Functions Choice 
  6523.  o Classes Choice 
  6524.  o Keys Help. 
  6525.  
  6526.  
  6527. ΓòÉΓòÉΓòÉ 17.3.2. Include Threads... Choice ΓòÉΓòÉΓòÉ
  6528.  
  6529. Select the Include threads... choice to select which threads are displayed in 
  6530. the diagram. This choice is available from the View menu on the Dynamic Call 
  6531. Graph. 
  6532.  
  6533. Use the Include threads... choice to filter the trace file, which allows you to 
  6534. isolate specific areas of interest or areas where problems occur. When you 
  6535. select this choice, an Include Threads window appears. 
  6536.  
  6537. Related Information 
  6538.  
  6539.  o Keys Help. 
  6540.  
  6541.  
  6542. ΓòÉΓòÉΓòÉ 17.3.2.1. Include Threads Window ΓòÉΓòÉΓòÉ
  6543.  
  6544. Use the Include Threads window to select or isolate specific threads in the 
  6545. Dynamic Call Graph. This choice is available from the View menu on the Dynamic 
  6546. Call Graph. 
  6547.  
  6548. Use the mouse to highlight your thread selection. You can choose any thread or 
  6549. a combination of threads. 
  6550.  
  6551. Note:   The percentages of execution time represented by the size and color of 
  6552. nodes are based upon the total execution time of the selected threads, not the 
  6553. total execution time. When you change threads you affect the percentages. 
  6554.  
  6555. Selecting Specific Threads 
  6556.  
  6557. To select a specific thread: 
  6558.  
  6559.   1. Select the specific threads you want to display. 
  6560.  
  6561.   2. Select the appropriate push button to continue: 
  6562.  
  6563.     o OK 
  6564.     o Select all 
  6565.     o Deselect all 
  6566.     o Cancel 
  6567.     o Help. 
  6568.  
  6569.  Selecting All Threads 
  6570.  
  6571.  To select all threads: 
  6572.  
  6573.   1. Highlight All threads to select all threads. 
  6574.  
  6575.   2. Select the appropriate push button to continue: 
  6576.  
  6577.     o OK 
  6578.     o Select all 
  6579.     o Deselect all 
  6580.     o Cancel 
  6581.     o Help 
  6582.  
  6583.  Related Information 
  6584.  
  6585.  o Dynamic Call Graph 
  6586.  o Execution Density Diagram 
  6587.  o Analyze Trace Window 
  6588.  o Keys Help. 
  6589.  
  6590.  
  6591. ΓòÉΓòÉΓòÉ <hidden> Show Arcs Choice ΓòÉΓòÉΓòÉ
  6592.  
  6593. Select the Show arcs choice to display or hide all arcs in the diagram. The 
  6594. default setting is to display arcs. 
  6595.  
  6596. To make it easier to select nodes on a busy graph, you can hide arcs by 
  6597. selecting this choice and disabling it. The check mark next to Show arcs is 
  6598. removed when the choice is disabled. 
  6599.  
  6600. Select this choice from the View menu on the Dynamic Call Graph. 
  6601.  
  6602. Note:   If the Who Calls Whom or Who Calls Me push button is selected, arcs to 
  6603. or from the selected node will not be displayed if Show arcs is disabled. 
  6604.  
  6605. Related Information 
  6606.  
  6607.  o Keys Help. 
  6608.  
  6609.  
  6610. ΓòÉΓòÉΓòÉ 17.3.3. Overview Choice ΓòÉΓòÉΓòÉ
  6611.  
  6612. Select the Overview choice to display a scaled-down image of the diagram you 
  6613. are viewing. This choice is available from the View menu on the Dynamic Call 
  6614. Graph. 
  6615.  
  6616. When you select the Overview choice, the Overview dialog window appears. The 
  6617. Overview window lets you navigate through large diagrams. 
  6618.  
  6619. Switching Views 
  6620.  
  6621. To change the view of the diagram, use the following to: 
  6622.  
  6623.   1. View a larger or smaller area of the diagram. 
  6624.  
  6625.      Press and hold mouse button 1 while pointing to any edge of the shaded 
  6626.      rectangle in the Overview window. By moving the mouse, the rectangle 
  6627.      becomes larger or smaller. When you release mouse button 1, the main 
  6628.      window is redrawn to reflect the new view. 
  6629.  
  6630.   2. View a different area of the diagram. 
  6631.  
  6632.      Press and hold mouse button 1 in the center of the shaded rectangle in the 
  6633.      Overview window. Move the rectangle over the part of diagram that you want 
  6634.      to view. When you release mouse button 1, the main window is redrawn to 
  6635.      reflect the new view. 
  6636.  
  6637.  Related Information 
  6638.  
  6639.  o Dynamic Call Graph 
  6640.  o Keys Help. 
  6641.  
  6642.  
  6643. ΓòÉΓòÉΓòÉ <hidden> Overview Window ΓòÉΓòÉΓòÉ
  6644.  
  6645. Use the Overview window to display a scaled-down image of the Dynamic Call 
  6646. Graph. The Overview window lets you navigate through large trace files. This 
  6647. window is displayed when you select View > Overview on the Dynamic Call Graph. 
  6648.  
  6649. Switching Views 
  6650.  
  6651. To view a larger or smaller area of the Dynamic Call Graph: 
  6652.  
  6653. Press and hold mouse button 1 while pointing to any edge of the shaded 
  6654. rectangle in the Overview window. By moving the mouse forward or backward, the 
  6655. rectangle becomes larger or smaller. When you release mouse button 1, the main 
  6656. window is redrawn to reflect the new view. 
  6657.  
  6658. View a Different Area of the Graph 
  6659.  
  6660. Press and hold mouse button 1 in the center of the shaded rectangle in the 
  6661. Overview window. Move the rectangle over the part of the diagram that you want 
  6662. to view. When you release mouse button 1, the main window is redrawn to reflect 
  6663. the new view. 
  6664.  
  6665. Related Information 
  6666.  
  6667.  o Dynamic Call Graph 
  6668.  o Analyze Trace Window. 
  6669.  o Keys Help. 
  6670.  
  6671.  
  6672. ΓòÉΓòÉΓòÉ 17.3.4. Zoom In Choice ΓòÉΓòÉΓòÉ
  6673.  
  6674. Select the Zoom in choice to enlarge the diagram without changing the window 
  6675. size. The Zoom in choice makes the selected object appear closer and makes the 
  6676. diagram appear larger in the window. This choice is available from the View 
  6677. menu on the Dynamic Call Graph. 
  6678.  
  6679. If a node or an arc is selected, Zoom in centers that node in the window while 
  6680. enlarging the diagram. You can enlarge the diagram up to five times its default 
  6681. size. 
  6682.  
  6683. To enlarge the diagram, select Zoom in from the View menu, or you can press the 
  6684. +key on the numeric key pad or Shift and the + key on the keyboard. Each time 
  6685. you zoom in using the Zoom in menu choice or the keyboard keys, the window 
  6686. appears larger. 
  6687.  
  6688. To return the diagram to the original size, use the Re-lay graph choice in the 
  6689. View menu. 
  6690.  
  6691. Related Information 
  6692.  
  6693.  o Zoom Bar 
  6694.  o Zoom Out Choice 
  6695.  o Keys Help. 
  6696.  
  6697.  
  6698. ΓòÉΓòÉΓòÉ 17.3.5. Zoom Out Choice ΓòÉΓòÉΓòÉ
  6699.  
  6700. Select the Zoom out choice to decrease the size of the diagram so the entire 
  6701. diagram can be displayed without changing the window size. The Zoom out choice 
  6702. makes the selected object appear further away making the diagram appear smaller 
  6703. in the window. This choice is available from the View menu on the Dynamic Call 
  6704. Graph. 
  6705.  
  6706. The original default view is the smallest size in which the graph can be 
  6707. displayed. 
  6708.  
  6709. To decrease the view of the diagram, select Zoom out from the View menu, or you 
  6710. can press the minus key (-) on the numeric key pad or Shift and the - key on 
  6711. the keyboard. Each time you zoom out using the Zoom out menu choice or the 
  6712. keyboard keys, the window appears smaller. 
  6713.  
  6714. To return the diagram to the original size, use the Re-lay graph choice in the 
  6715. View menu. 
  6716.  
  6717. Related Information 
  6718.  
  6719.  o Zoom Bar 
  6720.  o Zoom In Choice 
  6721.  o Keys Help. 
  6722.  
  6723.  
  6724. ΓòÉΓòÉΓòÉ 17.3.6. Re-lay Graph Choice ΓòÉΓòÉΓòÉ
  6725.  
  6726. Select the Re-lay graph choice to center and resize the nodes. This choice is 
  6727. available from the View menu on the Dynamic Call Graph. 
  6728.  
  6729. See Dynamic Call Graph for more information about isolating nodes and arcs. 
  6730.  
  6731. To re-lay the diagram, select Re-lay graph from the View menu. The diagram is 
  6732. centered in the window with all selected elements sized to fit. 
  6733.  
  6734. Related Information 
  6735.  
  6736.  o Zoom Bar 
  6737.  o Restore Choice 
  6738.  o Keys Help. 
  6739.  
  6740.  
  6741. ΓòÉΓòÉΓòÉ 17.3.7. Restore Graph Choice ΓòÉΓòÉΓòÉ
  6742.  
  6743. Select the Restore graph choice to return the diagram to the default view. This 
  6744. choice is available from the View menu on the Dynamic Call Graph. 
  6745.  
  6746. To restore a diagram, select Restore graph from the View menu. The entire 
  6747. diagram is restored to the default view and all nodes and arcs are visible in 
  6748. the window. 
  6749.  
  6750. Related Information 
  6751.  
  6752.  o Zoom Bar 
  6753.  o Re-lay Graph Choice 
  6754.  o Keys Help. 
  6755.  
  6756.  
  6757. ΓòÉΓòÉΓòÉ 17.4. Dynamic Call Graph Options Menu ΓòÉΓòÉΓòÉ
  6758.  
  6759. The Options menu allows you to customize the Dynamic Call Graph and display 
  6760. additional information. 
  6761.  
  6762. The following choices are available from the Options menu: 
  6763.  
  6764.  Scale node sizes 
  6765.            Scales node sizes. 
  6766.  
  6767.  Find... 
  6768.            Searches for functions, classes (only if you are analyzing a C++ 
  6769.            program), or executables in the diagram. 
  6770.  
  6771.  Status area... 
  6772.            Area at the top of the window that describes the diagram. 
  6773.  
  6774.  Tool bar > 
  6775.            Use the tool bar for a shortcut to other menus. 
  6776.  
  6777.  Settings > 
  6778.            Saves the current settings or restores the default settings. 
  6779.  
  6780.  Related Information 
  6781.  
  6782.  o Call Nesting Diagram 
  6783.  o Execution Density Diagram 
  6784.  o Statistics Diagram 
  6785.  o Time Line Diagram 
  6786.  o Keys Help. 
  6787.  
  6788.  
  6789. ΓòÉΓòÉΓòÉ 17.4.1. Scale Node Sizes Choice ΓòÉΓòÉΓòÉ
  6790.  
  6791. Select the Scale node sizes choice to choose how you want to display the 
  6792. diagram. When you enable the Scale node size function a check mark appears 
  6793. beside the menu choice, and the nodes and arcs are then displayed in proportion 
  6794. to the execution time and time on stack. To disable the Scale node size 
  6795. function, click on it again to remove the check mark 
  6796.  
  6797. Related Information 
  6798.  
  6799.  o Analyze Trace Window 
  6800.  o Execution Density Diagram Pop-up Menu 
  6801.  o Keys Help. 
  6802.  
  6803.  
  6804. ΓòÉΓòÉΓòÉ 17.4.2. Find... Choice ΓòÉΓòÉΓòÉ
  6805.  
  6806. Select the Find... choice to search for functions, classes (only if you are 
  6807. analyzing a C++ program), or executables in the Dynamic Call Graph diagram. 
  6808. When you select the Find... choice, a Find window appears. 
  6809.  
  6810. The Find window that is displayed depends on what type of component (function, 
  6811. class, or executable) you are searching for. If you are searching for: 
  6812.  
  6813.  o A function, the Find Function window appears. 
  6814.  o A class, the Find Class window appears. 
  6815.  o An executable, the Find Executable window appears. 
  6816.  
  6817.  Before you select the Find... choice, choose the type of component you want to 
  6818.  search for by selecting View > Nodes of, and then selecting Functions, 
  6819.  Classes, or Executables. 
  6820.  
  6821.  Related Information 
  6822.  
  6823.  o Find Function Window 
  6824.  o Find Class Window 
  6825.  o Find Executable Window 
  6826.  o Keys Help. 
  6827.  
  6828.  
  6829. ΓòÉΓòÉΓòÉ <hidden> Find Function Window ΓòÉΓòÉΓòÉ
  6830.  
  6831. Use the Find Function window to search for a specific function in the diagram. 
  6832.  
  6833. To search for a function: 
  6834.  
  6835.   1. Make sure the View > Nodes of choice (if you are searching in the Dynamic 
  6836.      Call Graph diagram) or the View > Details on choice (if you are searching 
  6837.      in the Statistics diagram) is set to Functions. 
  6838.  
  6839.   2. Select Options > Find.... The Find Function window appears. 
  6840.  
  6841.   3. Enter the function name in the Find entry field. If you don't know the 
  6842.      function name, you can use wildcard characters (* and ?) in the entry 
  6843.      field, as follows: 
  6844.  
  6845.     o Use an asterisk (*) to represent 0 or more arbitrary characters. For 
  6846.       example, enter: 
  6847.  
  6848.        - * to display a list of all function names. 
  6849.        - b* to display all function names, regardless of length, that begin 
  6850.          with the letter b. 
  6851.        - *b to display all function names that end with the letter b. 
  6852.  
  6853.     o Use a question mark (?) to represent a single arbitrary character. For 
  6854.       example, enter ?b* to display all function names that start with any 
  6855.       character and have the letter b as their second character. 
  6856.  
  6857.       Note:   Wildcards are especially useful when you are searching for a 
  6858.       fully qualified C++ function name (for example, myClass:: 
  6859.       function[parameter] ). 
  6860.  
  6861.   4. Click on the Case sensitive check box if you want to enable case sensitive 
  6862.      searching. 
  6863.  
  6864.   5. Click on the OK push button. 
  6865.  
  6866.   6. Click on the name of a function in the list box. 
  6867.  
  6868.   7. Select the appropriate push button to continue: 
  6869.  
  6870.     o OK 
  6871.     o Cancel 
  6872.     o Help. 
  6873.  
  6874.  Note:   The function is highlighted when found. 
  6875.  
  6876.  Related Information 
  6877.  
  6878.  o Find Class Window 
  6879.  o Find Executable Window 
  6880.  o Keys Help. 
  6881.  
  6882.  
  6883. ΓòÉΓòÉΓòÉ <hidden> Find Class Window ΓòÉΓòÉΓòÉ
  6884.  
  6885. Use the Find Class window to search for a specific class in the diagram. 
  6886.  
  6887. To search for a class: 
  6888.  
  6889.   1. Make sure the View > Nodes of choice (if you are searching in the Dynamic 
  6890.      Call Graph diagram) or the View > Details on choice (if you are searching 
  6891.      in the Statistics diagram) is set to Classes. 
  6892.  
  6893.   2. Select Options > Find.... The Find Class window appears. 
  6894.  
  6895.   3. Enter the class name in the Find entry field. If you don't know the class 
  6896.      name, you can use wildcard characters (* and ?) in the entry field, as 
  6897.      follows: 
  6898.  
  6899.     o Use an asterisk (*) to represent 0 or more arbitrary characters. For 
  6900.       example, enter: 
  6901.  
  6902.        - * to display a list of all class names. 
  6903.        - b* to display all class names, regardless of length, that begin with 
  6904.          the letter b. 
  6905.        - *b to display all class names that end with the letter b. 
  6906.  
  6907.     o Use a question mark (?) to represent a single arbitrary character. For 
  6908.       example, enter ?b* to display all class names that start with any 
  6909.       character and have the letter b as their second character. 
  6910.  
  6911.   4. Click on the Case sensitive check box if you want to enable case sensitive 
  6912.      searching. 
  6913.  
  6914.   5. Click on the OK push button. 
  6915.  
  6916.   6. Click on the name of a class in the list box. 
  6917.  
  6918.   7. Select the appropriate push button to continue: 
  6919.  
  6920.     o OK 
  6921.     o Cancel 
  6922.     o Help. 
  6923.  
  6924.  Note:   The class is highlighted when found. 
  6925.  
  6926.  Related Information 
  6927.  
  6928.  o Find Function Window 
  6929.  o Find Executable Window 
  6930.  o Keys Help. 
  6931.  
  6932.  
  6933. ΓòÉΓòÉΓòÉ <hidden> Find Executable Window ΓòÉΓòÉΓòÉ
  6934.  
  6935. Use the Find Executable window to search for a specific executable in the 
  6936. diagram. 
  6937.  
  6938. To search for an executable: 
  6939.  
  6940.   1. Make sure the View > Nodes of choice (if you are searching in the Dynamic 
  6941.      Call Graph diagram) or the View > Details on choice (if you are searching 
  6942.      in the Statistics diagram) is set to Executables. 
  6943.  
  6944.   2. Select Options > Find.... The Find Executable window appears. 
  6945.  
  6946.   3. Enter the executable file name in the Find entry field. If you don't know 
  6947.      the executable file name, you can use wildcard characters (* and ?) in the 
  6948.      entry field, as follows: 
  6949.  
  6950.     o Use an asterisk (*) to represent 0 or more arbitrary characters. For 
  6951.       example, enter: 
  6952.  
  6953.        - * to display a list of all executable file names. 
  6954.        - b* to display all executable file names, regardless of length, that 
  6955.          begin with the letter b. 
  6956.        - *b to display all executable file names that end with the letter b. 
  6957.  
  6958.     o Use a question mark (?) to represent a single arbitrary character. For 
  6959.       example, enter ?b* to display all executable file names that start with 
  6960.       any character and have the letter b as their second character. 
  6961.  
  6962.   4. Click on the Case sensitive check box if you want to enable case sensitive 
  6963.      searching. 
  6964.  
  6965.   5. Click on the OK push button. 
  6966.  
  6967.   6. Click on the name of an executable in the list box. 
  6968.  
  6969.   7. Select the appropriate push button to continue: 
  6970.  
  6971.     o OK 
  6972.     o Cancel 
  6973.     o Help. 
  6974.  
  6975.  Note:   The executable is highlighted when found. 
  6976.  
  6977.  Related Information 
  6978.  
  6979.  o Find Function Window 
  6980.  o Find Class Window 
  6981.  o Keys Help. 
  6982.  
  6983.  
  6984. ΓòÉΓòÉΓòÉ 17.4.3. Status Area... Choice ΓòÉΓòÉΓòÉ
  6985.  
  6986. Select the Status area... choice to change what appears in the area at the top 
  6987. of the Dynamic Call Graph window. 
  6988.  
  6989. The Status area includes: 
  6990.  
  6991.  o Trace description 
  6992.  o Filters 
  6993.  o Selected object 
  6994.  
  6995.  When you select Status area, the Status Area window appears. 
  6996.  
  6997.  Related Information 
  6998.  
  6999.  o Keys Help. 
  7000.  
  7001.  
  7002. ΓòÉΓòÉΓòÉ <hidden> Dynamic Call Graph Status Area Window ΓòÉΓòÉΓòÉ
  7003.  
  7004. Use the Status Area window to control the area at the top of the window. 
  7005.  
  7006. The check boxes represent the choices in the Status Area that you can show or 
  7007. hide or display. When you disable the check box the choice is hidden. Likewise, 
  7008. when you enable the check box the choice displays in the Status Area. 
  7009.  
  7010. In each diagram the Status Area displays different information. When you select 
  7011. the Status Area window, the choices in the window change based upon the Status 
  7012. Area of the diagram. 
  7013.  
  7014. Choices from the Dynamic Call Graph Status Area window include: 
  7015.  
  7016.  o Trace description 
  7017.  o Filters 
  7018.  o Selected object 
  7019.  
  7020.  Select the appropriate check box to continue. 
  7021.  
  7022.  Related Information 
  7023.  
  7024.  o Call Nesting Status Area Window 
  7025.  o Execution Density Status Area Window 
  7026.  o Status Area Window. 
  7027.  o Keys Help. 
  7028.  
  7029.  
  7030. ΓòÉΓòÉΓòÉ 17.4.4. Tool Bar Cascading Choice ΓòÉΓòÉΓòÉ
  7031.  
  7032. Select the Tool bar cascading choice to have the tool bar display or not 
  7033. display in your window, and to enable and disable the Hover help. 
  7034.  
  7035. The choices from the Tool bar cascaded menu are: 
  7036.  
  7037.  Show      Choose to either show or hide the tool bar. 
  7038.  Hover help Choose to either enable or disable displaying the help text when 
  7039.            the mouse pointer hovers over the tool bar buttons. 
  7040.  
  7041.  Related Information 
  7042.  
  7043.  o Keys Help. 
  7044.  
  7045.  
  7046. ΓòÉΓòÉΓòÉ 17.4.5. Settings Cascading Choice ΓòÉΓòÉΓòÉ
  7047.  
  7048. The choices from the Settings cascaded menu allow you to save current settings 
  7049. or switch to the original settings. 
  7050.  
  7051.  Save      Saves the current session settings. 
  7052.  Restore initial defaults Restores the original settings. 
  7053.  
  7054.  Related Information 
  7055.  
  7056.  o Save Choice 
  7057.  o Restore Initial Defaults Choice 
  7058.  o Keys Help. 
  7059.  
  7060.  
  7061. ΓòÉΓòÉΓòÉ 17.4.5.1. Save Choice ΓòÉΓòÉΓòÉ
  7062.  
  7063. Select the Save choice to save the current settings. These settings are stored 
  7064. in the IPERF.INI file and remain active until that file is erased. 
  7065.  
  7066. To restore the default settings, select the Restore initial defaults choice. 
  7067.  
  7068. Related Information 
  7069.  
  7070.  o Restore Initial Defaults Choice 
  7071.  o Keys Help 
  7072.  
  7073.  
  7074. ΓòÉΓòÉΓòÉ 17.4.5.2. Restore Initial Defaults Choice ΓòÉΓòÉΓòÉ
  7075.  
  7076. Select the Restore initial defaults choice to change to the original or default 
  7077. settings. You can select the Save choice to save settings. 
  7078.  
  7079. Related Information 
  7080.  
  7081.  o Save Choice 
  7082.  o Keys Help 
  7083.  
  7084.  
  7085. ΓòÉΓòÉΓòÉ 17.5. Dynamic Call Graph Project Menu ΓòÉΓòÉΓòÉ
  7086.  
  7087. This menu appears when you start the Performance Analyzer from within the 
  7088. WorkFrame environment. The Project menu gives you direct access to all of the 
  7089. actions that you can perform from your current location. 
  7090.  
  7091. When you select the Edit function choice from this menu, the source code for 
  7092. the selected function is displayed in the default editor for WorkFrame's edit 
  7093. action. 
  7094.  
  7095. Related Information 
  7096.  
  7097.  o Search Paths Window 
  7098.  o Trace Generation Window 
  7099.  o Keys Help 
  7100.  
  7101.  
  7102. ΓòÉΓòÉΓòÉ 17.5.1. Edit Function Choice ΓòÉΓòÉΓòÉ
  7103.  
  7104. Select the Edit function choice to edit a source file in WorkFrame's default 
  7105. editor. This choice lets you edit the source for a function selected on the 
  7106. Dynamic Call Graph. When you are working in the WorkFrame environment, this 
  7107. choice is available from the Project menu on the Dynamic Call Graph. 
  7108.  
  7109. To locate a source file for editing, the Performance Analyzer must first locate 
  7110. the executable containing the name of the source file. The Performance Analyzer 
  7111. searches the following paths (in the order listed) to locate an executable: 
  7112.  
  7113.   1. Path specified in the Locate Executable window 
  7114.   2. Path specified in the Search path for executable files entry field of the 
  7115.      Search Paths window 
  7116.   3. Directory where the executable was located when the trace file was created 
  7117.   4. The current working directory 
  7118.   5. Path specified by the PATH environment variable. 
  7119.  
  7120.  To identify the name of the source file, the Performance Analyzer looks at the 
  7121.  debug information in the executable. The Performance Analyzer then searches 
  7122.  the following paths (in the order listed) to locate the source file: 
  7123.  
  7124.   1. Path specified in the Locate Source File window 
  7125.   2. Path specified in the Search path for source files entry field of the 
  7126.      Search Paths window 
  7127.   3. Path specified in the compile statement (if provided) 
  7128.   4. Directory where the executable was located when the trace file was created 
  7129.   5. The current working directory 
  7130.   6. Path specified by the INCLUDE environment variable. 
  7131.  
  7132.  If, after searching these paths, the Performance Analyzer cannot find the: 
  7133.  
  7134.   1. Executable, it displays the Locate Executable window to let you enter the 
  7135.      path where the executable resides. 
  7136.   2. Source file, it displays the Locate Source File window to let you enter 
  7137.      the path where the source file resides. 
  7138.  
  7139.  Once the source file for a function is located, the file is opened to the 
  7140.  first line of the function's code. 
  7141.  
  7142.  Notes: 
  7143.  
  7144.   1. The Performance Analyzer remembers the paths you enter in the Locate 
  7145.      Executable and Locate Source File windows and uses them to look for files 
  7146.      the next time you select the Edit function choice. 
  7147.   2. You can specify paths that you want the Performance Analyzer to use by 
  7148.      selecting the Search Paths choice in the Options menu on the Performance 
  7149.      Analyzer - Window Manager window. The paths you enter are automatically 
  7150.      saved for the current session. If you want to save the paths for 
  7151.      subsequent sessions, select the Options menu and then select the Save 
  7152.      choice from the Settings cascaded menu. 
  7153.  
  7154.  Related Information 
  7155.  
  7156.  o Locate Executable Window 
  7157.  o Locate Source File Window 
  7158.  o Search Paths Window 
  7159.  o Starting the Performance Analyzer from WorkFrame 
  7160.  o Keys Help. 
  7161.  
  7162.  
  7163. ΓòÉΓòÉΓòÉ 17.6. Dynamic Call Graph Help Menu ΓòÉΓòÉΓòÉ
  7164.  
  7165. The Help menu has the following choices: 
  7166.  
  7167.  Help index 
  7168.            Displays an index of Help topics. 
  7169.  
  7170.  General help 
  7171.            Displays Help for the active window. 
  7172.  
  7173.  Using help 
  7174.            Describes how to use Help. 
  7175.  
  7176.  How do I 
  7177.            Displays task Help. 
  7178.  
  7179.  VisualAge for C++ Help Menu Items 
  7180.            Launch the VisualAge for C++ documentation associated with the menu 
  7181.            choice. These choices are available when you start the Performance 
  7182.            Analyzer from WorkFrame. 
  7183.  
  7184.  Product information 
  7185.            Displays information about the Performance Analyzer. 
  7186.  
  7187.  Related Information 
  7188.  
  7189.  o Call Nesting Diagram 
  7190.  o Dynamic Call Graph 
  7191.  o Execution Density Diagram 
  7192.  o Statistics Diagram 
  7193.  o Time Line Diagram 
  7194.  o Hints for Using the Performance Analyzer 
  7195.  o Keys Help. 
  7196.  
  7197.  
  7198. ΓòÉΓòÉΓòÉ 17.6.1. Help Index Choice ΓòÉΓòÉΓòÉ
  7199.  
  7200. Select the Help index choice to display an alphabetical index of Performance 
  7201. Analyzer Help topics. This choice is available from the Help menu of the 
  7202. Dynamic Call Graph. 
  7203.  
  7204. Use the Previous push button to return to the last topic you viewed. Use the 
  7205. Search... push button to locate topics in the index. Use the Print... push 
  7206. button to print a topic. 
  7207.  
  7208. Related Information 
  7209.  
  7210.  o Call Nesting Diagram 
  7211.  o Dynamic Call Graph 
  7212.  o Execution Density Diagram 
  7213.  o Statistics Diagram 
  7214.  o Time Line Diagram 
  7215.  o Hints for Using the Performance Analyzer 
  7216.  o Keys Help. 
  7217.  
  7218.  
  7219. ΓòÉΓòÉΓòÉ 17.6.2. General Help Choice ΓòÉΓòÉΓòÉ
  7220.  
  7221. Select the General help choice to display Help information for the active 
  7222. window. This choice is available from the Help menu of the Dynamic Call Graph. 
  7223.  
  7224. The online Help panel displayed is the same panel that is displayed when you 
  7225. place your cursor inside the window and press F1. 
  7226.  
  7227. Related Information 
  7228.  
  7229.  o Call Nesting Diagram 
  7230.  o Dynamic Call Graph 
  7231.  o Execution Density Diagram 
  7232.  o Statistics Diagram 
  7233.  o Time Line Diagram 
  7234.  o Hints for Using the Performance Analyzer 
  7235.  o Keys Help. 
  7236.  
  7237.  
  7238. ΓòÉΓòÉΓòÉ 17.6.3. Using Help Choice ΓòÉΓòÉΓòÉ
  7239.  
  7240. Select the Using help choice for a description of how to use the IBM 
  7241. Performance Analyzer Help facility. This choice is available from the Help menu 
  7242. of the Dynamic Call Graph. 
  7243.  
  7244. Related Information 
  7245.  
  7246.  o Call Nesting Diagram 
  7247.  o Dynamic Call Graph 
  7248.  o Execution Density Diagram 
  7249.  o Statistics Diagram 
  7250.  o Time Line Diagram 
  7251.  o Hints for Using the Performance Analyzer 
  7252.  o Keys Help. 
  7253.  
  7254.  
  7255. ΓòÉΓòÉΓòÉ 17.6.4. How Do I Choice ΓòÉΓòÉΓòÉ
  7256.  
  7257. Select the How do I choice to display the Performance Analyzer task help. This 
  7258. choice is available from the Help menu of the Dynamic Call Graph. 
  7259.  
  7260. Related Information 
  7261.  
  7262.  o Call Nesting Diagram 
  7263.  o Dynamic Call Graph 
  7264.  o Execution Density Diagram 
  7265.  o Statistics Diagram 
  7266.  o Time Line Diagram 
  7267.  o Hints for Using the Performance Analyzer 
  7268.  o Keys Help. 
  7269.  
  7270.  
  7271. ΓòÉΓòÉΓòÉ 17.6.5. Product Information ΓòÉΓòÉΓòÉ
  7272.  
  7273. Select the Product information choice to display copyright and version 
  7274. information about the Performance Analyzer application. This choice is 
  7275. available from the Help menu of the Dynamic Call Graph. 
  7276.  
  7277. Related Information 
  7278.  
  7279.  o Call Nesting Diagram 
  7280.  o Dynamic Call Graph 
  7281.  o Execution Density Diagram 
  7282.  o Statistics Diagram 
  7283.  o Time Line Diagram 
  7284.  o Hints for Using the Performance Analyzer 
  7285.  o Keys Help. 
  7286.  
  7287.  
  7288. ΓòÉΓòÉΓòÉ 17.7. Dynamic Call Graph Status Area ΓòÉΓòÉΓòÉ
  7289.  
  7290. The Status Area, located at the top of the window, describes the settings of 
  7291. the diagram. 
  7292.  
  7293. You can select the Status area... choice from the Options menu to change what 
  7294. appears in the area at the top of the Dynamic Call Graph window. 
  7295.  
  7296. When you select the Status area... choice, the Status Area window appears. 
  7297.  
  7298. The choices in the Status Area window include: 
  7299.  
  7300.  Trace description 
  7301.            Select to display the trace file description that was entered when 
  7302.            the file was created. 
  7303.  
  7304.            If a description was not attached to the trace file, this field is 
  7305.            empty. 
  7306.  
  7307.  Filters 
  7308.            Select to display the filter set with View > Nodes of. 
  7309.  
  7310.  Selected object 
  7311.            Select to display information about the selected node or arc. 
  7312.  
  7313.            Note:   If you highlight a node, the name of the component it 
  7314.            represents is displayed. If you highlight an arc, the names of the 
  7315.            components involved in the call are displayed. 
  7316.  
  7317.  Related Information 
  7318.  
  7319.  o Call Nesting Status Area 
  7320.  o Execution Density Status Area 
  7321.  o Time Line Status Area 
  7322.  o Keys Help 
  7323.  
  7324.  
  7325. ΓòÉΓòÉΓòÉ 17.8. Dynamic Call Graph Zoom Bar ΓòÉΓòÉΓòÉ
  7326.  
  7327. There are several ways to zoom in the Dynamic Call Graph window. 
  7328.  
  7329. When zooming in and out, the Dynamic Call Graph takes the selected node or arc 
  7330. that is highlighted, and uses it as the focal point. 
  7331.  
  7332. Zooming in the Dynamic Call Graph 
  7333.  
  7334. You can use the: 
  7335.  
  7336.  o Zoom in choice from the View menu to change the scale of the diagram view. 
  7337.  
  7338.    When zooming in, your view is a step closer to the selected object and the 
  7339.    object in the window appears larger. 
  7340.  
  7341.  o Zoom out choice from the View menu to change the diagram view. 
  7342.  
  7343.    When zooming out, your view is a step further away from the selected object 
  7344.    and the object in the window appears smaller. 
  7345.  
  7346.  o Zoom bar in the Dynamic Call Graph window by sliding the arm up or down, to 
  7347.    change the diagram view. 
  7348.  
  7349.  o Re-lay graph choice from the View menu to return to the original diagram 
  7350.    view. 
  7351.  
  7352.  o Overview choice from the View menu to quickly move around in the viewing 
  7353.    area of the diagram. 
  7354.  
  7355.    When using the Overview choice, you have a miniature version of the Dynamic 
  7356.    Call Graph window.  The gray box highlights the area currently in view in 
  7357.    the window. 
  7358.  
  7359.    Moving the small gray box around in the Overview window allows you to change 
  7360.    the view in the Dynamic Call Graph window quickly.  You can also grab the 
  7361.    sides of the gray box to resize the area being shown in the diagram window. 
  7362.  
  7363.    Related Information 
  7364.  
  7365.     - Zoom In Choice 
  7366.     - Zoom Out Choice 
  7367.     - Dynamic Call Graph 
  7368.     - Keys Help. 
  7369.  
  7370.  
  7371. ΓòÉΓòÉΓòÉ 17.9. Dynamic Call Graph Selected Arc Pop-up Menu ΓòÉΓòÉΓòÉ
  7372.  
  7373. The pop-up menus allow you to quickly access features that are frequently used. 
  7374.  
  7375. The Dynamic Call Graph Selected Arc Pop-up Menu contains actions that can be 
  7376. applied to a selected arc. 
  7377.  
  7378. To access the Dynamic Call Graph Selected Arc Pop-up Menu, click mouse button 2 
  7379. on an arc in the diagram. 
  7380.  
  7381. The menu is displayed with the following choices: 
  7382.  
  7383.  o Display information... 
  7384.  o Center. 
  7385.  
  7386.  Related Information 
  7387.  
  7388.  o Dynamic Call Graph Selected Node Pop-up Menu 
  7389.  o Keys Help. 
  7390.  
  7391.  
  7392. ΓòÉΓòÉΓòÉ 17.10. Dynamic Call Graph Selected Node Pop-up Menu ΓòÉΓòÉΓòÉ
  7393.  
  7394. The pop-up menus allow you to quickly access features that are frequently used. 
  7395.  
  7396. The Dynamic Call Graph Selected Node Pop-up Menu contains actions that can be 
  7397. applied to a selected node. 
  7398.  
  7399. To access the Dynamic Call Graph Selected Node Pop-up Menu, click 
  7400. mouse button2 on a node in the diagram. 
  7401.  
  7402. The menu is displayed with the following choices: 
  7403.  
  7404.  o Display information... 
  7405.  o Center 
  7406.  o Hide node 
  7407.  o Edit function. 
  7408.  
  7409.  Related Information 
  7410.  
  7411.  o Dynamic Call Graph Selected Arc Pop-up Menu 
  7412.  o Keys Help. 
  7413.  
  7414.  
  7415. ΓòÉΓòÉΓòÉ 17.11. Display Information... Choice ΓòÉΓòÉΓòÉ
  7416.  
  7417. The Display information... choice displays a window with information about a 
  7418. selected node or arc. 
  7419.  
  7420. To access the Display information... choice, click mouse button 2 on a node or 
  7421. an arc in the Dynamic Call Graph diagram. 
  7422.  
  7423. For nodes, the information window displayed depends on what type of component 
  7424. the selected node represents. 
  7425.  
  7426. You set the type of component the nodes represent by selecting View > Nodes of, 
  7427. and then selecting Functions, Classes (only selectable if you are analyzing a 
  7428. C++ program), or Executables. The Display information... choice displays the: 
  7429.  
  7430.  o Function Information Window when the nodes represent functions. 
  7431.  o Class Information Window when the nodes represent classes. 
  7432.  o Executable Information Window when the nodes represent executables. 
  7433.  
  7434.  For arcs, the Who Calls Whom window is displayed. 
  7435.  
  7436.  Related Information 
  7437.  
  7438.  o Keys Help. 
  7439.  
  7440.  
  7441. ΓòÉΓòÉΓòÉ 17.11.1. Dynamic Call Graph Function Information Window ΓòÉΓòÉΓòÉ
  7442.  
  7443. Use the Function Information window to display information about a selected 
  7444. function. 
  7445.  
  7446. When the Nodes of choice is set to Functions, you can display the Function 
  7447. Information window by either double-clicking on a node or clicking 
  7448. mouse button2 on a node, and then selecting Display information... from the 
  7449. pop-up menu. 
  7450.  
  7451. The following information is provided in the Function Information window: 
  7452.  
  7453.  o Function name 
  7454.  o Object file name 
  7455.  o Executable name 
  7456.  o Execution time 
  7457.  o Number of calls 
  7458.  o Time on stack 
  7459.  
  7460.  The following push buttons are also in the window: 
  7461.  
  7462.  Who calls me 
  7463.            Select this push button to display only the selected node, and the 
  7464.            node or nodes that called the selected node. To return to the 
  7465.            diagram, select Restore graph from the View menu. 
  7466.  Whom do I call 
  7467.            Select this push button to display only the selected node and the 
  7468.            nodes that the selected node calls. To return to the diagram, select 
  7469.            Restore graph from the View menu. 
  7470.  Cancel 
  7471.            Closes the window. 
  7472.  Help 
  7473.            Displays Help. 
  7474.  
  7475.  Note:   If the trace file does not have time stamps: 
  7476.  
  7477.  o The Execution Time and Time on stack will not be displayed. 
  7478.  o All nodes will be displayed in the same color and size, and the Scale node 
  7479.    sizes choice will be disabled. 
  7480.  
  7481.  Related Information 
  7482.  
  7483.  o Who Calls Whom Window 
  7484.  o Dynamic Call Graph 
  7485.  o Analyze Trace Window. 
  7486.  o Keys Help. 
  7487.  
  7488.  
  7489. ΓòÉΓòÉΓòÉ 17.11.2. Dynamic Call Graph Class Information Window ΓòÉΓòÉΓòÉ
  7490.  
  7491. Use the Class Information window to display information about a selected class. 
  7492.  
  7493. When the Nodes of choice is set to Classes, you can display the Class 
  7494. Information window by either double-clicking on a node or clicking 
  7495. mouse button2 on a node, and then selecting Display information... from the 
  7496. pop-up menu. 
  7497.  
  7498. The following information is provided in the Class Information window: 
  7499.  
  7500.  o Class name 
  7501.  o Names of member functions and their associated statistics 
  7502.  o Execution time 
  7503.  o Number of calls 
  7504.  
  7505.  The following push buttons are also in the window: 
  7506.  
  7507.  Who calls me 
  7508.            Select this push button to display only the selected node, and the 
  7509.            node or nodes that called the selected node. To return to the 
  7510.            diagram, select Restore graph from the View menu. 
  7511.  Whom do I call 
  7512.            Select this push button to display only the selected node and the 
  7513.            nodes that the selected node calls. To return to the diagram, select 
  7514.            Restore graph from the View menu. 
  7515.  Cancel 
  7516.            Closes the window. 
  7517.  Help 
  7518.            Displays Help. 
  7519.  
  7520.  Note:   If the trace file does not have time stamps: 
  7521.  
  7522.  o Execution time will not be displayed. 
  7523.  o All nodes will be displayed in the same color and size, and the Scale node 
  7524.    sizes choice will be disabled. 
  7525.  
  7526.  Related Information 
  7527.  
  7528.  o Who Calls Whom Window 
  7529.  o Dynamic Call Graph 
  7530.  o Analyze Trace Window 
  7531.  o Keys Help. 
  7532.  
  7533.  
  7534. ΓòÉΓòÉΓòÉ 17.11.3. Dynamic Call Graph Executable Information Window ΓòÉΓòÉΓòÉ
  7535.  
  7536. Use the Executable Information window to display information about a selected 
  7537. executable. 
  7538.  
  7539. When the Nodes of choice is set to Executables, you can display the Executable 
  7540. Information window by either double-clicking on a node or clicking 
  7541. mouse button2 on a node, and then selecting Display information... from the 
  7542. pop-up menu. 
  7543.  
  7544. The following information is provided in the Executable Information window: 
  7545.  
  7546.  o Executable name 
  7547.  o Member functions for the executable and associated data 
  7548.  o Execution time 
  7549.  o Number of calls 
  7550.  
  7551.  The following push buttons are also in the window: 
  7552.  
  7553.  Who calls me 
  7554.            Select this push button to display only the selected node, and the 
  7555.            node or nodes that called the selected node. To return to the 
  7556.            diagram, select Restore graph from the View menu. 
  7557.  Whom do I call 
  7558.            Select this push button to display only the selected node and the 
  7559.            nodes that the selected node calls. To return to the diagram, select 
  7560.            Restore graph from the View menu. 
  7561.  Cancel 
  7562.            Closes the window. 
  7563.  Help 
  7564.            Displays Help. 
  7565.  
  7566.  Note:   If the trace file does not have time stamps: 
  7567.  
  7568.  o Execution time will not be displayed. 
  7569.  o All nodes will be displayed in the same color and size, and the Scale node 
  7570.    sizes choice will be disabled. 
  7571.  
  7572.  Related Information 
  7573.  
  7574.  o Who Calls Whom Window 
  7575.  o Dynamic Call Graph 
  7576.  o Analyze Trace Window 
  7577.  o Keys Help. 
  7578.  
  7579.  
  7580. ΓòÉΓòÉΓòÉ 17.11.4. Dynamic Call Graph Who Calls Whom Window ΓòÉΓòÉΓòÉ
  7581.  
  7582. Use the Who Calls Whom window to display information about a selected arc. 
  7583.  
  7584. To display the Who Calls Whom window, either double-click on an arc or click 
  7585. mouse button2 on an arc, and then select Display information... from the pop-up 
  7586. menu. 
  7587.  
  7588. The Who Calls Whom window shows the name of the calling component (function, 
  7589. class, or executable), the called component, and the number of times the call 
  7590. was made. 
  7591.  
  7592. The window also contains the following push buttons: 
  7593.  
  7594.  Find caller 
  7595.            Selects and centers the node that makes the call represented by the 
  7596.            selected arc. 
  7597.  Find callee 
  7598.            Selects and centers the node that is called by the call represented 
  7599.            in the selected arc. 
  7600.  Cancel 
  7601.            Closes the window. 
  7602.  Help 
  7603.            Displays Help text. 
  7604.  
  7605.  Related Information 
  7606.  
  7607.  o Dynamic Call Graph Function Information Window 
  7608.  o Dynamic Call Graph 
  7609.  o Analyze Trace Window. 
  7610.  o Keys Help. 
  7611.  
  7612.  
  7613. ΓòÉΓòÉΓòÉ <hidden> Center Choice ΓòÉΓòÉΓòÉ
  7614.  
  7615. Select the Center choice to center the selected arc or node in the diagram 
  7616. window. 
  7617.  
  7618. Related Information 
  7619.  
  7620.  o Keys Help. 
  7621.  
  7622.  
  7623. ΓòÉΓòÉΓòÉ <hidden> Hide Node Choice ΓòÉΓòÉΓòÉ
  7624.  
  7625. Select the Hide node choice to remove the selected node and all arcs connected 
  7626. to it from the diagram. This choice makes it easier to select nodes on a busy 
  7627. graph. 
  7628.  
  7629. If only one node is displayed in the diagram, it cannot be removed. 
  7630.  
  7631. To show hidden nodes and arcs again, select View > Restore graph. 
  7632.  
  7633. Note:   If the Who Calls Whom or Who Calls Me push button is selected, hidden 
  7634. nodes and arcs related to the selected node will be displayed. 
  7635.  
  7636. Related Information 
  7637.  
  7638.  o Keys Help. 
  7639.  
  7640.  
  7641. ΓòÉΓòÉΓòÉ 18. Execution Density Diagram ΓòÉΓòÉΓòÉ
  7642.  
  7643. The Execution Density diagram shows trends of program execution by displaying 
  7644. the trace data chronologically from top to bottom as thin horizontal lines of 
  7645. various colors in different columns. The following list describes the diagram 
  7646. components: 
  7647.  
  7648.  o Each vertical column represents a function. 
  7649.  o The thickness of each line represents a unit of time called a time slice. 
  7650.  o The color of each line represents the percentage of program execution time 
  7651.    spent in the given function for that time slice. 
  7652.  
  7653.  Note:   Only selected threads are used in calculating this percentage. 
  7654.  
  7655.  For instance, in the default setting, functions executing more than 50% of a 
  7656.  given time slice have a red line drawn in the appropriate column at the 
  7657.  vertical location corresponding to the time slice. 
  7658.  
  7659.  See Color window for more information about how the color is determined and 
  7660.  how you can change the colors and percentage that are used. 
  7661.  
  7662.  The trace is displayed at 100% magnification.  You can magnify or filter the 
  7663.  diagram to change the amount of detail displayed. 
  7664.  
  7665.  See Filters for more information about filtering and magnifying. 
  7666.  
  7667.  Note: 
  7668.  
  7669.   1. When a thread switch occurs in the Execution Density diagram, the time 
  7670.      between the last recorded event in the previous thread and the first event 
  7671.      in the new thread will be allotted to the previous thread. 
  7672.  
  7673.   2. Events that take small amounts of time might be hard to distinguish until 
  7674.      the magnification has been increased. See Filters for more information 
  7675.      about changing the scale of the pages. 
  7676.  
  7677.  Areas of the Execution Density Window 
  7678.  
  7679.  The following topics describe the areas of the Execution Density diagram: 
  7680.  
  7681.  o Menu Bar Summary 
  7682.  
  7683.    The choices available from the Execution Density diagram menu bar are: 
  7684.  
  7685.     - Trace file 
  7686.  
  7687.     - Edit 
  7688.  
  7689.     - View 
  7690.  
  7691.     - Options 
  7692.  
  7693.     - Project 
  7694.  
  7695.     - Help. 
  7696.  
  7697.  o Status Area 
  7698.  
  7699.    The Status Area provides information about the following: 
  7700.  
  7701.     - Trace description 
  7702.     - Time slice 
  7703.     - Selected region 
  7704.     - Filters 
  7705.     - Selected object. 
  7706.  
  7707.  o Current Column Indicator 
  7708.  o Vertical Ruler 
  7709.  o Execution Density Pop-up Menus 
  7710.  
  7711.     - Execution Density Diagram Pop-up Menu. 
  7712.     - Execution Density Selected Item Pop-up Menu. 
  7713.  
  7714.  Related Information 
  7715.  
  7716.  o Call Nesting Diagram 
  7717.  o Dynamic Call Graph 
  7718.  o Statistics Diagram 
  7719.  o Time Line Diagram 
  7720.  o Hints for Using the Performance Analyzer 
  7721.  o Keys Help. 
  7722.  
  7723.  
  7724. ΓòÉΓòÉΓòÉ 18.1. Execution Density Trace File Menu ΓòÉΓòÉΓòÉ
  7725.  
  7726. The following choices are available from the Execution Density Trace file menu: 
  7727.  
  7728.  Open as > 
  7729.            Shows a new or an additional diagram. 
  7730.  
  7731.  Printer settings... 
  7732.            Allows you to choose printer settings for your output. 
  7733.  
  7734.  Print selected region... 
  7735.            Prints a selected area of the diagram. 
  7736.  
  7737.  Window Manager 
  7738.            Displays the Window Manager. 
  7739.  
  7740.  Exit the Performance Analyzer 
  7741.            Exits the Performance Analyzer. 
  7742.  
  7743.  Related Information 
  7744.  
  7745.  o Analyze Trace Window 
  7746.  o Call Nesting Diagram 
  7747.  o Dynamic Call Graph 
  7748.  o Statistics Diagram 
  7749.  o Time Line Diagram 
  7750.  o Keys Help. 
  7751.  
  7752.  
  7753. ΓòÉΓòÉΓòÉ 18.1.1. Open As Cascading Choice ΓòÉΓòÉΓòÉ
  7754.  
  7755. Select the Open as choice to view another diagram. You can open as many new 
  7756. diagram windows as you want. 
  7757.  
  7758. To select a new diagram: 
  7759.  
  7760.   1. Select Open as from the Trace file menu. A cascaded menu is displayed with 
  7761.      the following choices: 
  7762.  
  7763.     Call Nesting 
  7764.     Dynamic Call Graph 
  7765.     Execution Density 
  7766.     Statistics 
  7767.     Time Line 
  7768.  
  7769.   2. Select the name of the diagram you want to view. A new window opens and 
  7770.      displays the diagram you selected. 
  7771.  
  7772.  Related Information 
  7773.  
  7774.  o Using the Analyze Trace Window 
  7775.  o Keys Help. 
  7776.  
  7777.  
  7778. ΓòÉΓòÉΓòÉ 18.1.1.1. Call Nesting Choice ΓòÉΓòÉΓòÉ
  7779.  
  7780. The Call Nesting choice is available from the Open as cascaded menu. When you 
  7781. select Call Nesting, the Call Nesting Diagram displays. 
  7782.  
  7783. Related Information 
  7784.  
  7785.  o Open As Choice 
  7786.  o Keys Help. 
  7787.  
  7788.  
  7789. ΓòÉΓòÉΓòÉ 18.1.1.2. Dynamic Call Graph Choice ΓòÉΓòÉΓòÉ
  7790.  
  7791. The Dynamic Call Graph choice is available from the Open as cascaded menu. When 
  7792. you select Dynamic Call Graph, the Dynamic Call Graph displays. 
  7793.  
  7794. Related Information 
  7795.  
  7796.  o Open As Choice 
  7797.  o Keys Help. 
  7798.  
  7799.  
  7800. ΓòÉΓòÉΓòÉ 18.1.1.3. Execution Density Choice ΓòÉΓòÉΓòÉ
  7801.  
  7802. The Execution Density choice is available from the Open as cascaded menu. When 
  7803. you select Execution Density, the Execution Density Diagram diagram displays. 
  7804.  
  7805. Related Information 
  7806.  
  7807.  o Open As Choice 
  7808.  o Keys Help. 
  7809.  
  7810.  
  7811. ΓòÉΓòÉΓòÉ 18.1.1.4. Statistics Choice ΓòÉΓòÉΓòÉ
  7812.  
  7813. The Statistics choice is available from the Open as cascaded menu. When you 
  7814. select Statistics, the Statistics Diagram  displays. 
  7815.  
  7816. Related Information 
  7817.  
  7818.  o Open As Choice 
  7819.  o Keys Help. 
  7820.  
  7821.  
  7822. ΓòÉΓòÉΓòÉ 18.1.1.5. Time Line Choice ΓòÉΓòÉΓòÉ
  7823.  
  7824. The Time Line choice is available from the Open as cascaded menu. When you 
  7825. select Time Line, the Time Line  diagram displays. 
  7826.  
  7827. Related Information 
  7828.  
  7829.  o Open As Choice 
  7830.  o Keys Help. 
  7831.  
  7832.  
  7833. ΓòÉΓòÉΓòÉ 18.1.2. Printer Settings... Choice ΓòÉΓòÉΓòÉ
  7834.  
  7835. Select the Printer settings... choice to select settings for your print jobs. 
  7836.  
  7837. When you select the Printer settings... choice, the Printer Settings window 
  7838. appears. 
  7839.  
  7840.  o OK 
  7841.  o Font... 
  7842.  o Job properties... 
  7843.  o Cancel 
  7844.  o Help 
  7845.  
  7846.  Related Information 
  7847.  
  7848.  o Keys Help. 
  7849.  
  7850.  
  7851. ΓòÉΓòÉΓòÉ 18.1.3. Print Selected Region... Choice ΓòÉΓòÉΓòÉ
  7852.  
  7853. Select the Print selected region... choice to print a selected area of the 
  7854. Execution Density diagram. 
  7855.  
  7856. To print an area of the Execution Density diagram, highlight the area and then 
  7857. select this choice from the Trace file menu. The Print Selected Region window 
  7858. appears. 
  7859.  
  7860. Related Information 
  7861.  
  7862.  o Keys Help. 
  7863.  
  7864.  
  7865. ΓòÉΓòÉΓòÉ 18.1.4. Window Manager Choice ΓòÉΓòÉΓòÉ
  7866.  
  7867. Select the Window Manager choice to display the Window Manager window. 
  7868.  
  7869. Related Information 
  7870.  
  7871.  o Performance Analyzer - Window Manager 
  7872.  o Keys Help. 
  7873.  
  7874.  
  7875. ΓòÉΓòÉΓòÉ 18.1.5. Exit the Performance Analyzer ΓòÉΓòÉΓòÉ
  7876.  
  7877. Select Exit the Performance Analyzer to close the Performance Analyzer and all 
  7878. the active windows. 
  7879.  
  7880. Related Information 
  7881.  
  7882.  o Keys Help. 
  7883.  
  7884.  
  7885. ΓòÉΓòÉΓòÉ 18.2. Execution Density Edit Menu ΓòÉΓòÉΓòÉ
  7886.  
  7887. The Edit menu allows you to locate and change text in the Execution Density 
  7888. diagram. 
  7889.  
  7890. Items you can select from this menu include the following: 
  7891.  
  7892.  Find function... 
  7893.            Search for a function. 
  7894.  
  7895.  Find next 
  7896.            Find the next occurrence of the last item you searched for. 
  7897.  
  7898.  Select time... 
  7899.            Go to a specific time in the diagram. 
  7900.  
  7901.  Select time range... 
  7902.            Select a specified time range in the diagram. 
  7903.  
  7904.  Select all 
  7905.            Select the entire Execution Density diagram. 
  7906.  
  7907.  Related Information 
  7908.  
  7909.  o Call Nesting Diagram 
  7910.  o Dynamic Call Graph 
  7911.  o Statistics Diagram 
  7912.  o Time Line Diagram 
  7913.  o Keys Help. 
  7914.  
  7915.  
  7916. ΓòÉΓòÉΓòÉ 18.2.1. Find Function... Choice ΓòÉΓòÉΓòÉ
  7917.  
  7918. Select the Find function... choice to search for a function call or return. 
  7919.  
  7920. When you select the Find function... choice, the Find Function window appears. 
  7921.  
  7922. Related Information 
  7923.  
  7924.  o Execution Density Diagram Pop-up Menu 
  7925.  o Keys Help. 
  7926.  
  7927.  
  7928. ΓòÉΓòÉΓòÉ <hidden> Find Function Window ΓòÉΓòÉΓòÉ
  7929.  
  7930. Use the Find function window to search for a specific function in the diagram. 
  7931. You can choose to search when the function was called or returned. 
  7932.  
  7933. To search for a function call or return: 
  7934.  
  7935.   1. Enter the function name in the Find entry field. If you don't know the 
  7936.      function name, you can use wildcard characters (* and ?) in the entry 
  7937.      field, as follows: 
  7938.  
  7939.     o Use an asterisk (*) to represent 0 or more arbitrary characters. For 
  7940.       example, enter: 
  7941.  
  7942.        - * to display a list of all function names. 
  7943.        - b* to display all function names, regardless of length, that begin 
  7944.          with the letter b. 
  7945.        - *b to display all function names that end with the letter b. 
  7946.  
  7947.     o Use a question mark (?) to represent a single arbitrary character. For 
  7948.       example, enter ?b* to display all function names that start with any 
  7949.       character and have the letter b as their second character. 
  7950.  
  7951.       Note:   Wildcards are especially useful when you are searching for a 
  7952.       fully qualified C++ function name (for example, myClass:: 
  7953.       function[parameter] ). 
  7954.  
  7955.   2. Click on the Case sensitive check box if you want to enable case sensitive 
  7956.      searching. 
  7957.  
  7958.   3. Click on the OK push button. 
  7959.  
  7960.   4. Click on the name of a function in the list box. 
  7961.  
  7962.   5. Select the thread that you want searched. 
  7963.  
  7964.   6. Click on the appropriate radio button to search for occurrences of when 
  7965.      the function was: 
  7966.  
  7967.     o Called 
  7968.     o Returned 
  7969.     o Either called or returned. 
  7970.  
  7971.   7. Select the appropriate push button to continue: 
  7972.  
  7973.     o OK 
  7974.     o Cancel 
  7975.     o Help. 
  7976.  
  7977.      Note:   The function is highlighted when found. 
  7978.  
  7979.  Related Information 
  7980.  
  7981.  o Find Next Choice 
  7982.  o Keys Help. 
  7983.  
  7984.  
  7985. ΓòÉΓòÉΓòÉ 18.2.2. Find Next Choice ΓòÉΓòÉΓòÉ
  7986.  
  7987. Select the Find next choice to locate the next occurrence of the searched text. 
  7988.  
  7989. To find the next occurrence, select Find next from the Edit menu. The string is 
  7990. highlighted when found. A message box appears if the string cannot be found. 
  7991.  
  7992. Related Information 
  7993.  
  7994.  o Execution Density Diagram Pop-up Menu 
  7995.  o Keys Help. 
  7996.  
  7997.  
  7998. ΓòÉΓòÉΓòÉ 18.2.3. Select Time... Choice ΓòÉΓòÉΓòÉ
  7999.  
  8000. Select the Select time... choice to go to a specific time in the diagram. When 
  8001. you select the Select time... choice, the Select Time window appears. 
  8002.  
  8003. Related Information 
  8004.  
  8005.  o Select Time Range Window 
  8006.  o Analyze Trace Window 
  8007.  o Keys Help. 
  8008.  
  8009.  
  8010. ΓòÉΓòÉΓòÉ <hidden> Select Time Window ΓòÉΓòÉΓòÉ
  8011.  
  8012. Use the Select Time window to go to a specific time in the diagram. 
  8013.  
  8014. Going to a Specific Time 
  8015.  
  8016. To select the time: 
  8017.  
  8018.   1. Select the appropriate radio button: 
  8019.  
  8020.     o seconds (s) 
  8021.     o milliseconds (ms) 
  8022.     o microseconds (us) 
  8023.  
  8024.   2. Use the spin buttons to select the time you want to display. 
  8025.  
  8026.   3. Select the appropriate push button to continue: 
  8027.  
  8028.     o OK 
  8029.     o Cancel 
  8030.     o Help. 
  8031.  
  8032.  Related Information 
  8033.  
  8034.  o Select Time Range Window 
  8035.  o Call Nesting Diagram 
  8036.  o Execution Density Diagram 
  8037.  o Time Line Diagram 
  8038.  o Keys Help. 
  8039.  
  8040.  
  8041. ΓòÉΓòÉΓòÉ 18.2.4. Select Time Range... Choice ΓòÉΓòÉΓòÉ
  8042.  
  8043. Select the Select time range... choice to chose to view a specific time period. 
  8044.  
  8045. When you select the Select time range... choice, the Select Time Range window 
  8046. appears. 
  8047.  
  8048. Related Information 
  8049.  
  8050.  o Select Time Window 
  8051.  o Analyze Trace Window 
  8052.  o Keys Help. 
  8053.  
  8054.  
  8055. ΓòÉΓòÉΓòÉ <hidden> Select Time Range Window ΓòÉΓòÉΓòÉ
  8056.  
  8057. Use the Select Time Range window to view a specific period of time. 
  8058.  
  8059. Selecting Time Periods 
  8060.  
  8061. To select the time period: 
  8062.  
  8063.   1. In the Start time list box, use the spin buttons to select the start time 
  8064.      you want to highlight. 
  8065.  
  8066.   2. To select the time, select the appropriate radio button: 
  8067.  
  8068.     o seconds (s), 
  8069.     o milliseconds (ms), 
  8070.     o microseconds (us). 
  8071.  
  8072.   3. In the End time list box, use the spin buttons to select the end time, 
  8073.      where the highlight will stop. 
  8074.  
  8075.   4. To select the time, select the appropriate radio button: 
  8076.  
  8077.     o seconds (s), 
  8078.     o milliseconds (ms), 
  8079.     o microseconds (us). 
  8080.  
  8081.   5. Select the appropriate push button to continue: 
  8082.  
  8083.     o OK 
  8084.     o Cancel 
  8085.     o Help. 
  8086.  
  8087.  Related Information 
  8088.  
  8089.  o Call Nesting Diagram 
  8090.  o Execution Density Diagram 
  8091.  o Time Line Diagram 
  8092.  o Analyze Trace Window 
  8093.  o Select Time Window 
  8094.  o Keys Help. 
  8095.  
  8096.  
  8097. ΓòÉΓòÉΓòÉ 18.2.5. Select All Choice ΓòÉΓòÉΓòÉ
  8098.  
  8099. Select the Select all choice to highlight the entire diagram. To remove the 
  8100. highlighting, select a specific function. 
  8101.  
  8102. Related Information 
  8103.  
  8104.  o Select Time Window 
  8105.  o Select Time Range Window 
  8106.  o Keys Help. 
  8107.  
  8108.  
  8109. ΓòÉΓòÉΓòÉ 18.3. Execution Density View Menu ΓòÉΓòÉΓòÉ
  8110.  
  8111. The choices available from the View menu are: 
  8112.  
  8113.  Zoom in 
  8114.            Magnifies the Execution Density diagram to view a region of 
  8115.            interest. 
  8116.  
  8117.  Zoom out 
  8118.            Reduces the Execution Density diagram. 
  8119.  
  8120.  Zoom to selected range 
  8121.            Magnifies an area of interest. 
  8122.  
  8123.  Scale pages... 
  8124.            Controls the number of pages the diagram uses. 
  8125.  
  8126.  Include functions... 
  8127.            Isolates specific functions to view in your program. 
  8128.  
  8129.  Include threads... 
  8130.            Selects which threads are displayed in the diagram. 
  8131.  
  8132.  Related Information 
  8133.  
  8134.  o Call Nesting Diagram 
  8135.  o Dynamic Call Graph 
  8136.  o Statistics Diagram 
  8137.  o Time Line Diagram 
  8138.  o Keys Help. 
  8139.  
  8140.  
  8141. ΓòÉΓòÉΓòÉ 18.3.1. Zoom In Choice ΓòÉΓòÉΓòÉ
  8142.  
  8143. Select the Zoom In choice to magnify the Execution Density diagram. 
  8144.  
  8145. Selecting the Zoom In choice will magnify the Execution Density diagram by a 
  8146. factor of 5. The point in the trace file at the top of the current page will 
  8147. remain fixed, resulting in the view changing to show the top one fifth of the 
  8148. previously displayed page. If the diagram is already scaled to its maximum, 
  8149. this choice will be disabled. 
  8150.  
  8151. Note:   If the diagram is scaled within a factor of 5 of the maximum 
  8152. magnification, this choice will bring the diagram to its full magnification. 
  8153.  
  8154. The Zoom In choice is offered in both the View menu and the Execution Density 
  8155. Diagram Pop-up Menu Also, pressing the + key on the numeric key pad or Shift 
  8156. and the + key on the keyboard will perform the same function. 
  8157.  
  8158. Related Information 
  8159.  
  8160.  o Zoom Out Choice 
  8161.  o Zoom to Selected Range Choice 
  8162.  o Execution Density Selected Item Pop-up Menu 
  8163.  o Keys Help. 
  8164.  
  8165.  
  8166. ΓòÉΓòÉΓòÉ 18.3.2. Zoom Out Choice ΓòÉΓòÉΓòÉ
  8167.  
  8168. Select the Zoom Out choice to reduce the magnification of the Execution Density 
  8169. diagram. 
  8170.  
  8171. Selecting the Zoom Out choice will decrease the magnification of the Execution 
  8172. Density diagram by a factor of 5.  The point in the trace file at the top of 
  8173. the current page will remain fixed, resulting in the view changing to display 
  8174. the previously displayed page in the top one fifth of the new view.  If 
  8175. necessary, the diagram will adjust to ensure that time past the end of the 
  8176. trace file is not displayed. If the diagram is already scaled to its minimum 
  8177. magnification, this choice will be disabled. 
  8178.  
  8179. Note:   If the diagram is scaled within a factor of 5 of the minimum 
  8180. magnification, this choice will bring the diagram to a full 100 % view. 
  8181.  
  8182. The Zoom out choice is offered in both the View menu and the Execution Density 
  8183. pop-up menu. Also, pressing the minus key (-) on the numeric key pad or Shift 
  8184. and the - key on the keyboard will perform the same function. 
  8185.  
  8186. Related Information 
  8187.  
  8188.  o Zoom In Choice 
  8189.  o Zoom to Selected Range Choice 
  8190.  o Execution Density Selected Item Pop-up Menu 
  8191.  o Keys Help. 
  8192.  
  8193.  
  8194. ΓòÉΓòÉΓòÉ 18.3.3. Zoom to Selected Range Choice ΓòÉΓòÉΓòÉ
  8195.  
  8196. Select the Zoom to selected range choice to magnify an area of interest in the 
  8197. Execution Density diagram. 
  8198.  
  8199. To magnify a range of interest, highlight the range using the mouse or the 
  8200. Select time range... choice and select Zoom to selected range from the View 
  8201. menu. The scale of the diagram will be expanded so that the highlighted area 
  8202. fills the entire display. 
  8203.  
  8204. Note:   When the magnification is at its maximum, the choice will be disabled. 
  8205. Also, if it is impossible to magnify the diagram to the degree required to 
  8206. stretch the highlighted region across the entire diagram, the highest possible 
  8207. magnification will be used. 
  8208.  
  8209. Shortcut Method 
  8210.  
  8211. After highlighting the area of interest, use mouse button 2 to click on the 
  8212. highlighted area.  From the displayed Selected Item Pop-up Menu, choose Zoom to 
  8213. selected range. 
  8214.  
  8215. Related Information 
  8216.  
  8217.  o Zoom In Choice 
  8218.  o Zoom Out Choice 
  8219.  o Execution Density Selected Item Pop-up Menu 
  8220.  o Keys Help. 
  8221.  
  8222.  
  8223. ΓòÉΓòÉΓòÉ 18.3.4. Scale Pages... Choice ΓòÉΓòÉΓòÉ
  8224.  
  8225. Select the Scale pages... choice to choose how many pages you want used to 
  8226. display the diagram. When you select the Scale pages... choice, a Scale pages 
  8227. window appears. 
  8228.  
  8229. Related Information 
  8230.  
  8231.  o Analyze Trace Window 
  8232.  o Execution Density Diagram Pop-up Menu 
  8233.  o Keys Help. 
  8234.  
  8235.  
  8236. ΓòÉΓòÉΓòÉ <hidden> Scale Pages Window ΓòÉΓòÉΓòÉ
  8237.  
  8238. Use the Scale Pages window to choose how much time is shown in the time slice. 
  8239. When you allow more pages, the diagram shows more detailed information. When 
  8240. you reduce the pages, the diagram shows less detailed information. 
  8241.  
  8242. Note:   Scaling adjusts the number that you select to get an integral number of 
  8243. full screens. 
  8244.  
  8245. The Performance Analyzer shows the total execution time for your program above 
  8246. the slider. Beneath the slider, it shows the current page size based on the 
  8247. size of the current window. 
  8248.  
  8249. The page size is determined by the height and width of the current window. 
  8250.  
  8251. Scaling the Pages 
  8252.  
  8253. To scale the pages in the diagram, do the following: 
  8254.  
  8255.   1. Use the slider to set the number of pages: 
  8256.  
  8257.     o Move the slider arm to the Maximum position to increase the number of 
  8258.       pages in the diagram. 
  8259.     o Move the slider arm to the Minimum position to decrease the number of 
  8260.       pages in the diagram. 
  8261.  
  8262.       Note:   When you move the slider arm, the page number changes to show the 
  8263.       new selection. Additionally, the Tics per row and Approximate time slice 
  8264.       values change to display the new settings. 
  8265.  
  8266.   2. Select the appropriate push button to continue: 
  8267.  
  8268.     o OK 
  8269.     o Cancel 
  8270.     o Help. 
  8271.  
  8272.  Related Information 
  8273.  
  8274.  o Analyze Trace Window 
  8275.  o Execution Density Diagram 
  8276.  o Time Line Diagram. 
  8277.  o Keys Help. 
  8278.  
  8279.  
  8280. ΓòÉΓòÉΓòÉ 18.3.5. Include Functions... Choice ΓòÉΓòÉΓòÉ
  8281.  
  8282. Select the Include functions... choice to isolate specific functions to view in 
  8283. your program. This choice filters the trace file allowing you to isolate 
  8284. specific areas of interest or areas where problems are occurring. 
  8285.  
  8286. When you select the Include functions... choice, an Include Functions window 
  8287. appears. 
  8288.  
  8289. Related Information 
  8290.  
  8291.  o Analyze Trace Window 
  8292.  o Execution Density Diagram Pop-up Menu 
  8293.  o Keys Help. 
  8294.  
  8295.  
  8296. ΓòÉΓòÉΓòÉ <hidden> Include Functions Window ΓòÉΓòÉΓòÉ
  8297.  
  8298. Use the Include Functions window to isolate specific functions or view all 
  8299. functions. This window filters the trace file allowing you to isolate specific 
  8300. areas of interest or areas where problems are occurring. 
  8301.  
  8302. Isolating Specific Functions 
  8303.  
  8304. To include functions: 
  8305.  
  8306.   1. To include a specific function, select the Deselect all push button. 
  8307.  
  8308.   2. Scroll the list to find the function or functions you want displayed. 
  8309.  
  8310.   3. Select each function you want displayed. 
  8311.  
  8312.   4. Select the appropriate push button to continue: 
  8313.  
  8314.     o OK 
  8315.     o Cancel 
  8316.     o Help 
  8317.  
  8318.  Viewing All Functions 
  8319.  
  8320.   1. To select all functions, select the Select all push button. 
  8321.  
  8322.   2. Select the appropriate push button to continue: 
  8323.  
  8324.     o OK 
  8325.     o Cancel 
  8326.     o Help 
  8327.  
  8328.  Related Information 
  8329.  
  8330.  o Call Nesting Diagram 
  8331.  o Execution Density Diagram 
  8332.  o Dynamic Call Graph 
  8333.  o Analyze Trace Window. 
  8334.  o Keys Help. 
  8335.  
  8336.  
  8337. ΓòÉΓòÉΓòÉ 18.3.6. Include Threads... Choice ΓòÉΓòÉΓòÉ
  8338.  
  8339. Select the Include threads... choice to select which threads are displayed in 
  8340. the diagram. 
  8341.  
  8342. When you select the Include threads... choice, an Include Threads window 
  8343. appears. The Include Threads window allows you to isolate specific threads in 
  8344. your program or show all threads. This choice filters the trace file allowing 
  8345. you to isolate specific areas of interest or areas where problems are 
  8346. occurring. 
  8347.  
  8348. Related Information 
  8349.  
  8350.  o Analyze Trace Window 
  8351.  o Execution Density Diagram Pop-up Menu 
  8352.  o Keys Help. 
  8353.  
  8354.  
  8355. ΓòÉΓòÉΓòÉ 18.3.6.1. Include Threads Window ΓòÉΓòÉΓòÉ
  8356.  
  8357. Use the Include Threads window to select or isolate specific threads. 
  8358.  
  8359. Use the mouse to highlight your thread selection. You can choose a particular 
  8360. thread or all threads. 
  8361.  
  8362. Select Options > Color... to see the range of execution times represented by 
  8363. the colors of the lines in the diagram. 
  8364.  
  8365. Note:   The percentages of execution time are based upon the total execution 
  8366. time of the selected threads, not the total execution time. When you change 
  8367. threads you affect the percentages. 
  8368.  
  8369. Selecting Specific Threads 
  8370.  
  8371. To select a specific thread: 
  8372.  
  8373.   1. Select the specific threads you want to display. 
  8374.  
  8375.   2. Select the appropriate push button to continue: 
  8376.  
  8377.     o OK 
  8378.     o Select all 
  8379.     o Deselect all 
  8380.     o Cancel 
  8381.     o Help. 
  8382.  
  8383.  Selecting All Threads 
  8384.  
  8385.  To select all threads: 
  8386.  
  8387.   1. Highlight All threads to select all threads. 
  8388.  
  8389.   2. Select the appropriate push button to continue: 
  8390.  
  8391.     o OK 
  8392.     o Select all 
  8393.     o Deselect all 
  8394.     o Cancel 
  8395.     o Help 
  8396.  
  8397.  Related Information 
  8398.  
  8399.  o Dynamic Call Graph 
  8400.  o Execution Density Diagram 
  8401.  o Analyze Trace Window 
  8402.  o Keys Help. 
  8403.  
  8404.  
  8405. ΓòÉΓòÉΓòÉ 18.4. Execution Density Options Menu ΓòÉΓòÉΓòÉ
  8406.  
  8407. The Options menu allows you to customize the Execution Density diagram and 
  8408. display additional information. 
  8409.  
  8410. The following choices are available from the Options menu: 
  8411.  
  8412.  Color... 
  8413.            Selects the colors used to display the percentage of time used by 
  8414.            each function and the percentage of time each color represents. 
  8415.  
  8416.  Column width... 
  8417.            Controls the width (in pixels) for each function column in the 
  8418.            diagram. 
  8419.  
  8420.  Correlation... 
  8421.            Synchronizes other diagrams to display the same highlighted region. 
  8422.  
  8423.  Status area... 
  8424.            Control the gray area at the top of the window. 
  8425.  
  8426.  Tool bar > 
  8427.            Use the tool bar for a shortcut to other menus. 
  8428.  
  8429.  Settings > 
  8430.            Saves the current settings or restores the defaults. 
  8431.  
  8432.  Related Information 
  8433.  
  8434.  o Call Nesting Diagram 
  8435.  o Dynamic Call Graph 
  8436.  o Statistics Diagram 
  8437.  o Time Line Diagram 
  8438.  o Keys Help. 
  8439.  
  8440.  
  8441. ΓòÉΓòÉΓòÉ 18.4.1. Color... Choice ΓòÉΓòÉΓòÉ
  8442.  
  8443. Select the Color... choice to control the colors that are used in the diagram, 
  8444. and their meaning. Each color represents a range of percentages consumed by a 
  8445. function, across all threads, in a single time slice. When you select the 
  8446. Color... choice, a Color window displays. 
  8447.  
  8448. Related Information 
  8449.  
  8450.  o Execution Density Diagram Pop-up Menu 
  8451.  o Keys Help. 
  8452.  
  8453.  
  8454. ΓòÉΓòÉΓòÉ <hidden> Color Window ΓòÉΓòÉΓòÉ
  8455.  
  8456. Use the Color window to show the current colors and time slices. For each 
  8457. color, a value is displayed to the left that shows the amount of time the color 
  8458. represents. 
  8459.  
  8460.  Color             Percent range 
  8461.  Blue              0 to 1.9 
  8462.  Dark cyan         2 to 4.9 
  8463.  Cyan              5 to 9.9 
  8464.  Pale gray         10 to 24.9 
  8465.  Pink              25 to 49.9 
  8466.  Red               50 to 100 
  8467.  You can change the color and the percentage of time each color represents. 
  8468.  
  8469.  Setting Time Slice Colors 
  8470.  
  8471.  To change the colors used, do the following: 
  8472.  
  8473.   1. Select a spin button under Threshold Percentages to change the percentage 
  8474.      of time that each color represents. 
  8475.  
  8476.   2. Select a spin button to the right of the color fields to change the 
  8477.      colors. 
  8478.  
  8479.   3. Select the appropriate push button to continue: 
  8480.  
  8481.     o OK 
  8482.     o Cancel 
  8483.     o Help 
  8484.  
  8485.   4. To restore the initial defaults, select the Settings choice from the 
  8486.      Options menu, then select Restore initial defaults. 
  8487.  
  8488.  Related Information 
  8489.  
  8490.  o Execution Density Diagram. 
  8491.  o Hints for Using the Performance Analyzer 
  8492.  o Keys Help. 
  8493.  
  8494.  
  8495. ΓòÉΓòÉΓòÉ 18.4.2. Column Width... Choice ΓòÉΓòÉΓòÉ
  8496.  
  8497. Select the Column width... choice to change the width of the displayed columns. 
  8498. This width can vary between 3 and 32, and the default is 16. Using this choice, 
  8499. along with changing the Scale Pages dialog, can either bring fine details into 
  8500. broader view, or allow you to see larger patterns and more information. 
  8501.  
  8502. When you select the Column width... choice, the Column Width window appears. 
  8503.  
  8504. Related Information 
  8505.  
  8506.  o Execution Density Diagram Pop-up Menu 
  8507.  o Keys Help. 
  8508.  
  8509.  
  8510. ΓòÉΓòÉΓòÉ <hidden> Column Width Window ΓòÉΓòÉΓòÉ
  8511.  
  8512. Use the Column Width window to choose the width of the displayed columns. Use 
  8513. this window to enhance the display and see the details of the trace file. 
  8514.  
  8515. Changing the Columns Width 
  8516.  
  8517. To change the width of the columns: 
  8518.  
  8519.   1. Use the spin buttons to change the numbers. You can set the number between 
  8520.      3 and 32 pixels per column. The default is 16. Select the top spin button 
  8521.      to increase the value and select the bottom spin button to decrease the 
  8522.      value. 
  8523.  
  8524.   2. Select the appropriate push button to continue: 
  8525.  
  8526.     o OK 
  8527.     o Cancel 
  8528.     o Help. 
  8529.  
  8530.  Related Information 
  8531.  
  8532.  o Execution Density Diagram. 
  8533.  o Keys Help. 
  8534.  
  8535.  
  8536. ΓòÉΓòÉΓòÉ 18.4.3. Correlation... Choice ΓòÉΓòÉΓòÉ
  8537.  
  8538. Select the Correlation... choice to mark a point in time in the Call Nesting 
  8539. diagram, Execution Density diagram, or Time Line diagram and then find that 
  8540. same point in another Call Nesting diagram, Execution Density diagram, or Time 
  8541. Line diagram. You can correlate more than two diagrams at a time. 
  8542.  
  8543. When you select the Correlation... choice, the Correlation window appears. 
  8544.  
  8545. Related Information 
  8546.  
  8547.  o Execution Density Selected Item Pop-up Menu 
  8548.  o Analyze Trace Window 
  8549.  o Keys Help. 
  8550.  
  8551.  
  8552. ΓòÉΓòÉΓòÉ 18.4.4. Status Area... Choice ΓòÉΓòÉΓòÉ
  8553.  
  8554. Select the Status area... choice to control the area at the top of the window. 
  8555. When you select the Status area... choice, the Status Area window appears. 
  8556.  
  8557. Related Information 
  8558.  
  8559.  o Execution Density Status Area 
  8560.  o Keys Help. 
  8561.  
  8562.  
  8563. ΓòÉΓòÉΓòÉ <hidden> Execution Density Status Area Window ΓòÉΓòÉΓòÉ
  8564.  
  8565. Use the Status Area window to control the area at the top of the window. 
  8566.  
  8567. The check boxes represent the choices in the Status Area that you can show or 
  8568. hide. When you disable the check box the choice is hidden. Likewise, when you 
  8569. enable the check box the choice displays in the Status Area. 
  8570.  
  8571. In each diagram the Status Area displays different information. When you select 
  8572. the Status Area window, the choices in the window change based upon the Status 
  8573. Area of the diagram. 
  8574.  
  8575. Choices from the Execution Density Status Area window include: 
  8576.  
  8577.  o Trace Description 
  8578.  o Time Slice 
  8579.  o Selected Region 
  8580.  o Filters 
  8581.  o Selected Object 
  8582.  
  8583.  Select the appropriate check box to continue. 
  8584.  
  8585.  Related Information 
  8586.  
  8587.  o Call Nesting Status Area Window 
  8588.  o Dynamic Call Graph Status Area Window 
  8589.  o Status Area Window. 
  8590.  o Keys Help. 
  8591.  
  8592.  
  8593. ΓòÉΓòÉΓòÉ 18.4.5. Tool Bar Cascading Choice ΓòÉΓòÉΓòÉ
  8594.  
  8595. Select the Tool bar cascading choice to have the tool bar display or not 
  8596. display in your window, and to enable and disable the Hover help. 
  8597.  
  8598. The choices from the Tool bar cascaded menu are: 
  8599.  
  8600.  Show      Choose to either show or hide the tool bar. 
  8601.  Hover help Choose to either enable or disable displaying the help text when 
  8602.            the mouse pointer hovers over the tool bar buttons. 
  8603.  
  8604.  Related Information 
  8605.  
  8606.  o Keys Help. 
  8607.  
  8608.  
  8609. ΓòÉΓòÉΓòÉ 18.4.6. Settings Cascading Choice ΓòÉΓòÉΓòÉ
  8610.  
  8611. The choices from the Settings cascaded menu allow you to save current settings 
  8612. or return to the original settings. 
  8613.  
  8614.  Save      Saves the current session settings. 
  8615.  Restore initial defaults Restores the original settings. 
  8616.  
  8617.  Related Information 
  8618.  
  8619.  o Save Choice 
  8620.  o Restore Initial Defaults Choice 
  8621.  o Keys Help. 
  8622.  
  8623.  
  8624. ΓòÉΓòÉΓòÉ 18.4.6.1. Save Choice ΓòÉΓòÉΓòÉ
  8625.  
  8626. Select the Save choice to save the current settings. These settings are stored 
  8627. in the IPERF.INI file and remain active until that file is erased. 
  8628.  
  8629. To restore the default settings, select the Restore initial defaults choice. 
  8630.  
  8631. Related Information 
  8632.  
  8633.  o Restore Initial Defaults Choice 
  8634.  o Keys Help. 
  8635.  
  8636.  
  8637. ΓòÉΓòÉΓòÉ 18.4.6.2. Restore Initial Defaults Choice ΓòÉΓòÉΓòÉ
  8638.  
  8639. Select the Restore initial defaults choice to change to the original or default 
  8640. settings. You can select the Save choice to save settings. 
  8641.  
  8642. Related Information 
  8643.  
  8644.  o Save Choice. 
  8645.  o Keys Help. 
  8646.  
  8647.  
  8648. ΓòÉΓòÉΓòÉ 18.5. Execution Density Project Menu ΓòÉΓòÉΓòÉ
  8649.  
  8650. This menu appears when you start the Performance Analyzer from within the 
  8651. WorkFrame environment. The Project menu gives you direct access to all of the 
  8652. actions that you can perform from your current location. 
  8653.  
  8654. When you select the Edit function choice from this menu, the source code for 
  8655. the selected function is displayed in the default editor for WorkFrame's edit 
  8656. action. 
  8657.  
  8658. Related Information 
  8659.  
  8660.  o Search Paths Window 
  8661.  o Trace Generation Window 
  8662.  o Keys Help 
  8663.  
  8664.  
  8665. ΓòÉΓòÉΓòÉ 18.5.1. Edit Function Choice ΓòÉΓòÉΓòÉ
  8666.  
  8667. Select the Edit function choice to edit a source file in WorkFrame's default 
  8668. editor. This choice lets you edit the source for a function selected on the 
  8669. Execution Density diagram. When you are working in the WorkFrame environment, 
  8670. this choice is available from the Project menu on the Execution Density 
  8671. diagram. It is also available from the Selected Item pop-up menu on the 
  8672. Execution Density diagram. 
  8673.  
  8674. To locate a source file for editing, the Performance Analyzer must first locate 
  8675. the executable containing the name of the source file. The Performance Analyzer 
  8676. searches the following paths (in the order listed) to locate an executable: 
  8677.  
  8678.   1. Path specified in the Locate Executable window 
  8679.   2. Path specified in the Search path for executable files entry field of the 
  8680.      Search Paths window 
  8681.   3. Directory where the executable was located when the trace file was created 
  8682.   4. The current working directory 
  8683.   5. Path specified by the PATH environment variable. 
  8684.  
  8685.  To identify the name of the source file, the Performance Analyzer looks at the 
  8686.  debug information in the executable. The Performance Analyzer then searches 
  8687.  the following paths (in the order listed) to locate the source file: 
  8688.  
  8689.   1. Path specified in the Locate Source File window 
  8690.   2. Path specified in the Search path for source files entry field of the 
  8691.      Search Paths window 
  8692.   3. Path specified in the compile statement (if provided) 
  8693.   4. Directory where the executable was located when the trace file was created 
  8694.   5. The current working directory 
  8695.   6. Path specified by the INCLUDE environment variable. 
  8696.  
  8697.  If, after searching these paths, the Performance Analyzer cannot find the: 
  8698.  
  8699.   1. Executable, it displays the Locate Executable window to let you enter the 
  8700.      path where the executable resides. 
  8701.   2. Source file, it displays the Locate Source File window to let you enter 
  8702.      the path where the source file resides. 
  8703.  
  8704.  Once the source file for a function is located, the file is opened to the 
  8705.  first line of the function's code. 
  8706.  
  8707.  Notes: 
  8708.  
  8709.   1. The Performance Analyzer remembers the paths you enter in the Locate 
  8710.      Executable and Locate Source File windows and uses them to look for files 
  8711.      the next time you select the Edit function choice. 
  8712.   2. You can specify paths that you want the Performance Analyzer to use by 
  8713.      selecting the Search Paths choice in the Options menu on the Performance 
  8714.      Analyzer - Window Manager window. The paths you enter are automatically 
  8715.      saved for the current session. If you want to save the paths for 
  8716.      subsequent sessions, select the Options menu and then select the Save 
  8717.      choice from the Settings cascaded menu. 
  8718.  
  8719.  Related Information 
  8720.  
  8721.  o Locate Executable Window 
  8722.  o Locate Source File Window 
  8723.  o Search Paths Window 
  8724.  o Starting the Performance Analyzer from WorkFrame 
  8725.  o Keys Help. 
  8726.  
  8727.  
  8728. ΓòÉΓòÉΓòÉ 18.6. Execution Density Help Menu ΓòÉΓòÉΓòÉ
  8729.  
  8730. The Help menu has the following choices: 
  8731.  
  8732.  Help index 
  8733.            Displays an index of Help topics. 
  8734.  
  8735.  General help 
  8736.            Displays Help for the active window. 
  8737.  
  8738.  Using help 
  8739.            Describes how to use Help. 
  8740.  
  8741.  How do I 
  8742.            Displays task Help. 
  8743.  
  8744.  VisualAge for C++ Help Menu Items 
  8745.            Launch the VisualAge for C++ documentation associated with the menu 
  8746.            choice. These choices are available when you start the Performance 
  8747.            Analyzer from WorkFrame. 
  8748.  
  8749.  Product information 
  8750.            Displays information about the Performance Analyzer. 
  8751.  
  8752.  Related Information 
  8753.  
  8754.  o Call Nesting Diagram 
  8755.  o Dynamic Call Graph 
  8756.  o Execution Density Diagram 
  8757.  o Statistics Diagram 
  8758.  o Time Line Diagram 
  8759.  o Hints for Using the Performance Analyzer 
  8760.  o Keys Help. 
  8761.  
  8762.  
  8763. ΓòÉΓòÉΓòÉ 18.6.1. Help Index Choice ΓòÉΓòÉΓòÉ
  8764.  
  8765. Select the Help index choice to display an alphabetical index of Performance 
  8766. Analyzer Help topics. This choice is available from the Help menu of the 
  8767. Execution Density diagram. 
  8768.  
  8769. Use the Previous push button to return to the last topic you viewed. Use the 
  8770. Search... push button to locate topics in the index. Use the Print... push 
  8771. button to print a topic. 
  8772.  
  8773. Related Information 
  8774.  
  8775.  o Call Nesting Diagram 
  8776.  o Dynamic Call Graph 
  8777.  o Execution Density Diagram 
  8778.  o Statistics Diagram 
  8779.  o Time Line Diagram 
  8780.  o Hints for Using the Performance Analyzer 
  8781.  o Keys Help. 
  8782.  
  8783.  
  8784. ΓòÉΓòÉΓòÉ 18.6.2. General Help Choice ΓòÉΓòÉΓòÉ
  8785.  
  8786. Select the General help choice to display Help information for the active 
  8787. window. This choice is available from the Help menu of the Execution Density 
  8788. diagram. 
  8789.  
  8790. The online Help panel displayed is the same panel that is displayed when you 
  8791. place your cursor inside the window and press F1. 
  8792.  
  8793. Related Information 
  8794.  
  8795.  o Call Nesting Diagram 
  8796.  o Dynamic Call Graph 
  8797.  o Execution Density Diagram 
  8798.  o Statistics Diagram 
  8799.  o Time Line Diagram 
  8800.  o Hints for Using the Performance Analyzer 
  8801.  o Keys Help. 
  8802.  
  8803.  
  8804. ΓòÉΓòÉΓòÉ 18.6.3. Using Help Choice ΓòÉΓòÉΓòÉ
  8805.  
  8806. Select the Using help choice for a description of how to use the IBM 
  8807. Performance Analyzer Help facility. This choice is available from the Help menu 
  8808. of the Execution Density diagram. 
  8809.  
  8810. Related Information 
  8811.  
  8812.  o Call Nesting Diagram 
  8813.  o Dynamic Call Graph 
  8814.  o Execution Density Diagram 
  8815.  o Statistics Diagram 
  8816.  o Time Line Diagram 
  8817.  o Hints for Using the Performance Analyzer 
  8818.  o Keys Help. 
  8819.  
  8820.  
  8821. ΓòÉΓòÉΓòÉ 18.6.4. How Do I Choice ΓòÉΓòÉΓòÉ
  8822.  
  8823. Select the How do I choice to display the Performance Analyzer task help. This 
  8824. choice is available from the Help menu of the Execution Density diagram. 
  8825.  
  8826. Related Information 
  8827.  
  8828.  o Call Nesting Diagram 
  8829.  o Dynamic Call Graph 
  8830.  o Execution Density Diagram 
  8831.  o Statistics Diagram 
  8832.  o Time Line Diagram 
  8833.  o Hints for Using the Performance Analyzer 
  8834.  o Keys Help. 
  8835.  
  8836.  
  8837. ΓòÉΓòÉΓòÉ 18.6.5. Product Information ΓòÉΓòÉΓòÉ
  8838.  
  8839. Select the Product information choice to display copyright and version 
  8840. information about the Performance Analyzer application. This choice is 
  8841. available from the Help menu of the Execution Density diagram. 
  8842.  
  8843. Related Information 
  8844.  
  8845.  o Call Nesting Diagram 
  8846.  o Dynamic Call Graph 
  8847.  o Execution Density Diagram 
  8848.  o Statistics Diagram 
  8849.  o Time Line Diagram 
  8850.  o Hints for Using the Performance Analyzer 
  8851.  o Keys Help. 
  8852.  
  8853.  
  8854. ΓòÉΓòÉΓòÉ 18.7. Execution Density Current Column Indicator ΓòÉΓòÉΓòÉ
  8855.  
  8856. An arrow called the current column indicator is displayed at the top of the 
  8857. columns. The current column indicator lets you select each column. Use the 
  8858. mouse to select each column. 
  8859.  
  8860. To move the current column indicator, click on the column of interest and the 
  8861. arrow moves. You can drag the current column indicator arrow with the mouse and 
  8862. the Selected object information will change. 
  8863.  
  8864. Related Information 
  8865.  
  8866.  o Execution Density Status Area 
  8867.  o Keys Help. 
  8868.  
  8869.  
  8870. ΓòÉΓòÉΓòÉ 18.8. Execution Density Vertical Ruler ΓòÉΓòÉΓòÉ
  8871.  
  8872. The Vertical Ruler, located to the left of the diagram, shows the approximate 
  8873. time of events on the screen. 
  8874.  
  8875. To change the time scale, select the Scale pages... choice from the View menu, 
  8876. and the Scale Pages window appears. 
  8877.  
  8878. Related Information 
  8879.  
  8880.  o Execution Density Status Area 
  8881.  o Keys Help. 
  8882.  
  8883.  
  8884. ΓòÉΓòÉΓòÉ 18.9. Execution Density Status Area ΓòÉΓòÉΓòÉ
  8885.  
  8886. The Status Area, located at the top of the window, describes the settings of 
  8887. the diagram. 
  8888.  
  8889. You can select the Status area... choice to change what appears in the area at 
  8890. the top of the Execution Density window. 
  8891.  
  8892. When you select the Status area... choice, the Status Area window appears. 
  8893.  
  8894. The choices in the Status Area window include: 
  8895.  
  8896.  Trace description 
  8897.            Shows the description given to the trace file. 
  8898.  Time slice 
  8899.            Displays the value of the time slice. 
  8900.  Selected region 
  8901.            Displays the total time, start time, and end time for a selected 
  8902.            region. 
  8903.  Filters 
  8904.            Shows when selected filters, such as functions and threads, are 
  8905.            active. 
  8906.  Selected object 
  8907.            Displays the name of the selected object. 
  8908.  
  8909.  Related Information 
  8910.  
  8911.  o Call Nesting Status Area 
  8912.  o Dynamic Call Graph Status Area 
  8913.  o Time Line Status Area 
  8914.  o Keys Help. 
  8915.  
  8916.  
  8917. ΓòÉΓòÉΓòÉ <hidden> Trace Description Status Line ΓòÉΓòÉΓòÉ
  8918.  
  8919. Trace description displays the descriptive text associated with the trace file 
  8920. being viewed in the diagram. This description comes from information you supply 
  8921. in either the Create Trace window or in the Trace Generation window before the 
  8922. trace file is created. 
  8923.  
  8924. Related Information 
  8925.  
  8926.  o Execution Density Status Area Window 
  8927.  o Execution Density Diagram. 
  8928.  o Keys Help. 
  8929.  
  8930.  
  8931. ΓòÉΓòÉΓòÉ <hidden> Time Slice Status Line ΓòÉΓòÉΓòÉ
  8932.  
  8933. Time slice displays the amount of time associated with the height of a single 
  8934. horizontal line (or pixel) in the diagram. The time slice may be changed by 
  8935. changing the diagram's scale. The Performance Analyzer divides the entire trace 
  8936. time into equal time slices. 
  8937.  
  8938. Related Information 
  8939.  
  8940.  o Execution Density Status Area Window 
  8941.  o Execution Density Diagram. 
  8942.  o Keys Help. 
  8943.  
  8944.  
  8945. ΓòÉΓòÉΓòÉ <hidden> Selected Region Status Line ΓòÉΓòÉΓòÉ
  8946.  
  8947. Selected region displays the total time, start time, and end time for a 
  8948. selected region. 
  8949.  
  8950. You can highlight a region of the diagram to see how long it took the code to 
  8951. execute. 
  8952.  
  8953. To highlight, press and hold mouse button 1 and drag the pointer across the 
  8954. region of the diagram that you want to check. Release mouse button 1 to end the 
  8955. highlighting. 
  8956.  
  8957.  Elapsed time        Shows how long the selected region took to execute. 
  8958.  Start time          Shows the point where you started selecting 
  8959.  End time            Displays the point where you stopped. 
  8960.  
  8961.  So, if you started selecting on the main function at 2.3 seconds and ended at 
  8962.  17.5 seconds, the Elapsed time would be 15.2 seconds, the Start time would be 
  8963.  2.3 seconds, and the End time would be 17.5 seconds. 
  8964.  
  8965.  Related Information 
  8966.  
  8967.  o Execution Density Status Area Window 
  8968.  o Execution Density Diagram. 
  8969.  o Keys Help. 
  8970.  
  8971.  
  8972. ΓòÉΓòÉΓòÉ <hidden> Filters Status Line ΓòÉΓòÉΓòÉ
  8973.  
  8974. Filters shows when selected filters, such as threads and functions, are active. 
  8975. Filters allow you to temporarily reduce the amount of trace data displayed. 
  8976.  
  8977. So when you select specific threads or functions to display, you are filtering 
  8978. the trace data displayed. 
  8979.  
  8980. Related Information 
  8981.  
  8982.  o Include Functions Window 
  8983.  o Include Threads Window 
  8984.  o Execution Density Diagram 
  8985.  o Execution Density Status Area Window. 
  8986.  o Keys Help. 
  8987.  
  8988.  
  8989. ΓòÉΓòÉΓòÉ <hidden> Selected Object Status Line ΓòÉΓòÉΓòÉ
  8990.  
  8991. Selected object displays the name of the selected object. Use mouse button 1 to 
  8992. click on an area of the diagram to see the name of the object file. 
  8993.  
  8994. Note:   In the Execution Density diagram, the current column indicator 
  8995. designates the selected object. 
  8996.  
  8997. Related Information 
  8998.  
  8999.  o Execution Density Diagram 
  9000.  o Execution Density Status Area Window. 
  9001.  o Keys Help. 
  9002.  
  9003.  
  9004. ΓòÉΓòÉΓòÉ 18.10. Execution Density Diagram Pop-up Menu ΓòÉΓòÉΓòÉ
  9005.  
  9006. The pop-up menus allow you to quickly access the most often used features. 
  9007. There are two pop-up menus: Diagram and Selected Item. 
  9008.  
  9009. This pop-up menu contains most of the choices from the Edit and Options menus. 
  9010. To access this menu, use mouse button 2 to click on the background area of the 
  9011. diagram. The menu is displayed with the following choices: 
  9012.  
  9013.  o Find function... 
  9014.  o Find next 
  9015.  o Zoom in 
  9016.  o Zoom out 
  9017.  o Scale pages... 
  9018.  o Include functions... 
  9019.  o Include threads... 
  9020.  o Color... 
  9021.  o Column width... 
  9022.  
  9023.  Related Information 
  9024.  
  9025.  o Execution Density Selected Item Pop-up Menu 
  9026.  o Execution Density Diagram 
  9027.  o Keys Help. 
  9028.  
  9029.  
  9030. ΓòÉΓòÉΓòÉ 18.11. Execution Density Selected Item Pop-up Menu ΓòÉΓòÉΓòÉ
  9031.  
  9032. To access this pop-up menu, highlight a region of interest, move the mouse 
  9033. pointer into that area, and click on mouse button 2. This menu contains the 
  9034. following choices: 
  9035.  
  9036.  o Zoom to selected range 
  9037.  o Correlation... 
  9038.  o Edit function 
  9039.  
  9040.  Related Information 
  9041.  
  9042.  o Execution Density Diagram Pop-up Menu 
  9043.  o Execution Density Diagram 
  9044.  o Keys Help. 
  9045.  
  9046.  
  9047. ΓòÉΓòÉΓòÉ 19. Statistics Diagram ΓòÉΓòÉΓòÉ
  9048.  
  9049. The Statistics diagram gives you a textual report of execution time by 
  9050. function, class (only if you are analyzing a C++ program), or executable. Use 
  9051. this information to find hot spots in the overall program execution. 
  9052.  
  9053. The Statistics diagram has two panes: Summary and Details. 
  9054.  
  9055. The Summary pane lists general facts about your program's overall execution. 
  9056.  
  9057. The Details pane lists specific facts about the execution of individual program 
  9058. components. You can select the type of information you want displayed in this 
  9059. pane. If you want to display information about: 
  9060.  
  9061.  o Functions, select View > Details on > Functions. 
  9062.  
  9063.  o Classes, select View > Details on > Classes. 
  9064.  
  9065.    Note:   You can only select this choice if you are analyzing a C++ program. 
  9066.  
  9067.  o Executables, select View > Details on > Executables. 
  9068.  
  9069.  You can resize the panes vertically. To resize a pane, position the mouse 
  9070.  pointer on the split bar, and then press and hold mouse button 1 as you drag 
  9071.  the bar. Release the mouse button when the pane is the size you want. 
  9072.  
  9073.  Note:   Times are shown in milliseconds. 
  9074.  
  9075.  Areas of the Statistics Diagram Window 
  9076.  
  9077.  o Menu Bar 
  9078.    The following choices are available from the Statistics diagram menu bar: 
  9079.  
  9080.     - Trace file 
  9081.     - View 
  9082.     - Options 
  9083.     - Project 
  9084.     - Help. 
  9085.  
  9086.  o Summary Pane 
  9087.  o Details Pane. 
  9088.  
  9089.  Related Information 
  9090.  
  9091.  o Call Nesting Diagram 
  9092.  o Dynamic Call Graph 
  9093.  o Execution Density Diagram 
  9094.  o Time Line Diagram 
  9095.  o Hints for Using the Performance Analyzer 
  9096.  o Keys Help. 
  9097.  
  9098.  
  9099. ΓòÉΓòÉΓòÉ 19.1. Statistics Summary Pane ΓòÉΓòÉΓòÉ
  9100.  
  9101. The Summary pane is in the top area of the window. You must scroll the pane to 
  9102. view all of the information. 
  9103.  
  9104. To resize the pane vertically, position the mouse pointer on the split bar, and 
  9105. then press and hold mouse button 1 as you drag the bar. Release the mouse 
  9106. button when the pane is the size you want. 
  9107.  
  9108. Information provided in the Summary pane is as follows: 
  9109.  
  9110.  o Executable name 
  9111.  
  9112.  o Trace file description 
  9113.  
  9114.    Note:   A trace file description will only appear if a description was 
  9115.    entered when the file was created. 
  9116.  
  9117.  o Execution date 
  9118.  
  9119.  o Execution time 
  9120.  
  9121.  o Number of executables generating events 
  9122.  
  9123.  o Number of classes generating events (only if you are analyzing a C++ 
  9124.    program) 
  9125.  
  9126.  o Number of functions generating events 
  9127.  
  9128.  o Number of threads generating events 
  9129.  
  9130.  o Total number of events 
  9131.  
  9132.  o Total number of annotations 
  9133.  
  9134.  o Number of user events 
  9135.  
  9136.  o Maximum call nest depth 
  9137.  
  9138.  o Number of trace buffer flushes 
  9139.  
  9140.  o Total trace time excluding overhead 
  9141.  
  9142.  o Trace overhead. 
  9143.  
  9144.  Related Information 
  9145.  
  9146.  o Statistics Details Pane 
  9147.  o Hints for Using the Performance Analyzer 
  9148.  o Keys Help. 
  9149.  
  9150.  
  9151. ΓòÉΓòÉΓòÉ 19.2. Statistics Details Pane ΓòÉΓòÉΓòÉ
  9152.  
  9153. The Details pane is in the bottom area of the window. You must scroll the pane 
  9154. to view all of the information. 
  9155.  
  9156. To resize the pane vertically, position the mouse pointer on the split bar, and 
  9157. then press and hold mouse button 1 as you drag the bar. Release the mouse 
  9158. button when the pane is the size you want. 
  9159.  
  9160. The Details pane has a left and right pane. The left pane displays the fully 
  9161. qualified name of the component on which the statistics have been gathered. 
  9162.  
  9163. Other information provided on the left side of the Details pane varies 
  9164. depending on the View > Details on setting. 
  9165.  
  9166. If Details on is set to: 
  9167.  
  9168.  o Functions, you see columns with the following headings: Function, Object 
  9169.    file, and Executable. 
  9170.  o Classes, you see one column with the heading Class. 
  9171.  o Executables, you see one column with the heading Executable. 
  9172.  
  9173.  With function names, if user events have been included in the trace, they will 
  9174.  appear as separate entries in the list of function names. 
  9175.  
  9176.  The user events will be the function name that made the call to the user 
  9177.  event, followed by the user event in parentheses. 
  9178.  
  9179.  For executables, only the executable name is displayed. 
  9180.  
  9181.  Information provided on the right side of the Details pane is as follows: 
  9182.  
  9183.  o % of execution 
  9184.  o % on stack 
  9185.  o Number of calls 
  9186.  o Execution time 
  9187.  o Time on stack 
  9188.  o Minimum call 
  9189.  o Maximum call 
  9190.  o Average call. 
  9191.  
  9192.  Note:   If you disabled the Time stamp events choice before you created your 
  9193.  trace file, only the Number of Calls column will be displayed on the right 
  9194.  side of the Details pane. 
  9195.  
  9196.  Related Information 
  9197.  
  9198.  o Statistics Summary Pane 
  9199.  o Hints for Using the Performance Analyzer 
  9200.  o Keys Help. 
  9201.  
  9202.  
  9203. ΓòÉΓòÉΓòÉ 19.3. Statistics Trace File Menu ΓòÉΓòÉΓòÉ
  9204.  
  9205. The following choices are available from the Statistics Trace file menu: 
  9206.  
  9207.  Open as > 
  9208.            Displays a new or an additional diagram. 
  9209.  
  9210.  Save as text... 
  9211.            Creates a file containing the statistical information. 
  9212.  
  9213.  Printer settings... 
  9214.            Allows you to choose printer settings for your output. 
  9215.  
  9216.  Print... 
  9217.            Prints the textual report of the Statistics diagram. 
  9218.  
  9219.  Window Manager 
  9220.            Displays the Window Manager window. 
  9221.  
  9222.  Exit the Performance Analyzer 
  9223.            Exits the Performance Analyzer and closes all windows. 
  9224.  
  9225.  Related Information 
  9226.  
  9227.  o Call Nesting Diagram 
  9228.  o Dynamic Call Graph 
  9229.  o Execution Density Diagram 
  9230.  o Time Line Diagram 
  9231.  o Keys Help. 
  9232.  
  9233.  
  9234. ΓòÉΓòÉΓòÉ 19.3.1. Open As Cascading Choice ΓòÉΓòÉΓòÉ
  9235.  
  9236. Select the Open as cascading choice to open another Statistics diagram window 
  9237. or to open one of the other diagrams. You can open as many new diagram windows 
  9238. as you want. 
  9239.  
  9240. To select a new diagram: 
  9241.  
  9242.   1. Select Open as from the Trace file menu. A cascaded menu is displayed with 
  9243.      the following choices: 
  9244.  
  9245.     Call Nesting 
  9246.     Dynamic Call Graph 
  9247.     Execution Density 
  9248.     Statistics 
  9249.     Time Line 
  9250.  
  9251.   2. Select the name of the diagram you want to view. A new window opens and 
  9252.      displays the diagram you selected. 
  9253.  
  9254.  Related Information 
  9255.  
  9256.  o Using the Analyze Trace Window 
  9257.  o Keys Help. 
  9258.  
  9259.  
  9260. ΓòÉΓòÉΓòÉ 19.3.1.1. Call Nesting Choice ΓòÉΓòÉΓòÉ
  9261.  
  9262. Select the Call Nesting choice to display the current trace file in the Call 
  9263. Nesting diagram. Access this choice by selecting Trace file>Open as. 
  9264.  
  9265. Related Information 
  9266.  
  9267.  o Open As Choice 
  9268.  o Keys Help. 
  9269.  
  9270.  
  9271. ΓòÉΓòÉΓòÉ 19.3.1.2. Dynamic Call Graph Choice ΓòÉΓòÉΓòÉ
  9272.  
  9273. Select the Dynamic Call Graph choice to display the current trace file in the 
  9274. Dynamic Call Graph diagram. Access this choice by selecting Trace file>Open as. 
  9275.  
  9276. Related Information 
  9277.  
  9278.  o Open As Choice 
  9279.  o Keys Help. 
  9280.  
  9281.  
  9282. ΓòÉΓòÉΓòÉ 19.3.1.3. Execution Density Choice ΓòÉΓòÉΓòÉ
  9283.  
  9284. Select the Execution Density choice to display the current trace file in the 
  9285. Execution Density diagram. Access this choice by selecting Trace file>Open as. 
  9286.  
  9287. Related Information 
  9288.  
  9289.  o Open As Choice 
  9290.  o Keys Help. 
  9291.  
  9292.  
  9293. ΓòÉΓòÉΓòÉ 19.3.1.4. Statistics Choice ΓòÉΓòÉΓòÉ
  9294.  
  9295. Select the Statistics choice to display the current trace file in the 
  9296. Statistics diagram. Access this choice by selecting Trace file>Open as. 
  9297.  
  9298. Related Information 
  9299.  
  9300.  o Open As Choice 
  9301.  o Keys Help. 
  9302.  
  9303.  
  9304. ΓòÉΓòÉΓòÉ 19.3.1.5. Time Line Choice ΓòÉΓòÉΓòÉ
  9305.  
  9306. Select the Time Line choice to display the current trace file in the Time Line 
  9307. diagram. Access this choice by selecting Trace file>Open as. 
  9308.  
  9309. Related Information 
  9310.  
  9311.  o Open As Choice 
  9312.  o Keys Help. 
  9313.  
  9314.  
  9315. ΓòÉΓòÉΓòÉ 19.3.2. Save As Text... Choice ΓòÉΓòÉΓòÉ
  9316.  
  9317. Select the Save as text... choice to save the Statistics diagram data as an 
  9318. ASCII file. When you select the Save as text... choice, the Save As Text window 
  9319. appears. 
  9320.  
  9321. Related Information 
  9322.  
  9323.  o Keys Help. 
  9324.  
  9325.  
  9326. ΓòÉΓòÉΓòÉ 19.3.2.1. Save As Text Window ΓòÉΓòÉΓòÉ
  9327.  
  9328. The Save As Text window lets you select the path and file name in which the 
  9329. Performance Analyzer will save the data contained in the Summary and Details 
  9330. panes of the Statistics diagram. The data is saved as an ASCII file. 
  9331.  
  9332. Note:   Save As Text does not save the binary trace file. 
  9333.  
  9334. Related Information 
  9335.  
  9336.  o Keys Help. 
  9337.  
  9338.  
  9339. ΓòÉΓòÉΓòÉ 19.3.3. Printer Settings... Choice ΓòÉΓòÉΓòÉ
  9340.  
  9341. Select the Printer settings... choice to select settings for your print jobs. 
  9342.  
  9343. When you select the Printer settings... choice, the Printer Settings window 
  9344. appears. 
  9345.  
  9346.  o OK 
  9347.  o Font... 
  9348.  o Job properties... 
  9349.  o Cancel 
  9350.  o Help 
  9351.  
  9352.  Related Information 
  9353.  
  9354.  o Keys Help. 
  9355.  
  9356.  
  9357. ΓòÉΓòÉΓòÉ 19.3.4. Print... Choice ΓòÉΓòÉΓòÉ
  9358.  
  9359. Select the Print... choice to print the information from the Statistics 
  9360. diagram. 
  9361.  
  9362. To print the Statistics diagram, select the Print... choice from the Trace file 
  9363. menu. The Print window appears. 
  9364.  
  9365. Related Information 
  9366.  
  9367.  o Keys Help. 
  9368.  
  9369.  
  9370. ΓòÉΓòÉΓòÉ 19.3.5. Window Manager Choice ΓòÉΓòÉΓòÉ
  9371.  
  9372. Select the Window Manager choice to display the Window Manager window. 
  9373.  
  9374. Related Information 
  9375.  
  9376.  o Performance Analyzer - Window Manager 
  9377.  o Keys Help. 
  9378.  
  9379.  
  9380. ΓòÉΓòÉΓòÉ 19.3.6. Exit the Performance Analyzer Choice ΓòÉΓòÉΓòÉ
  9381.  
  9382. Select Exit the Performance Analyzer to close all Performance Analyzer windows 
  9383. and end the application. 
  9384.  
  9385. Related Information 
  9386.  
  9387.  o Keys Help. 
  9388.  
  9389.  
  9390. ΓòÉΓòÉΓòÉ 19.4. Statistics View Menu ΓòÉΓòÉΓòÉ
  9391.  
  9392. The choices from the View menu are: 
  9393.  
  9394.  Details on > 
  9395.            Select to view the Details pane by function information, class 
  9396.            information (only if you are analyzing a C++ program), or executable 
  9397.            information. 
  9398.  
  9399.  Include threads... 
  9400.            Select which threads to include in the diagram. 
  9401.  
  9402.  Sort > 
  9403.            Select how you want to sort the Details pane. 
  9404.  
  9405.  Related Information 
  9406.  
  9407.  o Call Nesting Diagram 
  9408.  o Dynamic Call Graph 
  9409.  o Execution Density Diagram 
  9410.  o Time Line Diagram 
  9411.  o Keys Help. 
  9412.  
  9413.  
  9414. ΓòÉΓòÉΓòÉ 19.4.1. Details On Cascading Choice ΓòÉΓòÉΓòÉ
  9415.  
  9416. Select the Details on choice to display the following choices: 
  9417.  
  9418.  Functions 
  9419.            Displays statistics in the Details pane for each traced function in 
  9420.            your program. 
  9421.  Classes 
  9422.            Displays statistics in the Details pane for each traced class in 
  9423.            your program. 
  9424.  
  9425.            Notes: 
  9426.  
  9427.             1. Class execution time is calculated by totalling the execution 
  9428.                times for all member functions contained in the class. Class 
  9429.                time on stack is calculated by totalling the time on stack for 
  9430.                all member functions contained in the class. 
  9431.             2. When a class occurs in more than one executable or DLL, the 
  9432.                statistics shown represent the sum of the statistics for each 
  9433.                occurrence of the class. 
  9434.             3. Statistics for functions that are not part of any class are 
  9435.                included in the C_Function class listed on the Details pane. 
  9436.  
  9437.  
  9438.  Executables 
  9439.            Displays statistics in the Details pane for each traced executable 
  9440.            in your program. 
  9441.  
  9442.            Note:   The execution time for an executable is calculated by 
  9443.            totalling the execution times for all functions contained in the 
  9444.            executable. Time on stack is calculated by totalling the time on 
  9445.            stack for all functions contained in the executable. 
  9446.  
  9447.  Related Information 
  9448.  
  9449.  o Find... Choice 
  9450.  o Keys Help. 
  9451.  
  9452.  
  9453. ΓòÉΓòÉΓòÉ 19.4.1.1. Functions Choice ΓòÉΓòÉΓòÉ
  9454.  
  9455. Select the Functions choice to view the functions included in the trace. 
  9456.  
  9457. You can access this choice by selecting View > Details on > Functions on the 
  9458. Statistics diagram. A check mark is displayed next to the choice when it is 
  9459. selected. 
  9460.  
  9461. Related Information 
  9462.  
  9463.  o Classes Choice 
  9464.  o Executables Choice 
  9465.  o Keys Help. 
  9466.  
  9467.  
  9468. ΓòÉΓòÉΓòÉ 19.4.1.2. Classes Choice ΓòÉΓòÉΓòÉ
  9469.  
  9470. Select the Classes choice to view the classes included in the trace. 
  9471.  
  9472. You can access this choice by selecting View > Details on > Classes on the 
  9473. Statistics diagram. A check mark is displayed next to the choice when it is 
  9474. selected. 
  9475.  
  9476. Notes: 
  9477.  
  9478.   1. Class execution time is calculated by totalling the execution times for 
  9479.      all member functions contained in the class. Class time on stack is 
  9480.      calculated by totalling the time on stack for all member functions 
  9481.      contained in the class. 
  9482.   2. When a class occurs in more than one executable or DLL, the statistics 
  9483.      shown represent the sum of the statistics for each occurrence of the 
  9484.      class. 
  9485.   3. Statistics for functions that are not part of any class are included in 
  9486.      the C_Function class listed on the Details pane. 
  9487.  
  9488.  Related Information 
  9489.  
  9490.  o Functions Choice 
  9491.  o Executables Choice 
  9492.  o Keys Help. 
  9493.  
  9494.  
  9495. ΓòÉΓòÉΓòÉ 19.4.1.3. Executables Choice ΓòÉΓòÉΓòÉ
  9496.  
  9497. Select the Executables choice to view statistics on executables included in the 
  9498. trace. 
  9499.  
  9500. You can access this choice by selecting View > Details on > Executables on the 
  9501. Statistics diagram. A check mark is displayed next to the choice when it is 
  9502. selected. 
  9503.  
  9504. Note:   The execution time for an executable is calculated by totalling the 
  9505. execution times for all functions contained in the executable. Time on stack is 
  9506. calculated by totalling the time on stack for all functions contained in the 
  9507. executable. 
  9508.  
  9509. Related Information 
  9510.  
  9511.  o Functions Choice 
  9512.  o Classes Choice 
  9513.  o Keys Help. 
  9514.  
  9515.  
  9516. ΓòÉΓòÉΓòÉ 19.4.2. Include Threads... Choice ΓòÉΓòÉΓòÉ
  9517.  
  9518. Select the Include threads... choice to select which threads are displayed in 
  9519. the diagram. When you select the Include threads... choice, an Include Threads 
  9520. window appears. 
  9521.  
  9522. Note:   The percentages are based upon the total execution time of the selected 
  9523. threads, not the total execution time. 
  9524.  
  9525. When you change threads you affect the percentages. 
  9526.  
  9527. Related Information 
  9528.  
  9529.  o Keys Help. 
  9530.  
  9531.  
  9532. ΓòÉΓòÉΓòÉ 19.4.2.1. Include Threads Window ΓòÉΓòÉΓòÉ
  9533.  
  9534. Use the Include Threads window to specify which threads you want to see data 
  9535. for in the Statistics diagram. 
  9536.  
  9537. Note:   The percentages of execution time in the diagram are based upon the 
  9538. total execution time of the selected threads, not the total execution time. 
  9539. When you change threads you affect the percentages. 
  9540.  
  9541. Selecting Specific Threads 
  9542.  
  9543. To select a specific thread: 
  9544.  
  9545.   1. Click on the name of the thread you want to display. Threads are 
  9546.      highlighted when selected. 
  9547.  
  9548.   2. Select the appropriate push button to continue: 
  9549.  
  9550.     o OK 
  9551.     o Select all 
  9552.     o Deselect all 
  9553.     o Cancel 
  9554.     o Help. 
  9555.  
  9556.  Selecting All Threads 
  9557.  
  9558.  To select all threads: 
  9559.  
  9560.   1. Click on the Select all push button in the Include Threads window to 
  9561.      select all threads. 
  9562.  
  9563.   2. Select the appropriate push button to continue: 
  9564.  
  9565.     o OK 
  9566.     o Select all 
  9567.     o Deselect all 
  9568.     o Cancel 
  9569.     o Help 
  9570.  
  9571.  Related Information 
  9572.  
  9573.  o Dynamic Call Graph 
  9574.  o Execution Density Diagram 
  9575.  o Analyze Trace Window 
  9576.  o Keys Help. 
  9577.  
  9578.  
  9579. ΓòÉΓòÉΓòÉ 19.4.3. Sort Cascading Choice ΓòÉΓòÉΓòÉ
  9580.  
  9581. Select the Sort choice to sort the Details window on one of its columns. 
  9582.  
  9583. When you select Sort, a cascaded menu is displayed with the following choices. 
  9584. Invalid choices are grayed out. 
  9585.  
  9586.  o Function name 
  9587.  o Class name (You can only select this choice if you are analyzing a C++ 
  9588.    program.) 
  9589.  o Object file name 
  9590.  o Executable name 
  9591.  o Execution time 
  9592.  o Time on call stack 
  9593.  o Number of calls 
  9594.  o Minimum call 
  9595.  o Maximum call 
  9596.  o Average call. 
  9597.  
  9598.  Related Information 
  9599.  
  9600.  o Analyze Trace Window 
  9601.  o Keys Help. 
  9602.  
  9603.  
  9604. ΓòÉΓòÉΓòÉ 19.4.3.1. Function Name Choice ΓòÉΓòÉΓòÉ
  9605.  
  9606. Select the Function name choice to sort the names of the functions listed in 
  9607. the Function column in the Details window in alphabetical order. The names are 
  9608. placed in alphabetical order. 
  9609.  
  9610. Select the choice and the Details pane sorts all data by function name. 
  9611.  
  9612. Related Information 
  9613.  
  9614.  o Sort Choice 
  9615.  o Object file name 
  9616.  o Executable name 
  9617.  o Execution time 
  9618.  o Time on call stack 
  9619.  o Number of calls 
  9620.  o Minimum call 
  9621.  o Maximum call 
  9622.  o Average call. 
  9623.  o Keys Help. 
  9624.  
  9625.  
  9626. ΓòÉΓòÉΓòÉ 19.4.3.2. Class Name Choice ΓòÉΓòÉΓòÉ
  9627.  
  9628. Select the Class name choice to sort the class names in the Details pane 
  9629. alphabetically. 
  9630.  
  9631. Related Information 
  9632.  
  9633.  o Sort Choice 
  9634.  o Object file name 
  9635.  o Executable name 
  9636.  o Execution time 
  9637.  o Time on call stack 
  9638.  o Number of calls 
  9639.  o Minimum call 
  9640.  o Maximum call 
  9641.  o Average call. 
  9642.  o Keys Help. 
  9643.  
  9644.  
  9645. ΓòÉΓòÉΓòÉ 19.4.3.3. Object File Name Choice ΓòÉΓòÉΓòÉ
  9646.  
  9647. Select the Object file name choice to sort on the Object file column in the 
  9648. Details pane in alphabetical order. 
  9649.  
  9650. Select the choice and the Details pane sorts all data by object file name. 
  9651.  
  9652. Related Information 
  9653.  
  9654.  o Sort Choice 
  9655.  o Function name 
  9656.  o Executable name 
  9657.  o Execution time 
  9658.  o Time on call stack 
  9659.  o Number of calls 
  9660.  o Minimum call 
  9661.  o Maximum call 
  9662.  o Average call. 
  9663.  o Keys Help. 
  9664.  
  9665.  
  9666. ΓòÉΓòÉΓòÉ 19.4.3.4. Executable Name Choice ΓòÉΓòÉΓòÉ
  9667.  
  9668. Select the Executable name choice to sort by the Executable column in the 
  9669. Details window in alphabetical order. 
  9670.  
  9671. Select the choice and the Details pane sorts all data by executable name. 
  9672.  
  9673. Related Information 
  9674.  
  9675.  o Sort Choice 
  9676.  o Function name 
  9677.  o Object file name 
  9678.  o Execution time 
  9679.  o Time on call stack 
  9680.  o Number of calls 
  9681.  o Minimum call 
  9682.  o Maximum call 
  9683.  o Average call. 
  9684.  o Keys Help. 
  9685.  
  9686.  
  9687. ΓòÉΓòÉΓòÉ 19.4.3.5. Execution Time Choice ΓòÉΓòÉΓòÉ
  9688.  
  9689. Select the Execution Time choice to sort by the Execution Time column in the 
  9690. Details window in ascending order based upon execution time. 
  9691.  
  9692. Select the choice and the Details pane sorts all data by execution time. 
  9693.  
  9694. Each entry in this column designates the total execution time spent in a 
  9695. particular function. 
  9696.  
  9697. Related Information 
  9698.  
  9699.  o Sort Choice 
  9700.  o Function name 
  9701.  o Object file name 
  9702.  o Executable name 
  9703.  o Time on call stack 
  9704.  o Number of calls 
  9705.  o Minimum call 
  9706.  o Maximum call 
  9707.  o Average call. 
  9708.  o Keys Help. 
  9709.  
  9710.  
  9711. ΓòÉΓòÉΓòÉ 19.4.3.6. Time on Call Stack Choice ΓòÉΓòÉΓòÉ
  9712.  
  9713. Select the Time on call stack choice to sort by the Time on call stack column 
  9714. in the Details window in descending order. 
  9715.  
  9716. Select the choice and the Details pane sorts all data by the Call stack column. 
  9717. The function with the most time is placed at the top of the column. 
  9718.  
  9719. Each entry in this column designates the total amount of time a particular 
  9720. function was on the call stack. 
  9721.  
  9722. Related Information 
  9723.  
  9724.  o Sort Choice 
  9725.  o Function name 
  9726.  o Object file name 
  9727.  o Executable name 
  9728.  o Execution time 
  9729.  o Number of calls 
  9730.  o Minimum call 
  9731.  o Maximum call 
  9732.  o Average call. 
  9733.  o Keys Help. 
  9734.  
  9735.  
  9736. ΓòÉΓòÉΓòÉ 19.4.3.7. Number of Calls Choice ΓòÉΓòÉΓòÉ
  9737.  
  9738. Select the Number of calls choice to sort the Number of calls column in the 
  9739. Details window in descending order. 
  9740.  
  9741. Select the choice and the Details pane sorts all data by number of calls 
  9742. column. 
  9743.  
  9744. Each entry in this column designates the total number of times a particular 
  9745. function is called. 
  9746.  
  9747. Related Information 
  9748.  
  9749.  o Sort Choice 
  9750.  o Function name 
  9751.  o Object file name 
  9752.  o Executable name 
  9753.  o Execution time 
  9754.  o Time on call stack 
  9755.  o Minimum call 
  9756.  o Maximum call 
  9757.  o Average call. 
  9758.  o Keys Help. 
  9759.  
  9760.  
  9761. ΓòÉΓòÉΓòÉ 19.4.3.8. Minimum Call Choice ΓòÉΓòÉΓòÉ
  9762.  
  9763. Select the Minimum call choice to sort the Minimum call column in the Details 
  9764. window in ascending order. The function with the least number of calls is 
  9765. placed at the top. 
  9766.  
  9767. Select the choice and the Details pane sorts all data by the minimum call time 
  9768. column. 
  9769.  
  9770. Each entry in this column designates the minimum time spent in a call to a 
  9771. particular function. 
  9772.  
  9773. Related Information 
  9774.  
  9775.  o Sort Choice 
  9776.  o Function name 
  9777.  o Object file name 
  9778.  o Executable name 
  9779.  o Execution time 
  9780.  o Time on call stack 
  9781.  o Number of calls 
  9782.  o Maximum call 
  9783.  o Average call. 
  9784.  o Keys Help. 
  9785.  
  9786.  
  9787. ΓòÉΓòÉΓòÉ 19.4.3.9. Maximum Call Choice ΓòÉΓòÉΓòÉ
  9788.  
  9789. Select the Maximum call choice to sort the Maximum call column in the Details 
  9790. window in descending order. 
  9791.  
  9792. The function with the most calls is placed at top. 
  9793.  
  9794. Select the choice and the Details pane sorts all data by Maximum Call time 
  9795. column. 
  9796.  
  9797. Each entry in this column designates the average amount of time spent in calls 
  9798. to a particular function. 
  9799.  
  9800. Related Information 
  9801.  
  9802.  o Sort Choice 
  9803.  o Function name 
  9804.  o Object file name 
  9805.  o Executable name 
  9806.  o Execution time 
  9807.  o Time on call stack 
  9808.  o Number of calls 
  9809.  o Minimum call 
  9810.  o Average call. 
  9811.  o Keys Help. 
  9812.  
  9813.  
  9814. ΓòÉΓòÉΓòÉ 19.4.3.10. Average Call Choice ΓòÉΓòÉΓòÉ
  9815.  
  9816. Select the Average call choice to sort the Average call column in the Details 
  9817. window in descending order. The function with the longest average call time is 
  9818. placed at the top. 
  9819.  
  9820. Select the choice and the Details pane sorts all data by Average the call time 
  9821. column. 
  9822.  
  9823. Each entry in this column designates the average amount of time spent in calls 
  9824. to a particular function. 
  9825.  
  9826. Related Information 
  9827.  
  9828.  o Sort Choice 
  9829.  o Function name 
  9830.  o Object file name 
  9831.  o Executable name 
  9832.  o Execution time 
  9833.  o Time on call stack 
  9834.  o Number of calls 
  9835.  o Minimum call 
  9836.  o Maximum call 
  9837.  o Keys Help. 
  9838.  
  9839.  
  9840. ΓòÉΓòÉΓòÉ 19.5. Statistics Options Menu ΓòÉΓòÉΓòÉ
  9841.  
  9842. The Options menu allows you to customize the Statistics diagram and display 
  9843. additional information. 
  9844.  
  9845. The following choices are available from the Options menu: 
  9846.  
  9847.  Find... 
  9848.            Searches for functions, classes (only if you are analyzing a C++ 
  9849.            program), or executables in the diagram. 
  9850.  
  9851.  Font... 
  9852.            Selects the font and font size for the Summary and Details panes. 
  9853.  
  9854.  Tool bar > 
  9855.            Use the tool bar for a shortcut to other menus. 
  9856.  
  9857.  Settings > 
  9858.            Saves the current settings or restores the default settings. 
  9859.  
  9860.  Related Information 
  9861.  
  9862.  o Call Nesting Diagram 
  9863.  o Dynamic Call Graph 
  9864.  o Execution Density Diagram 
  9865.  o Time Line Diagram 
  9866.  o Hints for Using the Performance Analyzer 
  9867.  o Keys Help. 
  9868.  
  9869.  
  9870. ΓòÉΓòÉΓòÉ 19.5.1. Find... Choice ΓòÉΓòÉΓòÉ
  9871.  
  9872. Select the Find... choice to search for functions, classes (only if you are 
  9873. analyzing a C++ program), or executables in the Statistics diagram. 
  9874.  
  9875. Note:   Before you select the Find... choice, choose the type of component you 
  9876. want to search for by selecting View > Details on, and then selecting 
  9877. Functions, Classes, or Executables. 
  9878.  
  9879. When you select the Find... choice, a Find window appears. 
  9880.  
  9881. The Find window that is displayed depends on what type of component (function, 
  9882. class, or executable) you are searching for. If you are searching for: 
  9883.  
  9884.  o A function, the Find Function window appears. 
  9885.  o A class, the Find Class window appears. 
  9886.  o An executable, the Find Executable window appears. 
  9887.  
  9888.  Related Information 
  9889.  
  9890.  o Keys Help. 
  9891.  
  9892.  
  9893. ΓòÉΓòÉΓòÉ 19.5.2. Font... Choice ΓòÉΓòÉΓòÉ
  9894.  
  9895. Select the Font... choice to change the font, font style, and font size for the 
  9896. text area of the Statistics window. This choice is available from the Options 
  9897. menu of the Statistics window. When you select this choice, the Font window 
  9898. appears. 
  9899.  
  9900. The Font window has the following areas: 
  9901.  
  9902.  Font entry field      Type a font name in this entry field or click on the 
  9903.                        scroll bar to see a list of choices and select a name 
  9904.                        from the list. 
  9905.  Font Style entry field Type a font style in this entry field or click on the 
  9906.                        scroll bar to see a list of choices and select a style 
  9907.                        from the list. 
  9908.  Size entry field      Type a font size in this entry field or click on the 
  9909.                        scroll bar to see a list of choices and select a size 
  9910.                        from the list. 
  9911.  Sample box            This box shows a sample of how text will appear with the 
  9912.                        settings you have selected. 
  9913.  OK push button        Changes the font according to the settings you selected. 
  9914.  Cancel push button    Closes the window without making changes. 
  9915.  
  9916.  Related Information 
  9917.  
  9918.  o Keys Help. 
  9919.  
  9920.  
  9921. ΓòÉΓòÉΓòÉ 19.5.3. Tool Bar Cascading Choice ΓòÉΓòÉΓòÉ
  9922.  
  9923. Select the Tool bar cascading choice to have the tool bar display or not 
  9924. display in your window, and to enable and disable the Hover help. 
  9925.  
  9926. The choices from the Tool bar cascaded menu are: 
  9927.  
  9928.  Show      Choose to either show or hide the tool bar. 
  9929.  Hover help Choose to either enable or disable displaying the help text when 
  9930.            the mouse pointer hovers over the tool bar buttons. 
  9931.  
  9932.  Related Information 
  9933.  
  9934.  o Keys Help. 
  9935.  
  9936.  
  9937. ΓòÉΓòÉΓòÉ 19.5.4. Settings Cascading Choice ΓòÉΓòÉΓòÉ
  9938.  
  9939. The choices from the Settings cascaded menu allow you to save current settings 
  9940. or switch to the original settings. 
  9941.  
  9942.  Save 
  9943.            Saves the current session settings. 
  9944.  Restore initial defaults 
  9945.            Restores the original settings. 
  9946.  
  9947.  Related Information 
  9948.  
  9949.  o Save Choice 
  9950.  o Restore Initial Defaults Choice 
  9951.  o Keys Help. 
  9952.  
  9953.  
  9954. ΓòÉΓòÉΓòÉ 19.5.4.1. Save Choice ΓòÉΓòÉΓòÉ
  9955.  
  9956. Select the Save choice to save the current settings. These settings are stored 
  9957. in the IPERF.INI file and remain active until that file is erased. 
  9958.  
  9959. To restore the default settings, select the Restore defaults choice. 
  9960.  
  9961. Related Information 
  9962.  
  9963.  o Restore Initial Defaults Choice 
  9964.  o Keys Help. 
  9965.  
  9966.  
  9967. ΓòÉΓòÉΓòÉ 19.5.4.2. Restore Initial Defaults Choice ΓòÉΓòÉΓòÉ
  9968.  
  9969. Select the Restore initial defaults choice to change to the original or default 
  9970. settings. You can select the Save choice to save settings. 
  9971.  
  9972. Related Information 
  9973.  
  9974.  o Save Choice 
  9975.  o Keys Help. 
  9976.  
  9977.  
  9978. ΓòÉΓòÉΓòÉ 19.6. Statistics Project Menu ΓòÉΓòÉΓòÉ
  9979.  
  9980. This menu appears when you start the Performance Analyzer from within the 
  9981. WorkFrame environment. The Project menu gives you direct access to all of the 
  9982. actions that you can perform from your current location. 
  9983.  
  9984. When you select the Edit function choice from this menu, the source code for 
  9985. the selected function is displayed in the default editor for WorkFrame's edit 
  9986. action. 
  9987.  
  9988. Related Information 
  9989.  
  9990.  o Search Paths Window 
  9991.  o Keys Help 
  9992.  
  9993.  
  9994. ΓòÉΓòÉΓòÉ 19.6.1. Edit Function Choice ΓòÉΓòÉΓòÉ
  9995.  
  9996. Select the Edit function choice to edit a source file in WorkFrame's default 
  9997. editor. This choice lets you edit the source for a function selected on the 
  9998. Statistics diagram. When you are working in the WorkFrame environment, this 
  9999. choice is available from the Project menu on the Statistics diagram. It is also 
  10000. available from the pop-up menu on the Statistics diagram. 
  10001.  
  10002. To locate a source file for editing, the Performance Analyzer must first locate 
  10003. the executable containing the name of the source file. The Performance Analyzer 
  10004. searches the following paths (in the order listed) to locate an executable: 
  10005.  
  10006.   1. Path specified in the Locate Executable window 
  10007.   2. Path specified in the Search path for executable files entry field of the 
  10008.      Search Paths window 
  10009.   3. Directory where the executable was located when the trace file was created 
  10010.   4. The current working directory 
  10011.   5. Path specified by the PATH environment variable. 
  10012.  
  10013.  To identify the name of the source file, the Performance Analyzer looks at the 
  10014.  debug information in the executable. The Performance Analyzer then searches 
  10015.  the following paths (in the order listed) to locate the source file: 
  10016.  
  10017.   1. Path specified in the Locate Source File window 
  10018.   2. Path specified in the Search path for source files entry field of the 
  10019.      Search Paths window 
  10020.   3. Path specified in the compile statement (if provided) 
  10021.   4. Directory where the executable was located when the trace file was created 
  10022.   5. The current working directory 
  10023.   6. Path specified by the INCLUDE environment variable. 
  10024.  
  10025.  If, after searching these paths, the Performance Analyzer cannot find the: 
  10026.  
  10027.   1. Executable, it displays the Locate Executable window to let you enter the 
  10028.      path where the executable resides. 
  10029.   2. Source file, it displays the Locate Source File window to let you enter 
  10030.      the path where the source file resides. 
  10031.  
  10032.  Once the source file for a function is located, the file is opened to the 
  10033.  first line of the function's code. 
  10034.  
  10035.  Notes: 
  10036.  
  10037.   1. The Performance Analyzer remembers the paths you enter in the Locate 
  10038.      Executable and Locate Source File windows and uses them to look for files 
  10039.      the next time you select the Edit function choice. 
  10040.   2. You can specify paths that you want the Performance Analyzer to use by 
  10041.      selecting the Search Paths choice in the Options menu on the Performance 
  10042.      Analyzer - Window Manager window. The paths you enter are automatically 
  10043.      saved for the current session. If you want to save the paths for 
  10044.      subsequent sessions, select the Options menu and then select the Save 
  10045.      choice from the Settings cascaded menu. 
  10046.  
  10047.  Related Information 
  10048.  
  10049.  o Locate Executable Window 
  10050.  o Locate Source File Window 
  10051.  o Search Paths Window 
  10052.  o Starting the Performance Analyzer from WorkFrame 
  10053.  o Keys Help. 
  10054.  
  10055.  
  10056. ΓòÉΓòÉΓòÉ 19.7. Statistics Help Menu ΓòÉΓòÉΓòÉ
  10057.  
  10058. The Help menu has the following choices: 
  10059.  
  10060.  Help index 
  10061.            Displays an index of Help topics. 
  10062.  
  10063.  General help 
  10064.            Displays Help for the active window. 
  10065.  
  10066.  Using help 
  10067.            Describes how to use Help. 
  10068.  
  10069.  How do I 
  10070.            Displays task Help. 
  10071.  
  10072.  VisualAge for C++ Help Menu Items 
  10073.            Launch the VisualAge for C++ documentation associated with the menu 
  10074.            choice. These choices are available when you start the Performance 
  10075.            Analyzer from WorkFrame. 
  10076.  
  10077.  Product information 
  10078.            Displays information about the Performance Analyzer. 
  10079.  
  10080.  Related Information 
  10081.  
  10082.  o Call Nesting Diagram 
  10083.  o Dynamic Call Graph 
  10084.  o Execution Density Diagram 
  10085.  o Statistics Diagram 
  10086.  o Time Line Diagram 
  10087.  o Hints for Using the Performance Analyzer 
  10088.  o Keys Help. 
  10089.  
  10090.  
  10091. ΓòÉΓòÉΓòÉ 19.7.1. Help Index Choice ΓòÉΓòÉΓòÉ
  10092.  
  10093. Select the Help index choice to display an alphabetical index of Performance 
  10094. Analyzer Help topics. This choice is available from the Help menu of the 
  10095. Statistics diagram. 
  10096.  
  10097. Use the Previous push button to return to the last topic you viewed. Use the 
  10098. Search... push button to locate topics in the index. Use the Print... push 
  10099. button to print a topic. 
  10100.  
  10101. Related Information 
  10102.  
  10103.  o Call Nesting Diagram 
  10104.  o Dynamic Call Graph 
  10105.  o Execution Density Diagram 
  10106.  o Statistics Diagram 
  10107.  o Time Line Diagram 
  10108.  o Hints for Using the Performance Analyzer 
  10109.  o Keys Help. 
  10110.  
  10111.  
  10112. ΓòÉΓòÉΓòÉ 19.7.2. General Help Choice ΓòÉΓòÉΓòÉ
  10113.  
  10114. Select the General help choice to display Help information for the active 
  10115. window. This choice is available from the Help menu of the Statistics diagram. 
  10116.  
  10117. The online Help panel displayed is the same panel that is displayed when you 
  10118. place your cursor inside the window and press F1. 
  10119.  
  10120. Related Information 
  10121.  
  10122.  o Call Nesting Diagram 
  10123.  o Dynamic Call Graph 
  10124.  o Execution Density Diagram 
  10125.  o Statistics Diagram 
  10126.  o Time Line Diagram 
  10127.  o Hints for Using the Performance Analyzer 
  10128.  o Keys Help. 
  10129.  
  10130.  
  10131. ΓòÉΓòÉΓòÉ 19.7.3. Using Help Choice ΓòÉΓòÉΓòÉ
  10132.  
  10133. Select the Using help choice for a description of how to use the IBM 
  10134. Performance Analyzer Help facility. This choice is available from the Help menu 
  10135. of the Statistics diagram. 
  10136.  
  10137. Related Information 
  10138.  
  10139.  o Call Nesting Diagram 
  10140.  o Dynamic Call Graph 
  10141.  o Execution Density Diagram 
  10142.  o Statistics Diagram 
  10143.  o Time Line Diagram 
  10144.  o Hints for Using the Performance Analyzer 
  10145.  o Keys Help. 
  10146.  
  10147.  
  10148. ΓòÉΓòÉΓòÉ 19.7.4. How Do I Choice ΓòÉΓòÉΓòÉ
  10149.  
  10150. Select the How do I choice to display the Performance Analyzer task help. This 
  10151. choice is available from the Help menu of the Statistics diagram. 
  10152.  
  10153. Related Information 
  10154.  
  10155.  o Call Nesting Diagram 
  10156.  o Dynamic Call Graph 
  10157.  o Execution Density Diagram 
  10158.  o Statistics Diagram 
  10159.  o Time Line Diagram 
  10160.  o Hints for Using the Performance Analyzer 
  10161.  o Keys Help. 
  10162.  
  10163.  
  10164. ΓòÉΓòÉΓòÉ 19.7.5. Product Information ΓòÉΓòÉΓòÉ
  10165.  
  10166. Select the Product information choice to display copyright and version 
  10167. information about the Performance Analyzer application. This choice is 
  10168. available from the Help menu of the Statistics diagram. 
  10169.  
  10170. Related Information 
  10171.  
  10172.  o Call Nesting Diagram 
  10173.  o Dynamic Call Graph 
  10174.  o Execution Density Diagram 
  10175.  o Statistics Diagram 
  10176.  o Time Line Diagram 
  10177.  o Hints for Using the Performance Analyzer 
  10178.  o Keys Help. 
  10179.  
  10180.  
  10181. ΓòÉΓòÉΓòÉ 20. Time Line Diagram ΓòÉΓòÉΓòÉ
  10182.  
  10183. The Time Line diagram displays the sequence of nested function calls and 
  10184. returns. Time stamps determine the exact placement of an event along the time 
  10185. dimension on the vertical axis. This provides a direct and natural presentation 
  10186. of the chronological relationships of events. 
  10187.  
  10188. The Time Line diagram is similar to the Call Nesting diagram, but the distance 
  10189. between successive events in the diagram is drawn in proportion to the actual 
  10190. time between the events as recorded in the trace file. 
  10191.  
  10192. The names of functions are only drawn when the time spent in that function is 
  10193. large enough to allow the name to be drawn. This value is dependent upon the 
  10194. size of the font being used. For example, with the default font, the distance 
  10195. between the call to the function and the next event must be at least 20 scan 
  10196. lines. This is done to ensure that the function name will not be overwritten by 
  10197. another function name or overdrawn by a line representing a function call or 
  10198. thread switch. 
  10199.  
  10200. You can use this diagram to find where a deadlock occurred. Access violations, 
  10201. system exceptions and other such program errors are recorded in the trace file 
  10202. as user events, as are any messages generated in the code by calls to the 
  10203. Performance Analyzer. These events are indicated by a pink circle in the 
  10204. diagram, and if there is sufficient space, the text associated will be drawn to 
  10205. the right of the events. 
  10206.  
  10207. Areas of the Time Line Window 
  10208.  
  10209. The following topics describe the areas of the Time Line diagram: 
  10210.  
  10211.  o Menu Bar Summary 
  10212.  
  10213.    The following choices are available from the Time Line diagram menu bar: 
  10214.  
  10215.     - Trace file 
  10216.     - Edit 
  10217.     - View 
  10218.     - Options 
  10219.     - Project 
  10220.     - Help. 
  10221.  
  10222.  o Status area... 
  10223.  
  10224.    The Status Area provides information about the following: 
  10225.  
  10226.     - Trace description 
  10227.     - Time slice 
  10228.     - Selected region 
  10229.  
  10230.  o Vertical Ruler 
  10231.  o Time Line Pop-up Menus 
  10232.  
  10233.     - Time Line Diagram Pop-up Menu. 
  10234.     - Time Line Selected Item Pop-up Menu. 
  10235.  
  10236.  Related Information 
  10237.  
  10238.  o Call Nesting Diagram 
  10239.  o Dynamic Call Graph 
  10240.  o Execution Density Diagram 
  10241.  o Statistics Diagram 
  10242.  o Hints for Using the Performance Analyzer 
  10243.  o Keys Help. 
  10244.  
  10245.  
  10246. ΓòÉΓòÉΓòÉ 20.1. Time Line Trace File Menu ΓòÉΓòÉΓòÉ
  10247.  
  10248. The following choices are available from the Trace file menu : 
  10249.  
  10250.  Open as > 
  10251.            Shows a new or an additional diagram. 
  10252.  
  10253.  Printer settings... 
  10254.            Allows you to choose printer settings for your output. 
  10255.  
  10256.  Print selected region... 
  10257.            Prints a selected area of the diagram. 
  10258.  
  10259.  Window Manager 
  10260.            Displays the Window Manager. 
  10261.  
  10262.  Exit the Performance Analyzer 
  10263.            Exits the Performance Analyzer. 
  10264.  
  10265.  Related Information 
  10266.  
  10267.  o Call Nesting Diagram 
  10268.  o Dynamic Call Graph 
  10269.  o Execution Density Diagram 
  10270.  o Statistics Diagram 
  10271.  o Keys Help. 
  10272.  
  10273.  
  10274. ΓòÉΓòÉΓòÉ 20.1.1. Open As Cascading Choice ΓòÉΓòÉΓòÉ
  10275.  
  10276. Select the Open as choice to view another diagram. You can open as many new 
  10277. diagram windows as you want. 
  10278.  
  10279. To select a new diagram: 
  10280.  
  10281.   1. Select Open as from the Trace file menu. A cascaded menu is displayed with 
  10282.      the following choices: 
  10283.  
  10284.     Call Nesting 
  10285.     Dynamic Call Graph 
  10286.     Execution Density 
  10287.     Statistics 
  10288.     Time Line 
  10289.  
  10290.   2. Select the name of the diagram you want to view. A new window opens and 
  10291.      displays the diagram you selected. 
  10292.  
  10293.  Related Information 
  10294.  
  10295.  o Using the Analyze Trace Window 
  10296.  o Keys Help. 
  10297.  
  10298.  
  10299. ΓòÉΓòÉΓòÉ 20.1.1.1. Call Nesting Choice ΓòÉΓòÉΓòÉ
  10300.  
  10301. The Call Nesting choice is available from the Open as cascaded menu. When you 
  10302. select Call Nesting, the Call Nesting Diagram displays. 
  10303.  
  10304. Related Information 
  10305.  
  10306.  o Open As Choice 
  10307.  o Keys Help. 
  10308.  
  10309.  
  10310. ΓòÉΓòÉΓòÉ 20.1.1.2. Dynamic Call Graph Choice ΓòÉΓòÉΓòÉ
  10311.  
  10312. The Dynamic Call Graph choice is available from the Open as cascaded menu. When 
  10313. you select Dynamic Call Graph, the Dynamic Call Graph displays. 
  10314.  
  10315. Related Information 
  10316.  
  10317.  o Open As Choice 
  10318.  o Keys Help. 
  10319.  
  10320.  
  10321. ΓòÉΓòÉΓòÉ 20.1.1.3. Execution Density Choice ΓòÉΓòÉΓòÉ
  10322.  
  10323. The Execution Density choice is available from the Open as cascaded menu. When 
  10324. you select Execution Density, the Execution Density Diagram diagram displays. 
  10325.  
  10326. Related Information 
  10327.  
  10328.  o Open As Choice 
  10329.  o Keys Help. 
  10330.  
  10331.  
  10332. ΓòÉΓòÉΓòÉ 20.1.1.4. Statistics Choice ΓòÉΓòÉΓòÉ
  10333.  
  10334. The Statistics choice is available from the Open as cascaded menu. When you 
  10335. select Statistics, the Statistics Diagram  displays. 
  10336.  
  10337. Related Information 
  10338.  
  10339.  o Open As Choice 
  10340.  o Keys Help. 
  10341.  
  10342.  
  10343. ΓòÉΓòÉΓòÉ 20.1.1.5. Time Line Choice ΓòÉΓòÉΓòÉ
  10344.  
  10345. The Time Line choice is available from the Open as cascaded menu. When you 
  10346. select Time Line, the Time Line  diagram displays. 
  10347.  
  10348. Related Information 
  10349.  
  10350.  o Open As Choice 
  10351.  o Keys Help. 
  10352.  
  10353.  
  10354. ΓòÉΓòÉΓòÉ 20.1.2. Printer Settings... Choice ΓòÉΓòÉΓòÉ
  10355.  
  10356. Select the Printer settings... choice to select settings for your print jobs. 
  10357.  
  10358. When you select the Printer settings... choice, the Printer Settings window 
  10359. appears. 
  10360.  
  10361.  o OK 
  10362.  o Font... 
  10363.  o Job properties... 
  10364.  o Cancel 
  10365.  o Help 
  10366.  
  10367.  Related Information 
  10368.  
  10369.  o Keys Help. 
  10370.  
  10371.  
  10372. ΓòÉΓòÉΓòÉ 20.1.3. Print Selected Region... Choice ΓòÉΓòÉΓòÉ
  10373.  
  10374. Select the Print selected region... choice to print a selected area of the Time 
  10375. Line diagram. 
  10376.  
  10377. To print an area of the Time Line diagram, highlight the area and then select 
  10378. this choice from the Trace file menu. The Print Selected Region window appears. 
  10379.  
  10380. Related Information 
  10381.  
  10382.  o Keys Help. 
  10383.  
  10384.  
  10385. ΓòÉΓòÉΓòÉ 20.1.4. Window Manager Choice ΓòÉΓòÉΓòÉ
  10386.  
  10387. Select the Window Manager choice to display the Window Manager window. 
  10388.  
  10389. Related Information 
  10390.  
  10391.  o Performance Analyzer - Window Manager 
  10392.  o Keys Help. 
  10393.  
  10394.  
  10395. ΓòÉΓòÉΓòÉ 20.1.5. Exit the Performance Analyzer Choice ΓòÉΓòÉΓòÉ
  10396.  
  10397. Select Exit the Performance Analyzer to exit the Performance Analyzer and close 
  10398. all associated windows. 
  10399.  
  10400. Related Information 
  10401.  
  10402.  o Keys Help. 
  10403.  
  10404.  
  10405. ΓòÉΓòÉΓòÉ 20.2. Time Line Edit Menu ΓòÉΓòÉΓòÉ
  10406.  
  10407. The Edit menu allows you to locate and change text in the Time Line diagram. 
  10408.  
  10409. Items you can select from this menu include the following: 
  10410.  
  10411.  Find > 
  10412.            Search for a function call or return or a user event. 
  10413.  
  10414.  Find next 
  10415.            Find the next occurrence of the last item you searched for. 
  10416.  
  10417.  Select time... 
  10418.            Go to a specific time in the diagram. 
  10419.  
  10420.  Select time range... 
  10421.            Select a specified time range in the diagram. 
  10422.  
  10423.  Select all 
  10424.            Select the entire Time Line diagram. 
  10425.  
  10426.  Related Information 
  10427.  
  10428.  o Call Nesting Diagram 
  10429.  o Dynamic Call Graph 
  10430.  o Execution Density Diagram 
  10431.  o Statistics Diagram 
  10432.  o Keys Help. 
  10433.  
  10434.  
  10435. ΓòÉΓòÉΓòÉ 20.2.1. Find Cascading Choice ΓòÉΓòÉΓòÉ
  10436.  
  10437. Select the Find > cascading choice to locate text. 
  10438.  
  10439. Items you can select from the cascaded menu include: 
  10440.  
  10441.  Function...  Locates the text of function calls and returns. 
  10442.  User event... Locates user events 
  10443.  
  10444.  Related Information 
  10445.  
  10446.  o Find Next Choice 
  10447.  o Time Line Diagram Pop-up Menu 
  10448.  o Keys Help. 
  10449.  
  10450.  
  10451. ΓòÉΓòÉΓòÉ 20.2.1.1. Function Choice ΓòÉΓòÉΓòÉ
  10452.  
  10453. Select the Function... choice to search for function calls and returns. 
  10454.  
  10455. When you select the Function... choice, the Find Function window appears. 
  10456.  
  10457. Related Information 
  10458.  
  10459.  o Keys Help. 
  10460.  
  10461.  
  10462. ΓòÉΓòÉΓòÉ <hidden> Find Function Window ΓòÉΓòÉΓòÉ
  10463.  
  10464. Use the Find Function window to search for a specific function in the diagram. 
  10465. You can choose to search when the function was called or returned. 
  10466.  
  10467. To search for a function call or return: 
  10468.  
  10469.   1. Enter the function name in the Find entry field. If you don't know the 
  10470.      function name, you can use wildcard characters (* and ?) in the entry 
  10471.      field, as follows: 
  10472.  
  10473.     o Use an asterisk (*) to represent 0 or more arbitrary characters. For 
  10474.       example, enter: 
  10475.  
  10476.        - * to display a list of all function names. 
  10477.        - b* to display all function names, regardless of length, that begin 
  10478.          with the letter b. 
  10479.        - *b to display all function names that end with the letter b. 
  10480.  
  10481.     o Use a question mark (?) to represent a single arbitrary character. For 
  10482.       example, enter ?b* to display all function names that start with any 
  10483.       character and have the letter b as their second character. 
  10484.  
  10485.       Note:   Wildcards are especially useful when you are searching for a 
  10486.       fully qualified C++ function name (for example, myClass:: 
  10487.       function[parameter] ). 
  10488.  
  10489.   2. Click on the Case sensitive check box if you want to enable case sensitive 
  10490.      searching. 
  10491.  
  10492.   3. Click on the OK push button. 
  10493.  
  10494.   4. Click on the name of a function in the list box. 
  10495.  
  10496.   5. Select the thread that you want searched. 
  10497.  
  10498.   6. Click on the appropriate radio button to search for occurrences of when 
  10499.      the function was: 
  10500.  
  10501.     o Called 
  10502.     o Returned 
  10503.     o Either called or returned. 
  10504.  
  10505.   7. Select the appropriate push button to continue: 
  10506.  
  10507.     o OK 
  10508.     o Cancel 
  10509.     o Help. 
  10510.  
  10511.      Note:   The function is highlighted when found. 
  10512.  
  10513.  Related Information 
  10514.  
  10515.  o Find Next Choice 
  10516.  o Keys Help. 
  10517.  
  10518.  
  10519. ΓòÉΓòÉΓòÉ 20.2.1.2. User Event Choice ΓòÉΓòÉΓòÉ
  10520.  
  10521. Select the User event... choice to search for user events. 
  10522.  
  10523. When you select the User event... choice, the Find User Event window appears. 
  10524.  
  10525. Related Information 
  10526.  
  10527.  o Keys Help. 
  10528.  
  10529.  
  10530. ΓòÉΓòÉΓòÉ 20.2.2. Find Next Choice ΓòÉΓòÉΓòÉ
  10531.  
  10532. Select the Find next choice to locate the next instance of the searched text. 
  10533.  
  10534. To find the next occurrence, select Find next from the Edit menu. The string is 
  10535. highlighted when found. A message box appears if the string cannot be found. 
  10536.  
  10537. Related Information 
  10538.  
  10539.  o Find Window 
  10540.  o Time Line Diagram Pop-up Menu 
  10541.  o Keys Help. 
  10542.  
  10543.  
  10544. ΓòÉΓòÉΓòÉ 20.2.3. Select Time... Choice ΓòÉΓòÉΓòÉ
  10545.  
  10546. Select the Select time... choice to go to a specific time in the diagram. When 
  10547. you select the Select time... choice, the Select Time window appears. 
  10548.  
  10549. Related Information 
  10550.  
  10551.  o Select Time Range Window 
  10552.  o Keys Help. 
  10553.  
  10554.  
  10555. ΓòÉΓòÉΓòÉ 20.2.3.1. Select Time Window ΓòÉΓòÉΓòÉ
  10556.  
  10557. Use the Select Time window to go to a specific time in the diagram. 
  10558.  
  10559. Going to a Specific Time 
  10560.  
  10561. To select the time: 
  10562.  
  10563.   1. Select the appropriate radio button: 
  10564.  
  10565.     o seconds (s) 
  10566.     o milliseconds (ms) 
  10567.     o microseconds (us) 
  10568.  
  10569.   2. Use the spin buttons to select the time you want to display. 
  10570.  
  10571.   3. Select the appropriate push button to continue: 
  10572.  
  10573.     o OK 
  10574.     o Cancel 
  10575.     o Help. 
  10576.  
  10577.  Related Information 
  10578.  
  10579.  o Select Time Range Window 
  10580.  o Call Nesting Diagram 
  10581.  o Execution Density Diagram 
  10582.  o Time Line Diagram 
  10583.  o Keys Help. 
  10584.  
  10585.  
  10586. ΓòÉΓòÉΓòÉ 20.2.4. Select Time Range... Choice ΓòÉΓòÉΓòÉ
  10587.  
  10588. Select the Select time range... choice to choose a specific period of time to 
  10589. view. When you select the Select time range... choice, the Select Time Range 
  10590. window appears. 
  10591.  
  10592. Related Information 
  10593.  
  10594.  o Select Time Window 
  10595.  o Keys Help. 
  10596.  
  10597.  
  10598. ΓòÉΓòÉΓòÉ <hidden> Select Time Range Window ΓòÉΓòÉΓòÉ
  10599.  
  10600. Use the Select Time Range window to view a specific period of time. 
  10601.  
  10602. Selecting Time Periods 
  10603.  
  10604. To select the time period: 
  10605.  
  10606.   1. In the Start time list box, use the spin buttons to select the start time 
  10607.      you want to highlight. 
  10608.  
  10609.   2. To select the time, select the appropriate radio button: 
  10610.  
  10611.     o seconds (s), 
  10612.     o milliseconds (ms), 
  10613.     o microseconds (us). 
  10614.  
  10615.   3. In the End time list box, use the spin buttons to select the end time, 
  10616.      where the highlight will stop. 
  10617.  
  10618.   4. To select the time, select the appropriate radio button: 
  10619.  
  10620.     o seconds (s), 
  10621.     o milliseconds (ms), 
  10622.     o microseconds (us). 
  10623.  
  10624.   5. Select the appropriate push button to continue: 
  10625.  
  10626.     o OK 
  10627.     o Cancel 
  10628.     o Help. 
  10629.  
  10630.  Related Information 
  10631.  
  10632.  o Select Time Window 
  10633.  o Call Nesting Diagram 
  10634.  o Execution Density Diagram 
  10635.  o Time Line Diagram 
  10636.  o Analyze Trace Window 
  10637.  o Keys Help. 
  10638.  
  10639.  
  10640. ΓòÉΓòÉΓòÉ 20.2.5. Select All Choice ΓòÉΓòÉΓòÉ
  10641.  
  10642. Select the Select all choice to highlight the entire diagram. To remove the 
  10643. highlighting, select a specific function. 
  10644.  
  10645. Related Information 
  10646.  
  10647.  o Select Time Window 
  10648.  o Select Time Range Window 
  10649.  o Keys Help. 
  10650.  
  10651.  
  10652. ΓòÉΓòÉΓòÉ 20.3. Time Line View Menu ΓòÉΓòÉΓòÉ
  10653.  
  10654. The choices available from the View menu are: 
  10655.  
  10656.  Zoom in 
  10657.            Magnifies a region of interest in the diagram. 
  10658.  
  10659.  Zoom out 
  10660.            Reduces the scale of the diagram incrementally. 
  10661.  
  10662.  Zoom to selected range 
  10663.            Magnify the diagram to focus on the highlighted area. 
  10664.  
  10665.  Scale pages... 
  10666.            Selects the size of the diagram. 
  10667.  
  10668.  Related Information 
  10669.  
  10670.  o Call Nesting Diagram 
  10671.  o Dynamic Call Graph 
  10672.  o Execution Density Diagram 
  10673.  o Statistics Diagram 
  10674.  o Keys Help. 
  10675.  
  10676.  
  10677. ΓòÉΓòÉΓòÉ 20.3.1. Zoom In Choice ΓòÉΓòÉΓòÉ
  10678.  
  10679. Select the Zoom In choice to magnify the Time Line diagram. 
  10680.  
  10681. Selecting the Zoom In choice will magnify the Time Line diagram by  a factor of 
  10682. 5. The point in the trace file at the top of the current page will remain 
  10683. fixed, resulting in the view changing to show the top one fifth of the 
  10684. previously displayed page. 
  10685.  
  10686. If the diagram is already scaled to its maximum, this choice will be disabled. 
  10687. If the diagram is scaled within a factor of 5 of the maximum magnification, 
  10688. this choice will bring the diagram to its full magnification. 
  10689.  
  10690. The Zoom In choice is offered in both the View menu and the Time Line Diagram 
  10691. Pop-up Menu Also, pressing the + key on the numeric key pad or Shift and the 
  10692. +key on the keyboard will perform the same function. 
  10693.  
  10694. Related Information 
  10695.  
  10696.  o Zoom Out Choice 
  10697.  o Zoom to Selected Range Choice 
  10698.  o Time Line Selected Item Pop-up Menu 
  10699.  o Keys Help. 
  10700.  
  10701.  
  10702. ΓòÉΓòÉΓòÉ 20.3.2. Zoom Out Choice ΓòÉΓòÉΓòÉ
  10703.  
  10704. Select the Zoom Out choice to reduce the magnification of the Time Line 
  10705. diagram. 
  10706.  
  10707. Selecting the Zoom Out choice will decrease the magnification of the Time Line 
  10708. diagram by a factor of 5.  The point in the trace file at the top of the 
  10709. current page will remain fixed, resulting in the view changing to display the 
  10710. previously displayed page in the top one fifth of the new view.  If necessary, 
  10711. the diagram will adjust to ensure that time past the end of the trace file is 
  10712. not displayed. 
  10713.  
  10714. If the diagram is already scaled to its minimum magnification, this choice will 
  10715. be disabled.  If the diagram is scaled within a factor of 5 of the minimum 
  10716. magnification, this choice will bring the diagram to a full 100 % view. 
  10717.  
  10718. The Zoom out choice is offered in both the View menu and the Time Line Diagram 
  10719. pop-up menu. Also, pressing the minus key (-) on the numeric key pad or Shift 
  10720. and the - key on the keyboard will perform the same function. 
  10721.  
  10722. Related Information 
  10723.  
  10724.  o Zoom In Choice 
  10725.  o Zoom to Selected Range Choice 
  10726.  o Time Line Diagram Pop-up Menu 
  10727.  o Keys Help. 
  10728.  
  10729.  
  10730. ΓòÉΓòÉΓòÉ 20.3.3. Zoom to Selected Range Choice ΓòÉΓòÉΓòÉ
  10731.  
  10732. Select the Zoom to selected range to magnify an area of interest in the Time 
  10733. Line diagram. 
  10734.  
  10735. To magnify a region of interest, highlight the region using the mouse or the 
  10736. Select time range... choice and select Zoom to selected range from the View 
  10737. menu. The scale of the diagram will be expanded so that the highlighted area 
  10738. fills the entire display. 
  10739.  
  10740. Note:   When the magnification is at its maximum, the choice will be disabled. 
  10741. Also, if it is impossible to magnify the diagram to the degree required to 
  10742. stretch the highlighted region across the entire diagram, the highest possible 
  10743. magnification will be used. 
  10744.  
  10745. Shortcut Method 
  10746.  
  10747. After highlighting the area of interest, use mouse button 2 to click on the 
  10748. highlighted area.  From the displayed Time Line Selected Item Pop-up Menu, 
  10749. choose Zoom to selected region. 
  10750.  
  10751. Related Information 
  10752.  
  10753.  o Zoom In Choice 
  10754.  o Zoom Out Choice 
  10755.  o Time Line Selected Item Pop-up Menu 
  10756.  o Keys Help. 
  10757.  
  10758.  
  10759. ΓòÉΓòÉΓòÉ 20.3.4. Scale Pages... Choice ΓòÉΓòÉΓòÉ
  10760.  
  10761. Use the Scale pages... choice to select the size of the diagram and to control 
  10762. which functions are displayed in the diagram. Scaling is the process of 
  10763. changing the granularity of the detail in a trace diagram: to step back from a 
  10764. diagram to get a bigger picture or to zoom in to see the finer points. 
  10765.  
  10766. When you select the Scale pages... choice, a Scale Pages window appears. 
  10767.  
  10768. Related Information 
  10769.  
  10770.  o Time Line Diagram Pop-up Menu 
  10771.  o Restore Initial Defaults Choice 
  10772.  o Keys Help. 
  10773.  
  10774.  
  10775. ΓòÉΓòÉΓòÉ 20.4. Time Line Options Menu ΓòÉΓòÉΓòÉ
  10776.  
  10777. The Options menu allows you to customize the Time Line diagram and display 
  10778. additional information. 
  10779.  
  10780. The following choices are available from the Options menu: 
  10781.  
  10782.  Call stack... 
  10783.            Shows all functions on the call stack at a selected point. 
  10784.  
  10785.  Correlation... 
  10786.            Synchronizes other diagrams to display the same highlighted region. 
  10787.  
  10788.  Font... 
  10789.            Selects the font, font style, and font size for the diagram. 
  10790.  
  10791.  Thread layout... 
  10792.            Selects the indentation amount for each thread column and whether to 
  10793.            draw separator bars between threads. 
  10794.  
  10795.  Status area... 
  10796.            Controls the gray area at the top of the window. 
  10797.  
  10798.  Tool bar > 
  10799.            Use the tool bar for a shortcut to other menus. 
  10800.  
  10801.  Settings > 
  10802.            Saves the current settings or restores the defaults. 
  10803.  
  10804.  Related Information 
  10805.  
  10806.  o Call Nesting Diagram 
  10807.  o Dynamic Call Graph 
  10808.  o Execution Density Diagram 
  10809.  o Statistics Diagram 
  10810.  o Time Line Diagram Pop-up Menu 
  10811.  o Time Line Selected Item Pop-up Menu 
  10812.  o Keys Help. 
  10813.  
  10814.  
  10815. ΓòÉΓòÉΓòÉ 20.4.1. Call Stack... Choice ΓòÉΓòÉΓòÉ
  10816.  
  10817. Select the Call stack... choice to display the order in which the functions 
  10818. were called at a selected point. 
  10819.  
  10820. When you select the Call stack... choice, the Call Stack window appears. 
  10821.  
  10822. Related Information 
  10823.  
  10824.  o Time Line Selected Item Pop-up Menu 
  10825.  o Restore Initial Defaults Choice 
  10826.  o Keys Help. 
  10827.  
  10828.  
  10829. ΓòÉΓòÉΓòÉ <hidden> Call Stack Window ΓòÉΓòÉΓòÉ
  10830.  
  10831. Select the Call Stack window to display the order in which the functions were 
  10832. called at a selected point. 
  10833.  
  10834. Displaying the Call Stack 
  10835.  
  10836. To display a call stack for a function: 
  10837.  
  10838.   1. Click on a function to select it. 
  10839.  
  10840.   2. Select Call Stack from the Options menu. A Call  Stack window appears the 
  10841.      function you selected and its parents (called functions) in the order in 
  10842.      which they were called. 
  10843.  
  10844.   3. Select the appropriate push button to continue: 
  10845.  
  10846.     o OK 
  10847.     o Help. 
  10848.  
  10849.  Related Information 
  10850.  
  10851.  o Call Nesting Diagram 
  10852.  o Time Line Diagram. 
  10853.  o Keys Help. 
  10854.  
  10855.  
  10856. ΓòÉΓòÉΓòÉ 20.4.2. Correlation... Choice ΓòÉΓòÉΓòÉ
  10857.  
  10858. Select the Correlation... choice to mark a point in time in the Call Nesting 
  10859. diagram, Execution Density diagram, or Time Line diagram and then find that 
  10860. same point in another Call Nesting diagram, Execution Density diagram, or Time 
  10861. Line diagram. You can correlate more than two diagrams at a time. 
  10862.  
  10863. When you select the Correlation... choice, the Correlation window appears. 
  10864.  
  10865. Related Information 
  10866.  
  10867.  o Time Line Selected Item Pop-up Menu 
  10868.  o Keys Help. 
  10869.  
  10870.  
  10871. ΓòÉΓòÉΓòÉ 20.4.3. Font... Choice ΓòÉΓòÉΓòÉ
  10872.  
  10873. Select the Font... choice to change the font, font style, and font size for the 
  10874. text area of the Time Line window. This choice is available from the Options 
  10875. menu of the Time Line window. When you select this choice, the Font window 
  10876. appears. 
  10877.  
  10878. The Font window has the following areas: 
  10879.  
  10880.  Font entry field    Type a font name in this entry field or click on the 
  10881.                      scroll bar to see a list of choices and select a name from 
  10882.                      the list. 
  10883.  Font Style entry field Type a font style in this entry field or click on the 
  10884.                      scroll bar to see a list of choices and select a style 
  10885.                      from the list. 
  10886.  Size entry field    Type a font size in this entry field or click on the 
  10887.                      scroll bar to see a list of choices and select a size from 
  10888.                      the list. 
  10889.  Sample box          This box shows a sample of how text will appear with the 
  10890.                      settings you have selected. 
  10891.  OK push button      Changes the font according to the settings you selected. 
  10892.  Cancel push button  Closes the window without making changes. 
  10893.  
  10894.  Related Information 
  10895.  
  10896.  o Time Line Diagram Pop-up Menu 
  10897.  o Keys Help. 
  10898.  
  10899.  
  10900. ΓòÉΓòÉΓòÉ 20.4.4. Thread Layout... Choice ΓòÉΓòÉΓòÉ
  10901.  
  10902. Select the Thread layout... choice to control thread indentation and to control 
  10903. drawing of thread separator bars between the threads. A Thread Layout window 
  10904. appears. 
  10905.  
  10906. Related Information 
  10907.  
  10908.  o Time Line Diagram Pop-up Menu 
  10909.  o Keys Help. 
  10910.  
  10911.  
  10912. ΓòÉΓòÉΓòÉ <hidden> Thread Layout Window ΓòÉΓòÉΓòÉ
  10913.  
  10914. Use the Thread Layout window to control the thread indentation and to control 
  10915. whether separator bars are drawn between the threads. 
  10916.  
  10917. Controlling Indentation and Separator Bars 
  10918.  
  10919. To use the Thread Layout window: 
  10920.  
  10921.   1. Select the spin buttons in the Indents per thread  entry field until the 
  10922.      value you want displays. 
  10923.  
  10924.   2. Select the check box to draw separator lines between the threads. A check 
  10925.      mark in the box indicates to draw separator bars and an empty box 
  10926.      indicates not to draw the separator bars. 
  10927.  
  10928.   3. Select the appropriate push button to continue: 
  10929.  
  10930.     o OK 
  10931.     o Apply 
  10932.     o Cancel 
  10933.     o Help. 
  10934.  
  10935.  Related Information 
  10936.  
  10937.  o Call Nesting Diagram 
  10938.  o Time Line Diagram 
  10939.  o Keys Help. 
  10940.  
  10941.  
  10942. ΓòÉΓòÉΓòÉ 20.4.5. Status Area... Choice ΓòÉΓòÉΓòÉ
  10943.  
  10944. Select the Status area... choice to control the area at the top of the window. 
  10945. When you select the Status area... choice, the Status Area Window window 
  10946. appears. 
  10947.  
  10948. Related Information 
  10949.  
  10950.  o Keys Help. 
  10951.  
  10952.  
  10953. ΓòÉΓòÉΓòÉ 20.4.5.1. Status Area Window ΓòÉΓòÉΓòÉ
  10954.  
  10955. Use the Status Area window to control the area at the top of the window. 
  10956.  
  10957. The check boxes represent the choices in the Status Area that you can show or 
  10958. hide. When you disable the check box the choice is hidden. Likewise, when you 
  10959. enable the check box, the choice displays in the Status Area. 
  10960.  
  10961. In each diagram the Status Area displays different information. When you select 
  10962. the Status Area window, the choices in the window change based upon the Status 
  10963. Area of the diagram. 
  10964.  
  10965. Select the following topics to see the choices available in the Status Area 
  10966. window for each applicable diagram: 
  10967.  
  10968.  o Call Nesting Status Area Window 
  10969.  o Dynamic Call Graph Status Area Window 
  10970.  o Execution Density Status Area Window 
  10971.  o Time Line Status Area Window. 
  10972.  
  10973.  
  10974. ΓòÉΓòÉΓòÉ <hidden> Time Line Status Area Window ΓòÉΓòÉΓòÉ
  10975.  
  10976. Use the Status Area window to control the area at the top of the window. 
  10977.  
  10978. The check boxes represent the choices in the Status Area that you can show or 
  10979. hide. When you disable the check box the choice is hidden. Likewise, when you 
  10980. enable the check box, the choice displays in the Status Area. 
  10981.  
  10982. In each diagram the Status Area displays different information. When you select 
  10983. the Status Area window, the choices in the window change based upon the Status 
  10984. Area of the diagram. 
  10985.  
  10986. Choices from the Time Line Status Area window include: 
  10987.  
  10988.  o Trace Description 
  10989.  o Time Slice 
  10990.  o Selected Region 
  10991.  
  10992.  Related Information 
  10993.  
  10994.  o Call Nesting Status Area Window 
  10995.  o Execution Density Status Area Window 
  10996.  o Dynamic Call Graph Status Area Window 
  10997.  o Keys Help. 
  10998.  
  10999.  
  11000. ΓòÉΓòÉΓòÉ 20.4.6. Tool Bar Cascading Choice ΓòÉΓòÉΓòÉ
  11001.  
  11002. Select the Tool bar cascading choice to have the tool bar display or not 
  11003. display in your window, and to enable and disable the Hover help. 
  11004.  
  11005. The choices from the Tool bar cascaded menu are: 
  11006.  
  11007.  Show      Choose to either show or hide the Tool bar. 
  11008.  Hover help Choose to either enable or disable displaying the help text when 
  11009.            the mouse pointer hovers over the tool bar buttons. 
  11010.  
  11011.  Related Information 
  11012.  
  11013.  o Keys Help. 
  11014.  
  11015.  
  11016. ΓòÉΓòÉΓòÉ 20.4.7. Settings Cascading Choice ΓòÉΓòÉΓòÉ
  11017.  
  11018. The choices from the Settings cascaded menu allow you to save current settings 
  11019. or switch to the original settings. 
  11020.  
  11021.  Save      Saves the current session settings. 
  11022.  Restore Initial Defaults Restores the original settings. 
  11023.  
  11024.  Related Information 
  11025.  
  11026.  o Save Choice 
  11027.  o Restore Initial Defaults Choice 
  11028.  o Keys Help. 
  11029.  
  11030.  
  11031. ΓòÉΓòÉΓòÉ 20.4.7.1. Save Choice ΓòÉΓòÉΓòÉ
  11032.  
  11033. Select the Save choice to save the current settings. These settings are stored 
  11034. in the IPERF.INI file and remain active until that file is erased. 
  11035.  
  11036. To restore the default settings, select the Restore initial defaults choice. 
  11037.  
  11038. Related Information 
  11039.  
  11040.  o Restore Initial Defaults Choice 
  11041.  o Keys Help. 
  11042.  
  11043.  
  11044. ΓòÉΓòÉΓòÉ 20.4.7.2. Restore Initial Defaults Choice ΓòÉΓòÉΓòÉ
  11045.  
  11046. Select the Restore initial defaults choice to change to the original or default 
  11047. settings. You can select the Save choice to save settings. 
  11048.  
  11049. Related Information 
  11050.  
  11051.  o Save Choice 
  11052.  o Keys Help. 
  11053.  
  11054.  
  11055. ΓòÉΓòÉΓòÉ 20.5. Time Line Project Menu ΓòÉΓòÉΓòÉ
  11056.  
  11057. This menu appears when you start the Performance Analyzer from within the 
  11058. WorkFrame environment. The Project menu gives you direct access to all of the 
  11059. actions that you can perform from your current location. 
  11060.  
  11061. When you select the Edit function choice from this menu, the source code for 
  11062. the selected function is displayed in the default editor for WorkFrame's edit 
  11063. action. 
  11064.  
  11065. Related Information 
  11066.  
  11067.  o Search Paths Window 
  11068.  o Trace Generation Window 
  11069.  o Keys Help 
  11070.  
  11071.  
  11072. ΓòÉΓòÉΓòÉ 20.5.1. Edit Function Choice ΓòÉΓòÉΓòÉ
  11073.  
  11074. Select the Edit function choice to edit a source file in WorkFrame's default 
  11075. editor. This choice lets you edit the source for a function selected on the 
  11076. Time Line diagram. When you are working in the WorkFrame environment, this 
  11077. choice is available from the Project menu on the Time Line diagram. It is also 
  11078. available from the Selected Item pop-up menu on the Time Line diagram. 
  11079.  
  11080. To locate a source file for editing, the Performance Analyzer must first locate 
  11081. the executable containing the name of the source file. The Performance Analyzer 
  11082. searches the following paths (in the order listed) to locate an executable: 
  11083.  
  11084.   1. Path specified in the Locate Executable window 
  11085.   2. Path specified in the Search path for executable files entry field of the 
  11086.      Search Paths window 
  11087.   3. Directory where the executable was located when the trace file was created 
  11088.   4. The current working directory 
  11089.   5. Path specified by the PATH environment variable. 
  11090.  
  11091.  To identify the name of the source file, the Performance Analyzer looks at the 
  11092.  debug information in the executable. The Performance Analyzer then searches 
  11093.  the following paths (in the order listed) to locate the source file: 
  11094.  
  11095.   1. Path specified in the Locate Source File window 
  11096.   2. Path specified in the Search path for source files entry field of the 
  11097.      Search Paths window 
  11098.   3. Path specified in the compile statement (if provided) 
  11099.   4. Directory where the executable was located when the trace file was created 
  11100.   5. The current working directory 
  11101.   6. Path specified by the INCLUDE environment variable. 
  11102.  
  11103.  If, after searching these paths, the Performance Analyzer cannot find the: 
  11104.  
  11105.   1. Executable, it displays the Locate Executable window to let you enter the 
  11106.      path where the executable resides. 
  11107.   2. Source file, it displays the Locate Source File window to let you enter 
  11108.      the path where the source file resides. 
  11109.  
  11110.  Once the source file for a function is located, the file is opened to the 
  11111.  first line of the function's code. 
  11112.  
  11113.  Notes: 
  11114.  
  11115.   1. The Performance Analyzer remembers the paths you enter in the Locate 
  11116.      Executable and Locate Source File windows and uses them to look for files 
  11117.      the next time you select the Edit function choice. 
  11118.   2. You can specify paths that you want the Performance Analyzer to use by 
  11119.      selecting the Search Paths choice in the Options menu on the Performance 
  11120.      Analyzer - Window Manager window. The paths you enter are automatically 
  11121.      saved for the current session. If you want to save the paths for 
  11122.      subsequent sessions, select the Options menu and then select the Save 
  11123.      choice from the Settings cascaded menu. 
  11124.  
  11125.  Related Information 
  11126.  
  11127.  o Locate Executable Window 
  11128.  o Locate Source File Window 
  11129.  o Search Paths Window 
  11130.  o Starting the Performance Analyzer from WorkFrame 
  11131.  o Keys Help. 
  11132.  
  11133.  
  11134. ΓòÉΓòÉΓòÉ 20.6. Time Line Help Menu ΓòÉΓòÉΓòÉ
  11135.  
  11136. The Help menu has the following choices: 
  11137.  
  11138.  Help index 
  11139.            Displays an index of Help topics. 
  11140.  
  11141.  General help 
  11142.            Displays Help for the active window. 
  11143.  
  11144.  Using help 
  11145.            Describes how to use Help. 
  11146.  
  11147.  How do I 
  11148.            Displays task Help. 
  11149.  
  11150.  VisualAge for C++ Help Menu Items 
  11151.            Launch the VisualAge for C++ documentation associated with the menu 
  11152.            choice. These choices are available when you start the Performance 
  11153.            Analyzer from WorkFrame. 
  11154.  
  11155.  Product information 
  11156.            Displays information about the Performance Analyzer. 
  11157.  
  11158.  Related Information 
  11159.  
  11160.  o Call Nesting Diagram 
  11161.  o Dynamic Call Graph 
  11162.  o Execution Density Diagram 
  11163.  o Statistics Diagram 
  11164.  o Time Line Diagram 
  11165.  o Hints for Using the Performance Analyzer 
  11166.  o Keys Help. 
  11167.  
  11168.  
  11169. ΓòÉΓòÉΓòÉ 20.6.1. Help Index Choice ΓòÉΓòÉΓòÉ
  11170.  
  11171. Select the Help index choice to display an alphabetical index of Performance 
  11172. Analyzer Help topics. This choice is available from the Help menu of the Time 
  11173. Line diagram. 
  11174.  
  11175. Use the Previous push button to return to the last topic you viewed. Use the 
  11176. Search... push button to locate topics in the index. Use the Print... push 
  11177. button to print a topic. 
  11178.  
  11179. Related Information 
  11180.  
  11181.  o Call Nesting Diagram 
  11182.  o Dynamic Call Graph 
  11183.  o Execution Density Diagram 
  11184.  o Statistics Diagram 
  11185.  o Time Line Diagram 
  11186.  o Hints for Using the Performance Analyzer 
  11187.  o Keys Help. 
  11188.  
  11189.  
  11190. ΓòÉΓòÉΓòÉ 20.6.2. General Help Choice ΓòÉΓòÉΓòÉ
  11191.  
  11192. Select the General help choice to display Help information for the active 
  11193. window. This choice is available from the Help menu of the Time Line diagram. 
  11194.  
  11195. The online Help panel displayed is the same panel that is displayed when you 
  11196. place your cursor inside the window and press F1. 
  11197.  
  11198. Related Information 
  11199.  
  11200.  o Call Nesting Diagram 
  11201.  o Dynamic Call Graph 
  11202.  o Execution Density Diagram 
  11203.  o Statistics Diagram 
  11204.  o Time Line Diagram 
  11205.  o Hints for Using the Performance Analyzer 
  11206.  o Keys Help. 
  11207.  
  11208.  
  11209. ΓòÉΓòÉΓòÉ 20.6.3. Using Help Choice ΓòÉΓòÉΓòÉ
  11210.  
  11211. Select the Using help choice for a description of how to use the IBM 
  11212. Performance Analyzer Help facility. This choice is available from the Help menu 
  11213. of the Time Line diagram. 
  11214.  
  11215. Related Information 
  11216.  
  11217.  o Call Nesting Diagram 
  11218.  o Dynamic Call Graph 
  11219.  o Execution Density Diagram 
  11220.  o Statistics Diagram 
  11221.  o Time Line Diagram 
  11222.  o Hints for Using the Performance Analyzer 
  11223.  o Keys Help. 
  11224.  
  11225.  
  11226. ΓòÉΓòÉΓòÉ 20.6.4. How Do I Choice ΓòÉΓòÉΓòÉ
  11227.  
  11228. Select the How do I choice to display the Performance Analyzer task help. This 
  11229. choice is available from the Help menu of the Time Line diagram. 
  11230.  
  11231. Related Information 
  11232.  
  11233.  o Call Nesting Diagram 
  11234.  o Dynamic Call Graph 
  11235.  o Execution Density Diagram 
  11236.  o Statistics Diagram 
  11237.  o Time Line Diagram 
  11238.  o Hints for Using the Performance Analyzer 
  11239.  o Keys Help. 
  11240.  
  11241.  
  11242. ΓòÉΓòÉΓòÉ 20.6.5. Product Information ΓòÉΓòÉΓòÉ
  11243.  
  11244. Select the Product information choice to display copyright and version 
  11245. information about the Performance Analyzer application. This choice is 
  11246. available from the Help menu of the Time Line diagram. 
  11247.  
  11248. Related Information 
  11249.  
  11250.  o Call Nesting Diagram 
  11251.  o Dynamic Call Graph 
  11252.  o Execution Density Diagram 
  11253.  o Statistics Diagram 
  11254.  o Time Line Diagram 
  11255.  o Hints for Using the Performance Analyzer 
  11256.  o Keys Help. 
  11257.  
  11258.  
  11259. ΓòÉΓòÉΓòÉ 20.7. Time Line Status Area ΓòÉΓòÉΓòÉ
  11260.  
  11261. The Status Area, located at the top of the window, describes the settings of 
  11262. the diagram. 
  11263.  
  11264. You can select the Status area... choice to change what appears in the area at 
  11265. the top of the Time Line window. 
  11266.  
  11267. When you select the Status area... choice,the Status Area window appears. 
  11268.  
  11269. The choices in the Status Area window include: 
  11270.  
  11271.  Trace description 
  11272.            Shows the description given to the trace file. 
  11273.  Time slice 
  11274.            Displays the value of the time slice. 
  11275.  Selected region 
  11276.            Displays the total time, start time, and end time for a selected 
  11277.            region. 
  11278.  
  11279.  Related Information 
  11280.  
  11281.  o Call Nesting Status Area 
  11282.  o Execution Density Status Area 
  11283.  o Dynamic Call Graph Status Area 
  11284.  o Execution Density Status Area 
  11285.  o Keys Help. 
  11286.  
  11287.  
  11288. ΓòÉΓòÉΓòÉ 20.8. Time Line Vertical Ruler ΓòÉΓòÉΓòÉ
  11289.  
  11290. The Vertical Ruler, located to the left of the diagram, shows the approximate 
  11291. time of events on the screen. 
  11292.  
  11293. To change the time scale, select the Scale pages... choice from the View menu, 
  11294. and the Scale Pages window appears. 
  11295.  
  11296. Related Information 
  11297.  
  11298.  o Keys Help. 
  11299.  
  11300.  
  11301. ΓòÉΓòÉΓòÉ 20.9. Time Line Diagram Pop-up Menu ΓòÉΓòÉΓòÉ
  11302.  
  11303. The pop-up menus allow you to quickly access the most often used features. 
  11304. There are two pop-up menus: Diagram and Selected Item. 
  11305.  
  11306. This pop-up menu contains almost all the choices from the Edit and Options 
  11307. menus. To access this menu, use mouse button 2 to click on the background area 
  11308. of the diagram. The menu is displayed with the following choices: 
  11309.  
  11310.  o Find > 
  11311.  o Find next 
  11312.  o Zoom in 
  11313.  o Zoom out 
  11314.  o Scale pages... 
  11315.  o Font... 
  11316.  o Thread layout... 
  11317.  
  11318.  Related Information 
  11319.  
  11320.  o Time Line Selected Item Pop-up Menu 
  11321.  o Keys Help. 
  11322.  
  11323.  
  11324. ΓòÉΓòÉΓòÉ 20.10. Time Line Selected Item Pop-up Menu ΓòÉΓòÉΓòÉ
  11325.  
  11326. To access this pop-up menu, highlight a region of interest, move the mouse 
  11327. pointer into that area, and click on mouse button 2. This menu contains the 
  11328. following choices: 
  11329.  
  11330.  o Zoom to selected range 
  11331.  o Call stack... 
  11332.  o Correlation... 
  11333.  o Edit function 
  11334.  
  11335.  Related Information 
  11336.  
  11337.  o Time Line Diagram Pop-up Menu 
  11338.  o Keys Help. 
  11339.  
  11340.  
  11341. ΓòÉΓòÉΓòÉ 21. System Exceptions ΓòÉΓòÉΓòÉ
  11342.  
  11343. Certain system exceptions generated by your program will be logged in the trace 
  11344. file as user events. The system exceptions that are logged as user events are: 
  11345.  
  11346.  o EXCEPTION_ACCESS_VIOLATION 
  11347.  o EXCEPTION_ILLEGAL_INSTRUCTION 
  11348.  o EXCEPTION_INT_DIVIDE_BY_ZERO 
  11349.  o EXCEPTION_INT_OVERFLOW 
  11350.  o EXCEPTION_PRIV_INSTRUCTION 
  11351.  o EXCEPTION_FLT_DENORMAL_OPERAND 
  11352.  o EXCEPTION_FLT_DIVIDE_BY_ZERO 
  11353.  o EXCEPTION_FLT_INEXACT_RESULT 
  11354.  o EXCEPTION_FLT_INVALID_OPERATION 
  11355.  o EXCEPTION_FLT_OVERFLOW 
  11356.  o EXCEPTION_FLT_STACK_CHECK 
  11357.  o EXCEPTION_FLT_UNDERFLOW 
  11358.  o EXCEPTION_ARRAY_BOUNDS_EXCEEDED 
  11359.  o EXCEPTION_DATATYPE_MISALIGNMENT 
  11360.  o EXCEPTION_BREAKPOINT 
  11361.  o EXCEPTION_IN_PAGE_ERROR 
  11362.  o EXCEPTION_INVALID_DISPOSITION 
  11363.  o EXCEPTION_NONCONTINUABLE_EXCEPTION 
  11364.  o EXCEPTION_SINGLE_STEP 
  11365.  o EXCEPTION_STACK_OVERFLOW 
  11366.  
  11367.  These system exceptions appear in the Call Nesting, Time Line, and Statistics 
  11368.  diagrams. 
  11369.  
  11370.  In the Call Nesting and Time Line diagrams, system exceptions appear as 
  11371.  follows: 
  11372.  
  11373.   System Exception: Guard page violation
  11374.  
  11375.  In the Call Nesting diagram, select Edit > Find > User event to locate system 
  11376.  exception user events. 
  11377.  
  11378.  Related Information 
  11379.  
  11380.  o Find User Event Window 
  11381.  o Call Nesting Diagram 
  11382.  o Statistics Diagram 
  11383.  o Time Line Diagram 
  11384.  o Trace Generation Window 
  11385.  o Keys Help. 
  11386.  
  11387.  
  11388. ΓòÉΓòÉΓòÉ 22. Hints for Using the Performance Analyzer ΓòÉΓòÉΓòÉ
  11389.  
  11390. The Performance Execution Trace Analyzer helps you understand the behavior of 
  11391. your program by collecting execution trace data and presenting it in several 
  11392. diagrams. The following hints can help you take advantage of some of the 
  11393. Performance Analyzer's features: 
  11394.  
  11395.  o Hint 1: Reduce the amount of trace data the Performance Analyzer collects. 
  11396.  
  11397.  o Hint 2: Use Performance Analyzer features to customize your trace file. 
  11398.  
  11399.  o Hint 3: Use a combination of diagrams to understand your program. 
  11400.  
  11401.  o Hint 4: Use correlation to see different aspects of a point of interest. 
  11402.  
  11403.  o Hint 5: Use the Dynamic Call Graph's color and size characteristics. 
  11404.  
  11405.  o Hint 6: Use the Execution Density diagram to see trends. 
  11406.  
  11407.  o Hint 7: Use the zoom function to see details. 
  11408.  
  11409.  o Hint 8: Find patterns of calls and returns. 
  11410.  
  11411.  o Hint 9: Place annotations in your trace files. 
  11412.  
  11413.  o Hint 10: Use the diagrams to help you understand exception exits. 
  11414.  
  11415.  
  11416. ΓòÉΓòÉΓòÉ 22.1. Hint 1: Reduce the amount of trace data the Performance Analyzer collects. ΓòÉΓòÉΓòÉ
  11417.  
  11418. By default, the Performance Analyzer generates event information for every 
  11419. function possible. However, this sometimes causes the trace file to become very 
  11420. large. Besides using a large amount of disk space, the Performance Analyzer may 
  11421. take an unacceptable amount of time to create a diagram from the trace file 
  11422. and, once created, the diagram may be difficult to manage. 
  11423.  
  11424. The following topics describe several ways you can limit the size of your trace 
  11425. file: 
  11426.  
  11427.  o Creating a Customized Trace File 
  11428.  o Enabling and Disabling Components 
  11429.  o Selecting the Call Depth for Each Thread 
  11430.  o Using Time Stamps 
  11431.  o Setting and Removing Triggers 
  11432.  o Starting and Stopping the Performance Analyzer from Your Program 
  11433.  o Trace On Push Button 
  11434.  o Trace Off Push Button 
  11435.  
  11436.  
  11437. ΓòÉΓòÉΓòÉ 22.2. Hint 2: Use Performance Analyzer features to customize your trace file. ΓòÉΓòÉΓòÉ
  11438.  
  11439.  o Add user events to your program before you trace it. User events are calls 
  11440.    to a Performance Analyzer defined function. You pass it a character string, 
  11441.    and that character string is inserted into your trace file. You can view the 
  11442.    string in the Call Nesting, Statistics, and Time Line diagrams. Since the 
  11443.    Performance Analyzer time stamps user events, they appear in the Time Line 
  11444.    diagram at the time they occurred in the execution. Be sure to use static, 
  11445.    constant character strings for your user event strings. 
  11446.  
  11447.    If you add a user event to your program source file, you must also include a 
  11448.    prototype for the PERF entry point. For C and C++ programs, the prototype 
  11449.    will be inserted for you when you compile your program if you place the 
  11450.    following statement at the beginning of your source file: 
  11451.  
  11452.       #include <iperf.h>
  11453.  
  11454.    Note: 
  11455.  
  11456.    If you want to insert the prototype yourself, the prototypes for C and C++ 
  11457.    programs are as follows: 
  11458.  
  11459.    C Prototype 
  11460.  
  11461.       void PERF (const char* string);
  11462.  
  11463.    C++ Prototype 
  11464.  
  11465.       extern "C" {void PERF(const char* string);}
  11466.  
  11467.    Add a call to the entry point everywhere you want a user event generated. A 
  11468.    sample user event that could be placed in your program is: 
  11469.  
  11470.       PERF ("well, we actually got to this code");
  11471.  
  11472.    The Performance Analyzer time stamps the entrance and exit of each function. 
  11473.    If you want to get better time resolution for a large function for example, 
  11474.    you can divide the function into smaller functions during performance 
  11475.    measurements, or you can add user events. User events enable you to 
  11476.    subdivide large functions into higher resolution time slices. For more 
  11477.    information and examples, see Creating User Events in Your Program. 
  11478.  o The CPPWPA3.OBJ file contains entry points called PerfStart and PerfStop 
  11479.    that accept calls from the program you are tracing. Calls to the PerfStart 
  11480.    and PerfStop entry points cause the Performance Analyzer to start and stop 
  11481.    tracing, respectively. 
  11482.  
  11483.    By putting these calls into your source code, you can control precisely when 
  11484.    the Performance Analyzer starts and stops gathering event during program 
  11485.    execution. For more information and examples, see Starting and Stopping the 
  11486.    Performance Analyzer from Your Program. 
  11487.  o Use the Annotate... choice in the Call Nesting diagram to insert notes and 
  11488.    reminders into your trace file after it is created. You can place 
  11489.    annotations next to any event you select in the diagram. For more 
  11490.    information, see Annotate... Choice. 
  11491.  o You can also trace APIs by linking to the Performance Analyzer's traceable 
  11492.    versions of the libraries: _KERNEL.LIB, _USER32.LIB, and _GDI32.LIB. For 
  11493.    more information, see Tracing System Calls. 
  11494.  
  11495.  
  11496. ΓòÉΓòÉΓòÉ 22.3. Hint 3: Use a combination of diagrams to understand your program. ΓòÉΓòÉΓòÉ
  11497.  
  11498. Sometimes two or more diagrams can help you understand a program better. For 
  11499. instance, if you have a new program to learn, and you don't want to wade 
  11500. through code listings to determine how the code works, you can use the Dynamic 
  11501. Call Graph and the Call Nesting and Time Line diagrams to get a good 
  11502. understanding of the program's flow. 
  11503.  
  11504. The Call Nesting diagram shows the order in which functions are called and 
  11505. returned. The times for these events are displayed in the Time Line diagram. 
  11506.  
  11507. The Dynamic Call Graph shows all of the program's threads, the relative 
  11508. importance (in execution time) of the different functions, and the call 
  11509. hierarchy. 
  11510.  
  11511. For a description of each of the Performance Analyzer diagrams, see Analyzing a 
  11512. Trace File. 
  11513.  
  11514.  
  11515. ΓòÉΓòÉΓòÉ 22.4. Hint 4: Use correlation to see different aspects of a point of interest. ΓòÉΓòÉΓòÉ
  11516.  
  11517. Correlation is helpful because one diagram cannot show everything of interest 
  11518. within a trace file. Additionally, some events are easier to find in one 
  11519. diagram, but the information in another is more meaningful; therefore, you can 
  11520. locate the event in one diagram and correlate to another. 
  11521.  
  11522. For these and other instances, the Performance Analyzer provides three 
  11523. time-scaled diagrams that can be correlated: Call Nesting, Execution Density, 
  11524. and Time Line. You can correlate these diagrams based on a specific time or 
  11525. event, or on a range of time or events. 
  11526.  
  11527. For example, use the Call Nesting diagram to identify the order and names of 
  11528. functions called, and then use the Time Line diagram to find out how long a 
  11529. function took to execute. 
  11530.  
  11531. Or you can use the Execution Density diagram to see general patterns that lead 
  11532. up to a certain point, and then correlate that point to the Call Nesting 
  11533. diagram to see the exact order of the function calls. 
  11534.  
  11535. For instructions on correlating diagrams, see Correlation Window. 
  11536.  
  11537.  
  11538. ΓòÉΓòÉΓòÉ 22.5. Hint 5: Use the Dynamic Call Graph's color and size characteristics. ΓòÉΓòÉΓòÉ
  11539.  
  11540. The Dynamic Call Graph shows you information associated with calls and program 
  11541. components (functions, classes [only if you are analyzing a C++ program], or 
  11542. executables). In this diagram, a node represents a component and an arc, which 
  11543. is displayed between a pair of nodes, represents a call from one component to 
  11544. another. Double-click on any node to display a window that provides both the 
  11545. name of the represented component and execution information. Double-click on 
  11546. any arc to display a window that provides the caller and callee of the arc. 
  11547.  
  11548. Node and Arc Color 
  11549.  
  11550. Node color is based on the maximum execution time spent in any component. Arc 
  11551. color is based on the maximum number of calls between any two pairs of 
  11552. components. 
  11553.  
  11554. The following table explains how the Dynamic Call Graph uses node color. 
  11555.  
  11556. Note:   Class execution time is calculated by totalling the execution times for 
  11557. all member functions contained in the class. 
  11558.  
  11559. +--------------------------------------------------------+
  11560. |Node Color:    |Indicates:                              |
  11561. |---------------+----------------------------------------|
  11562. |---------------+----------------------------------------|
  11563. |Gray           |Less than 1/8 of the maximum execution  |
  11564. |               |time was spent in the component.        |
  11565. |---------------+----------------------------------------|
  11566. |Blue           |Between 1/8 and 1/4 of the maximum      |
  11567. |               |execution time was spent in the         |
  11568. |               |component.                              |
  11569. |---------------+----------------------------------------|
  11570. |Yellow         |Between 1/4 and 1/2 of the maximum      |
  11571. |               |execution time was spent in the         |
  11572. |               |component.                              |
  11573. |---------------+----------------------------------------|
  11574. |Red            |Greater than 1/2 of the maximum         |
  11575. |               |execution time was spent in the         |
  11576. |               |component.                              |
  11577. +--------------------------------------------------------+
  11578.  
  11579. The following table explains how the Dynamic Call Graph uses arc color: 
  11580.  
  11581. +--------------------------------------------------------+
  11582. |Arc Color:     |Indicates:                              |
  11583. |---------------+----------------------------------------|
  11584. |Green          |An arc is selected.                     |
  11585. |---------------+----------------------------------------|
  11586. |Gray           |Less than 1/8 of the maximum number of  |
  11587. |               |calls made were made between components.|
  11588. |---------------+----------------------------------------|
  11589. |Blue           |1/8 to 1/4 of the maximum number of     |
  11590. |               |calls made were made between components.|
  11591. |---------------+----------------------------------------|
  11592. |Yellow         |1/4 to 1/2 of the maximum number of     |
  11593. |               |calls made were made between components.|
  11594. |---------------+----------------------------------------|
  11595. |Red            |At least 1/2 of the maximum number of   |
  11596. |               |calls made were made between components.|
  11597. +--------------------------------------------------------+
  11598.  
  11599. Node Size 
  11600.  
  11601. For functions, node height is determined by the node's execution time relative 
  11602. to the function that has the greatest execution time. 
  11603.  
  11604. Node width is determined by the node's time on stack relative to the function 
  11605. that has the greatest time on stack. 
  11606.  
  11607. Time on stack is the time spent on the call stack. If a function is waiting for 
  11608. a message, the time spent waiting is logged as time on stack. 
  11609.  
  11610. Note:   Time on stack includes all time spent in subroutines. 
  11611.  
  11612. For executables and classes, node height and width are based on execution time; 
  11613. therefore, the nodes representing these components will always be square. 
  11614.  
  11615. Time on stack is not relevant for executables and classes. 
  11616.  
  11617. For more information, see Dynamic Call Graph and Dynamic Call Graph Nodes and 
  11618. Arcs. 
  11619.  
  11620.  
  11621. ΓòÉΓòÉΓòÉ 22.6. Hint 6: Use the Execution Density diagram to see trends. ΓòÉΓòÉΓòÉ
  11622.  
  11623. Trends can help you identify areas that execute well and areas that need more 
  11624. attention. 
  11625.  
  11626. The Execution Density diagram is similar to the Time Line diagram in that time 
  11627. is proportional along the vertical axis. The trace time is divided into a 
  11628. series of equal time slices. The Performance Analyzer assigns every function 
  11629. traced a vertical column in the diagram. If a particular function is executed 
  11630. during a time slice, the Performance Analyzer displays color in its column. 
  11631.  
  11632. Think of these time slices as buckets that will hold a certain capacity of 
  11633. time. The Performance Analyzer walks through the trace file filling up each 
  11634. bucket in sequence. When a bucket becomes full, the Performance Analyzer 
  11635. examines its contents and calculates the percentage of the time slice that each 
  11636. function accumulated. Then, the Performance Analyzer maps the percentages to a 
  11637. range, and from there to a color, which is displayed on your screen. (Both the 
  11638. ranges and the colors can be varied by selecting the Color choice in the 
  11639. diagram's Options menu.) The colors help you quickly identify functions that 
  11640. use the most time and those that use the least. 
  11641.  
  11642. When you alter the scale of the diagram, you actually change the buckets' 
  11643. capacity. When filling, each bucket's contents will differ, and the diagram 
  11644. will look different. An event that previously filled a small part of a large 
  11645. bucket might now fill a large part of several smaller buckets. 
  11646.  
  11647. The Execution Density diagram has filtering capabilities that make it easier to 
  11648. see trends. One way to filter out some of the functions is to set their colors 
  11649. equal to the background color. For example, if you don't want to see functions 
  11650. that take 0 to 1% of the execution time during a given time slice, set the 
  11651. color for that range to the background color and those functions will not be 
  11652. displayed. 
  11653.  
  11654. For more information, see Execution Density Diagram. 
  11655.  
  11656.  
  11657. ΓòÉΓòÉΓòÉ 22.7. Hint 7: Use the zoom function to see details. ΓòÉΓòÉΓòÉ
  11658.  
  11659. A useful technique for zooming in to the Execution Density and Time Line 
  11660. diagrams is using the zoom and correlation functions together. Zooming 
  11661. sometimes forces the highlighted region off the page; however, correlation can 
  11662. help you quickly find it again. To use this technique: 
  11663.  
  11664.   1. Open your trace file in a diagram that has both zoom and correlation 
  11665.      capabilities (Execution Density or Time Line). 
  11666.   2. Open another diagram that allows correlation (Call Nesting, Execution 
  11667.      Density, or Time Line). 
  11668.   3. Highlight the area that you want to enlarge (that is, zoom in on) in the 
  11669.      first diagram. 
  11670.   4. Correlate the first diagram to the second. 
  11671.   5. In the first diagram, select the Zoom in choice from the View menu as many 
  11672.      times as you want. 
  11673.   6. Correlate the second diagram to the first. 
  11674.  
  11675.      The region you originally highlighted is back in view. 
  11676.  
  11677.      Note:   If you zoom in too far, you can select the Zoom out choice to 
  11678.      quickly go back one step. 
  11679.  
  11680.  For more information, see Zoom In Choice, Zoom Out Choice, and Correlation 
  11681.  Window. 
  11682.  
  11683.  If you don't want to open another diagram, follow these steps to use the zoom 
  11684.  function: 
  11685.  
  11686.   1. Highlight the area that you want to enlarge. 
  11687.   2. Select the Zoom in choice, and then scroll until you see the area you 
  11688.      highlighted. 
  11689.   3. Continue alternately selecting Zoom in and scrolling to the highlighted 
  11690.      area until the diagram is enlarged to the degree you desire. 
  11691.  
  11692.      Note:   If you zoom in too far, you can select the Zoom out choice to 
  11693.      quickly go back one step. 
  11694.  
  11695.  For more information, see Zoom In Choice and Zoom Out Choice. 
  11696.  
  11697.  Not only does the Zoom to selected range choice provide a quick way to zoom in 
  11698.  on an area of interest, it also provides an easy way to restore the diagram to 
  11699.  full scale after it's been reduced. To restore the diagram to full scale: 
  11700.  
  11701.   1. Select the Select all choice in the View menu. 
  11702.   2. Select the Zoom to selected range choice in the Options menu. 
  11703.  
  11704.  For more information, see Zoom In Choice, Zoom Out Choice, and Zoom To 
  11705.  Selected Range Choice. 
  11706.  
  11707.  
  11708. ΓòÉΓòÉΓòÉ 22.8. Hint 8: Find patterns of calls and returns. ΓòÉΓòÉΓòÉ
  11709.  
  11710. The Call Nesting diagram's Pattern Recognition feature identifies patterns of 
  11711. calls and returns on a single thread. 
  11712.  
  11713. When this feature is on, the Call Nesting diagram identifies these patterns 
  11714. with a curved arc. The number of consecutive repetitions of each pattern is 
  11715. displayed next to the arc. Grouping repeated patterns shortens the number of 
  11716. pages needed to display the trace file. 
  11717.  
  11718. An experienced user seeing many repetitions of patterns could improve 
  11719. performance by grouping functions with pragma alloc_text statements, thereby 
  11720. limiting the number of page swaps between calls in the pattern. 
  11721.  
  11722. For more information, see Include Threads... Choice. 
  11723.  
  11724.  
  11725. ΓòÉΓòÉΓòÉ 22.9. Hint 9: Place annotations in your trace files. ΓòÉΓòÉΓòÉ
  11726.  
  11727.  o An annotation is a way of placing a bookmark or reminder in the trace file 
  11728.    after it has been created. In the Call Nesting diagram, you can use the 
  11729.    Annotate... choice to insert notes and reminders next to any function you 
  11730.    select. 
  11731.  o You also can make notes to yourself in the trace file with user events. User 
  11732.    events are placed in the code before you create the trace file to mark where 
  11733.    certain structures are executed or to help you locate specific areas in the 
  11734.    trace file during analysis. Consider a user event to be a smart "print" 
  11735.    statement that can be used for a variety of debugging purposes. 
  11736.  
  11737.  For more information on inserting annotations and customizing a trace file, 
  11738.  see Annotate... choice and Hint 2: Use Performance Analyzer features to 
  11739.  customize your trace file. 
  11740.  
  11741.  
  11742. ΓòÉΓòÉΓòÉ 22.10. Hint 10: Use the diagrams to help you understand exception exits. ΓòÉΓòÉΓòÉ
  11743.  
  11744. Because the Performance Analyzer is constantly recording events, you not only 
  11745. have a record of where exception exits occur, you also have a record of when 
  11746. they occur. 
  11747.  
  11748. For example, when your program causes an exception, you can open your trace 
  11749. file in the: 
  11750.  
  11751.  Call Nesting diagram... 
  11752.            to find the function in which the exit occurred, what happened 
  11753.            before it reached that point, and where any unexpected thread 
  11754.            switches may have occurred. 
  11755.  
  11756.  Dynamic Call Graph... 
  11757.            to find the call hierarchy and how many components executed prior to 
  11758.            the exit. 
  11759.  
  11760.  Execution Density diagram... 
  11761.            to find trends of activity and abnormal behavior, such as a function 
  11762.            taking longer than it should. 
  11763.  
  11764.  Statistics diagram... 
  11765.            to find cumulative information about component execution times and 
  11766.            numbers of calls. 
  11767.  
  11768.  Time Line diagram... 
  11769.            to find each function's execution time and when each call and return 
  11770.            was made. 
  11771.  
  11772.  For more information, see Analyzing a Trace File. 
  11773.  
  11774.  For more information on specific features and techniques, see other 
  11775.  Performance Analyzer online help topics or the user's guide that came with 
  11776.  your software. 
  11777.  
  11778.  
  11779. ΓòÉΓòÉΓòÉ 23. Keys Help ΓòÉΓòÉΓòÉ
  11780.  
  11781. Ctrl+H 
  11782.  
  11783. On the Trace Generation window and each of the diagrams, you can display Help 
  11784. information for many functions by highlighting the function and pressing 
  11785. Ctrl+H. This Help information is available for functions such as IBM Open Class 
  11786. functions, operating system functions, and C execution time functions. 
  11787.  
  11788. Performance Analyzer - Window Manager Window 
  11789.  
  11790. The following are shortcut keys for the File menu. 
  11791.  
  11792.  Choice                                  Shortcut Keys 
  11793.  Exit the Performance Analyzer           F3 
  11794.  
  11795.  Trace Generation Window 
  11796.  
  11797.  The following are shortcut keys for the Program menu. 
  11798.  
  11799.  Choice                                  Shortcut Keys 
  11800.  Window Manager                          Ctrl+W 
  11801.  Exit the Performance Analyzer           F3 
  11802.  
  11803.  Call Nesting Diagram 
  11804.  
  11805.  The following are shortcut keys for the Trace file menu. 
  11806.  
  11807.  Choice                                  Shortcut Keys 
  11808.  Window Manager                          Ctrl+W 
  11809.  Exit the Performance Analyzer           F3 
  11810.  
  11811.  The following are shortcut keys for the Edit menu. 
  11812.  
  11813.  Choice              Shortcut Keys 
  11814.  Find next           Ctrl+N 
  11815.  Annotate...         Ctrl+A 
  11816.  
  11817.  The following are shortcut keys for the Find... cascaded menu. 
  11818.  
  11819.  Choice              Shortcut Keys 
  11820.  Function...         Ctrl+F 
  11821.  
  11822.  Dynamic Call Graph 
  11823.  
  11824.  The following are shortcut keys for the Trace file menu. 
  11825.  
  11826.  Choice                                  Shortcut Keys 
  11827.  Window Manager                          Ctrl+W 
  11828.  Exit the Performance Analyzer           F3 
  11829.  
  11830.  The following are shortcut keys for the View menu. 
  11831.  
  11832.  Choice              Shortcut Keys 
  11833.  Zoom in             Shift++ (plus) or + on the numeric key pad 
  11834.  Zoom out            Shift+- (minus) or - on the numeric key pad 
  11835.  
  11836.  The following are shortcut keys for the Options menu. 
  11837.  
  11838.  Choice              Shortcut Keys 
  11839.  Find function...    Ctrl+F 
  11840.  
  11841.  Execution Density Diagram 
  11842.  
  11843.  The following are shortcut keys for the Trace file menu. 
  11844.  
  11845.  Choice                                  Shortcut Keys 
  11846.  Window Manager                          Ctrl+W 
  11847.  Exit the Performance Analyzer           F3 
  11848.  
  11849.  The following are shortcut keys for the Edit menu. 
  11850.  
  11851.  Choice              Shortcut Keys 
  11852.  Find function...    Ctrl+F 
  11853.  Find next           Ctrl+N 
  11854.  
  11855.  The following are shortcut keys for the View menu. 
  11856.  
  11857.  Choice              Shortcut Keys 
  11858.  Zoom in             Shift++ (plus) or + on the numeric key pad 
  11859.  Zoom out            Shift+- (minus) or - on the numeric key pad 
  11860.  
  11861.  Statistics Diagram 
  11862.  
  11863.  The following are shortcut keys for the Trace file menu. 
  11864.  
  11865.  Choice                                  Shortcut Keys 
  11866.  Window Manager                          Ctrl+W 
  11867.  Exit the Performance Analyzer           F3 
  11868.  
  11869.  The following are shortcut keys for the Options menu. 
  11870.  
  11871.  Choice              Shortcut Keys 
  11872.  Find...             Ctrl+F 
  11873.  
  11874.  Time Line Diagram 
  11875.  
  11876.  The following are shortcut keys for the Trace file menu. 
  11877.  
  11878.  Choice                                  Shortcut Keys 
  11879.  Window Manager                          Ctrl+W 
  11880.  Exit the Performance Analyzer           F3 
  11881.  
  11882.  The following are shortcut keys for the Edit menu. 
  11883.  
  11884.  Choice              Shortcut Keys 
  11885.  Find function...    Ctrl+F 
  11886.  Find next           Ctrl+N 
  11887.  
  11888.  The following are shortcut keys for the View menu. 
  11889.  
  11890.  Choice              Shortcut Keys 
  11891.  Zoom in             Shift++ (plus) or + on the numeric key pad 
  11892.  Zoom out            Shift+- (minus) or - on the numeric key pad 
  11893.  
  11894.  
  11895. ΓòÉΓòÉΓòÉ <hidden> Add/Change Push Button ΓòÉΓòÉΓòÉ
  11896.  
  11897. Select the Add/Change push button to add or change the comments you have added 
  11898. in the Annotation dialog window of the Call Nesting diagram. 
  11899.  
  11900.  
  11901. ΓòÉΓòÉΓòÉ <hidden> Analyze Trace... Push Button ΓòÉΓòÉΓòÉ
  11902.  
  11903. Select the Analyze Trace... push button to quickly access the Analyze Trace 
  11904. window from which you can select Performance Analyzer diagrams to analyze a 
  11905. trace file. 
  11906.  
  11907.  
  11908. ΓòÉΓòÉΓòÉ <hidden> Apply Push Button ΓòÉΓòÉΓòÉ
  11909.  
  11910. Select the Apply push button to use the selected settings in the current window 
  11911. without making them permanent. 
  11912.  
  11913.  
  11914. ΓòÉΓòÉΓòÉ <hidden> Cancel Push Button ΓòÉΓòÉΓòÉ
  11915.  
  11916. Select the Cancel push button to exit the current window without saving any 
  11917. changes. 
  11918.  
  11919.  
  11920. ΓòÉΓòÉΓòÉ <hidden> Deselect All Push Button ΓòÉΓòÉΓòÉ
  11921.  
  11922. Select the Deselect all push button to deselect all selected elements in the 
  11923. window. This push button is available from the Correlation, Include Functions, 
  11924. and Include Threads windows. 
  11925.  
  11926.  
  11927. ΓòÉΓòÉΓòÉ <hidden> Create Trace... Push Button ΓòÉΓòÉΓòÉ
  11928.  
  11929. Select the Create Trace... push button to quickly access the Create Trace 
  11930. window from which you can start creating a trace file. 
  11931.  
  11932.  
  11933. ΓòÉΓòÉΓòÉ <hidden> Find Caller Push Button ΓòÉΓòÉΓòÉ
  11934.  
  11935. Select the Find Caller push button in the Who Calls Whom window to select and 
  11936. center the node that makes the call. For more information, see the Who Calls 
  11937. Whom window. 
  11938.  
  11939.  
  11940. ΓòÉΓòÉΓòÉ <hidden> Find Callee Push Button ΓòÉΓòÉΓòÉ
  11941.  
  11942. Select the Find Callee push button in the Who Calls Whom window to select and 
  11943. center the node that is called. For more information, see the Who Calls Whom 
  11944. window. 
  11945.  
  11946.  
  11947. ΓòÉΓòÉΓòÉ <hidden> Find Push Button ΓòÉΓòÉΓòÉ
  11948.  
  11949. Click on the Find push button to display the Find File window, which helps you 
  11950. locate a file that you want to trace or analyze. 
  11951.  
  11952.  
  11953. ΓòÉΓòÉΓòÉ <hidden> Font Push Button ΓòÉΓòÉΓòÉ
  11954.  
  11955. Select the Font push button in the Printer Settings  window to select from 
  11956. available fonts. 
  11957.  
  11958.  
  11959. ΓòÉΓòÉΓòÉ <hidden> Job Properties Push Button ΓòÉΓòÉΓòÉ
  11960.  
  11961. Select the Job properties push button in the  Printer Settings window for more 
  11962. detailed information about your print job. 
  11963.  
  11964. From the Job properties... window, select the appropriate push buttons and 
  11965. check boxes. 
  11966.  
  11967.  
  11968. ΓòÉΓòÉΓòÉ <hidden> Help Push Button ΓòÉΓòÉΓòÉ
  11969.  
  11970. Select the Help push button to learn how to use the window that is currently 
  11971. displayed. 
  11972.  
  11973.  
  11974. ΓòÉΓòÉΓòÉ <hidden> OK Push Button ΓòÉΓòÉΓòÉ
  11975.  
  11976. Select the OK push button to save the changes and close the window. 
  11977.  
  11978.  
  11979. ΓòÉΓòÉΓòÉ <hidden> Remove Push Button ΓòÉΓòÉΓòÉ
  11980.  
  11981. Select the Remove push button to remove a comment from the Annotate dialog 
  11982. window in the Call Nesting diagram. 
  11983.  
  11984.  
  11985. ΓòÉΓòÉΓòÉ <hidden> Reset Push Button ΓòÉΓòÉΓòÉ
  11986.  
  11987. Select the Reset push button to return to the default font settings. 
  11988.  
  11989.  
  11990. ΓòÉΓòÉΓòÉ <hidden> Select All Push Button ΓòÉΓòÉΓòÉ
  11991.  
  11992. Select the Select all push button to select all elements in the window. 
  11993.  
  11994.  
  11995. ΓòÉΓòÉΓòÉ <hidden> Stop Push Button ΓòÉΓòÉΓòÉ
  11996.  
  11997. Select the Stop push button in the Application Monitor window to stop your 
  11998. program while it is being analyzed by the Performance Analyzer. When you stop 
  11999. the application, you also stop the collection of trace data. 
  12000.  
  12001. The Analyze Trace window is displayed after the trace stops so that you can 
  12002. select one or more diagrams in which to view the trace data. 
  12003.  
  12004. Related Information 
  12005.  
  12006.  o Trace Off Push Button. 
  12007.  o Trace On Push Button. 
  12008.  o Analyze Trace Window 
  12009.  o Using the Analyze Trace Window 
  12010.  
  12011.  
  12012. ΓòÉΓòÉΓòÉ <hidden> Trace Push Button ΓòÉΓòÉΓòÉ
  12013.  
  12014. Select a program you want to trace, and then click on the Trace push button to 
  12015. close the Trace Generation window and begin tracing your program. 
  12016.  
  12017.  
  12018. ΓòÉΓòÉΓòÉ <hidden> Trace Off Push Button ΓòÉΓòÉΓòÉ
  12019.  
  12020. Select the Trace off push button in the Application Monitor window to stop 
  12021. tracing events in your program. Trace off does not cause your program to stop 
  12022. running; it stops trace events from being recorded to the trace file. When the 
  12023. Application Monitor window is displayed, the Performance Analyzer has already 
  12024. started tracing events, so you can select Trace off anytime after the window is 
  12025. displayed. 
  12026.  
  12027. Note:   Return events are still logged for functions that were called before 
  12028. you turned trace off, and execution time will still be logged against functions 
  12029. that were called but have not returned to the caller. 
  12030.  
  12031. You can also turn tracing off from your program by calling the Performance 
  12032. Analyzer function PerfStop. To turn tracing back on, call the Performance 
  12033. Analyzer function PerfStart. 
  12034.  
  12035. The calls to PerfStart and PerfStop can be anywhere in your program, even in 
  12036. different functions, object modules, or DLLs. If the trace is already off, 
  12037. Calling PerfStop has no effect. If the trace is already on, Calling PerfStart 
  12038. has no effect. For instructions, see Starting and Stopping the Performance 
  12039. Analyzer from Your Program. 
  12040.  
  12041. Related Information 
  12042.  
  12043.  o Trace On Push Button. 
  12044.  o Using the Analyze Trace Window 
  12045.  
  12046.  
  12047. ΓòÉΓòÉΓòÉ <hidden> Trace On Push Button ΓòÉΓòÉΓòÉ
  12048.  
  12049. Select the Trace on push button in the Application Monitor window to start 
  12050. tracing events in your program. Trace on does not cause your program to start 
  12051. running; it causes trace events to start being recorded to the trace file. When 
  12052. the Application Monitor window is displayed, the Performance Analyzer has 
  12053. already started tracing events, so you cannot select Trace on until you have 
  12054. first selected Trace off. 
  12055.  
  12056. You can also turn tracing on from your program by calling the Performance 
  12057. Analyzer function PerfStart. To turn tracing off, call the Performance Analyzer 
  12058. function PerfStop. 
  12059.  
  12060. The calls to PerfStart and PerfStop can be anywhere in your program, even in 
  12061. different functions, object modules, or DLLs. If the trace is already on, 
  12062. Calling PerfStart has no effect. If the trace is already off, Calling PerfStop 
  12063. has no effect. For instructions, see Starting and Stopping the Performance 
  12064. Analyzer from Your Program. 
  12065.  
  12066. Related Information 
  12067.  
  12068.  o Trace Off Push Button 
  12069.  o Using the Analyze Trace Window 
  12070.  
  12071.  
  12072. ΓòÉΓòÉΓòÉ <hidden> Who Calls Whom Push Button ΓòÉΓòÉΓòÉ
  12073.  
  12074. Select the Who calls whom push button in the Function Information window to 
  12075. display only the selected node, and the node or nodes that called the selected 
  12076. node. For more information, see the Dynamic Call Graph Function Information 
  12077. window. 
  12078.  
  12079.  
  12080. ΓòÉΓòÉΓòÉ <hidden> Whom Do I Call Push Button ΓòÉΓòÉΓòÉ
  12081.  
  12082. Select the Whom do I call push button in the Function Information window to 
  12083. display only the selected node, and the node or nodes that the selected node 
  12084. called. For more information, see the Dynamic Call Graph Function Information 
  12085. window. 
  12086.  
  12087.  
  12088. ΓòÉΓòÉΓòÉ 24. Glossary ΓòÉΓòÉΓòÉ
  12089.  
  12090. Double-click on any term to see its definition: 
  12091.  
  12092.  o Annotation 
  12093.  o Arc 
  12094.  o Buffer Wrapping 
  12095.  o Call 
  12096.  o Call Depth 
  12097.  o Call Nesting Diagram 
  12098.  o Class 
  12099.  o Component 
  12100.  o Correlation 
  12101.  o Disable 
  12102.  o Disabling Components 
  12103.  o Dynamic Call Graph 
  12104.  o Enable 
  12105.  o Enabling Components 
  12106.  o Environment Variable 
  12107.  o Event 
  12108.  o Executable 
  12109.  o Execution Density Diagram 
  12110.  o Execution Time 
  12111.  o Flush 
  12112.  o Function 
  12113.  o GDI32.DLL 
  12114.  o Hot Spots 
  12115.  o KERNEL32.DLL 
  12116.  o Maximum Execution Time 
  12117.  o Maximum Number of Calls Made 
  12118.  o Microseconds (us) 
  12119.  o Milliseconds (ms) 
  12120.  o Minus Icon 
  12121.  o Node 
  12122.  o Object Files 
  12123.  o Overhead 
  12124.  o Pels 
  12125.  o Pixels 
  12126.  o Plus Icon 
  12127.  o Profile Hook 
  12128.  o Program/Application Note 
  12129.  o Return 
  12130.  o Scaling 
  12131.  o Seconds (s) 
  12132.  o Shortcut Keys 
  12133.  o Statistics Diagram 
  12134.  o System API calls 
  12135.  o Thread 
  12136.  o Tic 
  12137.  o Time Line Diagram 
  12138.  o Time on Stack 
  12139.  o Time Slice 
  12140.  o Time Stamp 
  12141.  o Trace Analysis 
  12142.  o Trace Event 
  12143.  o Trace File 
  12144.  o Trigger 
  12145.  o User Event 
  12146.  o USER32.DLL 
  12147.  o Win32 
  12148.  o Win32 API 
  12149.  o Windows NT 
  12150.  o Windows 95 
  12151.  
  12152.  
  12153. ΓòÉΓòÉΓòÉ 25. Limitations of the Performance Analyzer ΓòÉΓòÉΓòÉ
  12154.  
  12155. Note the following when using the Performance Analyzer: 
  12156.  
  12157.  o If you have written customized setjmp or longjmp functions to replace the 
  12158.    VisualAge for C++ library versions, the Performance Analyzer will not 
  12159.    function correctly. 
  12160.  o A user event can be created as a constant character string or can be 
  12161.    specified as an area into which a character string has been built. After the 
  12162.    application has terminated, the Performance Analyzer accesses the data area 
  12163.    of the target application so that the user events can be written to disk. 
  12164.    Therefore, each user event must occupy a unique storage location. 
  12165.  o The Performance Analyzer's timing counter wraps after approximately one 
  12166.    hour. If you attempt to collect events more than one hour after you first 
  12167.    start collecting events, the time stamps will not be accurate. 
  12168.  o The Performance Analyzer cannot accurately determine when thread switches 
  12169.    occur. Because of this, the call stack may not be accurate near thread 
  12170.    switches. In the Execution Density and  Time Line diagrams, the time after a 
  12171.    thread switch is associated with the function on the top of the call stack 
  12172.    of the switched-out thread. If there is no such function, the time is not 
  12173.    associated with any function, causing gaps to appear in the diagrams. 
  12174.  o If you minimize the Trace Generation window, the window of the target 
  12175.    application remains in its original state. 
  12176.  o If you minimize the Overview window in the Dynamic Call Graph, it does not 
  12177.    appear in the list of open applications. 
  12178.  o The Performance Analyzer can trace and analyze applications generated by the 
  12179.    VisualAge for C++ compiler. You cannot use the Performance Analyzer to trace 
  12180.    files produced by other 16-bit or 32-bit compilers. The Performance Analyzer 
  12181.    can trace only the first 64 threads in your program. 
  12182.  o The Performance Analyzer cannot generate or analyze trace data for child 
  12183.    processes in a multiprocess application. 
  12184.  o Tracing applications that are currently being debugged by IDEBUG or analyzed 
  12185.    by the Performance Analyzer in another session can cause unpredictable 
  12186.    results. 
  12187.  o The Performance Analyzer cannot calculate operating system overhead. Be 
  12188.    aware that running other applications in the background while running the 
  12189.    Performance Analyzer will impact your execution times. 
  12190.  o C++ applications often have functions that consist of a small number of 
  12191.    instructions. On fast machines, these function call times are small compared 
  12192.    to the system clock resolution of 838 nanoseconds. As a result, reported 
  12193.    overall execution times may be imprecise, especially when these small 
  12194.    functions are called thousands of times. 
  12195.  
  12196.  For information on Performance Analyzer features, see other online help topics 
  12197.  or the user's guide that came with your software. 
  12198.  
  12199.  
  12200. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12201.  
  12202. An annotation is a descriptive comment or an explanatory note that you can add 
  12203. to the Call Nesting diagram. Annotating is like placing a bookmark in the trace 
  12204. file. You can add notes next to the calls and returns about what is being 
  12205. displayed in the diagram. The Performance Analyzer writes these comments in the 
  12206. trace file, so you can display the comments anytime you look at the trace file 
  12207. in the future. 
  12208.  
  12209.  
  12210. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12211.  
  12212. An arc is a directed line connecting two nodes in the Dynamic Call Graph. It 
  12213. shows the relationship between the two nodes. 
  12214.  
  12215.  
  12216. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12217.  
  12218. Average call is the sum of all the time that the function executed divided by 
  12219. the total number of times that the function executed. 
  12220.  
  12221.  
  12222. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12223.  
  12224. When buffer wrapping is enabled, the trace data is written to the trace file 
  12225. only when tracing has stopped. As the program is traced, the buffer fills and 
  12226. overwrites the older events in the buffer. When buffer wrapping is disabled, 
  12227. the data is written to the trace file every time the buffer fills. 
  12228.  
  12229.  
  12230. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12231.  
  12232. To call is to bring a function into effect, such as specifying the entry 
  12233. conditions and then jumping to an entry point in the function. 
  12234.  
  12235.  
  12236. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12237.  
  12238. Call depth is the number of functions that are on the call stack. 
  12239.  
  12240.  
  12241. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12242.  
  12243. The Call Nesting diagram shows the program execution as a vertical series of 
  12244. function calls and returns. Each thread has its own starting column of 
  12245. functions. A call is drawn as a step to the right and a return as a line back 
  12246. to the left. The calls are labeled with the name of the function being called. 
  12247. Context switches between threads are shown by dashed horizontal lines. 
  12248.  
  12249.  
  12250. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12251.  
  12252. A class is a C++ aggregate that may contain functions, types, and user-defined 
  12253. operators in addition to data. Classes may be defined hierarchically, allowing 
  12254. one class to be an expansion of another, and classes can restrict access to 
  12255. their members. 
  12256.  
  12257.  
  12258. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12259.  
  12260. A component can be an executable, an object, or a function from your program. 
  12261.  
  12262.  
  12263. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12264.  
  12265. Correlation allows you to mark a point in time in a diagram, and then find that 
  12266. same point in another diagram. The Performance Analyzer diagrams that can be 
  12267. correlated are: Call Nesting, Execution Density, and Time Line. 
  12268.  
  12269.  
  12270. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12271.  
  12272. When a component is disabled, the Performance Analyzer does not record trace 
  12273. analysis data for it in the trace file. 
  12274.  
  12275.  
  12276. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12277.  
  12278. When you disable a component (an executable, an object file, or a function), 
  12279. the Performance Analyzer does not include information about that component in 
  12280. the trace file. 
  12281.  
  12282. You can disable a component for one trace analysis to tailor the data in the 
  12283. trace file. 
  12284.  
  12285.  
  12286. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12287.  
  12288. The Dynamic Call Graph shows a graphical view of the target program's 
  12289. execution. Each function called is displayed as a node. Calls are shown as arcs 
  12290. between nodes. The color and size of nodes and the color of arcs show the 
  12291. amount of time spent in each function and the number of calls between 
  12292. functions. 
  12293.  
  12294.  
  12295. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12296.  
  12297. When a component is enabled, the Performance Analyzer records trace analysis 
  12298. data for it in the trace file. 
  12299.  
  12300.  
  12301. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12302.  
  12303. When you enable a component (an executable, an object file, or a function), the 
  12304. Performance Analyzer includes information about that component in the trace 
  12305. file. You can enable a component for one trace analysis to tailor the data in 
  12306. the trace file. 
  12307.  
  12308.  
  12309. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12310.  
  12311. An environment variable is any of a number of variables that describe the way 
  12312. an operating system is going to run and the devices it is going to recognize. 
  12313.  
  12314.  
  12315. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12316.  
  12317. An event occurs anytime a function is called or returned. The Performance 
  12318. Analyzer records all events in the trace file. 
  12319.  
  12320.  
  12321. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12322.  
  12323. An executable is a file of compressed images of a program that includes each of 
  12324. the program segments, such as code, data, and call stack and control records 
  12325. that tell the loader how to tie all of the program segments together. 
  12326.  
  12327.  
  12328. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12329.  
  12330. The Execution Density diagram displays trace data in a vertical dimension 
  12331. scaled by the execution time much like the Time Line diagram does, except that 
  12332. calls and returns are not shown. Instead, the entire execution time is divided 
  12333. into a fixed number of horizontal slices, or scan lines, as determined by the 
  12334. number of pages to be used for the entire diagram. Each function that logs 
  12335. events is assigned to a fixed column of the diagram. The Performance Analyzer 
  12336. draws the diagram by coloring each slice of the column depending on the 
  12337. percentage of the slice that the corresponding function used. 
  12338.  
  12339. For instance in the default setting, yellow represents that 0 to 1% of the time 
  12340. slice was used in the function and pink represents that 2 to 5% of the time 
  12341. slice was used. 
  12342.  
  12343.  
  12344. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12345.  
  12346. Execution time is the time during which a program is being executed. 
  12347.  
  12348.  
  12349. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12350.  
  12351. A flush occurs when the virtual logging buffer for a trace is full and the 
  12352. Buffer wrap choice in the Trace Generation window has not been selected. The 
  12353. Performance Analyzer processes the contents of the virtual logging buffer and 
  12354. the events are written to the trace file. After the buffer is flushed, the 
  12355. Performance Analyzer resumes tracing the program. 
  12356.  
  12357.  
  12358. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12359.  
  12360. A function is defined by the Performance Analyzer to be a callable section 
  12361. within the program. For the Performance Analyzer, procedures, methods, and 
  12362. subroutines are synonyms of functions. 
  12363.  
  12364.  
  12365. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12366.  
  12367. A dynamic link library that consists of functions for drawing graphical images 
  12368. and displaying text. See also KERNEL32.DLL and USER32.DLL. 
  12369.  
  12370.  
  12371. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12372.  
  12373. Hot spots are areas within a program where a disproportionate amount of time is 
  12374. spent. The Performance Analyzer traces how long a function runs, which helps 
  12375. determine which functions cause hot spots. 
  12376.  
  12377.  
  12378. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12379.  
  12380. A dynamic link library that consists of functions for managing memory, 
  12381. processes, and threads. See also USER32.DLL and GDI32.DLL. 
  12382.  
  12383.  
  12384. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12385.  
  12386. Maximum call is the largest amount of time that the function executed. 
  12387.  
  12388.  
  12389. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12390.  
  12391. The maximum execution time is the amount of time required to execute the 
  12392. component that has the greatest execution time. 
  12393.  
  12394.  
  12395. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12396.  
  12397. The maximum number of calls made is the number of calls made between the two 
  12398. components that contained the greatest number of calls between them. 
  12399.  
  12400.  
  12401. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12402.  
  12403. The Microseconds radio button causes the time to display in microseconds. 
  12404.  
  12405.  
  12406. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12407.  
  12408. The Milliseconds radio button causes the time to display in milliseconds. 
  12409.  
  12410.  
  12411. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12412.  
  12413. Minimum call is the smallest amount of time that the function executed. 
  12414.  
  12415.  
  12416. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12417.  
  12418. The minus icon is displayed beside an executable and an object file in the 
  12419. Trace Generation window when the file cannot be shown or expanded. 
  12420.  
  12421.  
  12422. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12423.  
  12424. A node is the representation of an individual function, class (only if you are 
  12425. analyzing a C++ program), or executable in the Dynamic Call Graph. 
  12426.  
  12427.  
  12428. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12429.  
  12430. Number of calls is the total number of times that the function was called. 
  12431.  
  12432.  
  12433. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12434.  
  12435. Object files are compiler output files that are linked to comprise an 
  12436. executable. 
  12437.  
  12438.  
  12439. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12440.  
  12441. Overhead time is the time it takes to log events in the trace file. The 
  12442. Performance Analyzer measures its overhead and adjusts the timing information 
  12443. accordingly. 
  12444.  
  12445.  
  12446. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12447.  
  12448. Pixels are picture elements. Synonym for pels. 
  12449.  
  12450.  
  12451. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12452.  
  12453. Pels are the smallest area of a display screen capable of being addressed and 
  12454. switched between visible and invisible states. Synonym for pixel and picture 
  12455. element. 
  12456.  
  12457.  
  12458. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12459.  
  12460. % of execution is the total amount of time that was spent in the function 
  12461. divided by the total time that the application was executing. 
  12462.  
  12463.  
  12464. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12465.  
  12466. % on stack is the total amount of time that the function was on the stack 
  12467. divided by the total time that the application was executing. 
  12468.  
  12469.  
  12470. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12471.  
  12472. The plus icon is displayed beside executable and object files that can be shown 
  12473. or expanded in the Trace Generation window. 
  12474.  
  12475.  
  12476. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12477.  
  12478. When a profile hook is specified, the compiler generates a call to a profiling 
  12479. hook function as the first instruction in the prologue of each function. There 
  12480. are two profiling hook functions: 
  12481.  
  12482.  _Profile_Hook32 
  12483.            Profile hook for all 32-bit functions. 
  12484.  _ProfileHook16 
  12485.            Profile hook for all 16-bit callback functions. These functions are 
  12486.            defined with either the _Far16 _Cdecl or _Far16 _Pascal linkage 
  12487.            keywords. 
  12488.  
  12489.  
  12490. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12491.  
  12492. The word program as used in this online help generally refers to the executable 
  12493. file you are tracing. The word application as used in this online help 
  12494. generally refers to the Performance Analyzer. 
  12495.  
  12496. For other uses, program and application can be used synonymously. 
  12497.  
  12498.  
  12499. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12500.  
  12501. A return is a language construct that ends an execution sequence in a 
  12502. procedure. 
  12503.  
  12504.  
  12505. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12506.  
  12507. Scaling is the process of changing the granularity of the detail in a trace 
  12508. diagram by either zooming out to get a bigger picture or zooming in to see the 
  12509. finer points. 
  12510.  
  12511.  
  12512. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12513.  
  12514. The Seconds radio button causes the time to display in seconds. 
  12515.  
  12516.  
  12517. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12518.  
  12519. Shortcut keys are keys used to invoke menu choices. When two key names are 
  12520. joined by a plus sign (+), use these two keys together by holding down the 
  12521. first key, and then pressing the second key. 
  12522.  
  12523. You can use keyboard shortcuts for most of the menu choices in the Performance 
  12524. Analyzer. 
  12525.  
  12526. For a list of shortcut keys, select any of the following: 
  12527.  
  12528.  o Call Nesting Diagram 
  12529.  o Dynamic Call Graph 
  12530.  o Execution Density Diagram 
  12531.  o Statistics Diagram 
  12532.  o Time Line Diagram 
  12533.  o Trace Generation Window 
  12534.  
  12535.  
  12536. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12537.  
  12538. The Statistics diagram provides a textual report of execution time by function. 
  12539. It also provides summary information. 
  12540.  
  12541.  
  12542. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12543.  
  12544. System API calls are calls made to the operating system through functions 
  12545. located in the following system DLLs: KERNEL32.DLL, USER32.DLL, and GDI32.DLL. 
  12546.  
  12547.  
  12548. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12549.  
  12550. A thread is the smallest unit or path of execution within a process. In 
  12551. Windows, each thread is allocated its own stack from the owning process's 4-GB 
  12552. address space, and each one has its own set of processor registers, called the 
  12553. thread's context. 
  12554.  
  12555.  
  12556. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12557.  
  12558. Approximately 838 nanoseconds. A tic is the smallest unit of time measured by 
  12559. the Performance Analyzer counter. 
  12560.  
  12561.  
  12562. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12563.  
  12564. The Time Line diagram displays the sequence of nested function calls and 
  12565. returns. Time stamps determine the exact placement of an event along the time 
  12566. dimension on the vertical axis. This provides a direct and natural presentation 
  12567. of the chronological relationships of events. 
  12568.  
  12569.  
  12570. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12571.  
  12572. Time on stack is the total time a function is on the call stack while its 
  12573. thread is executing. The time is displayed in the Statistics diagram and the 
  12574. Dynamic Call Graph. 
  12575.  
  12576.  
  12577. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12578.  
  12579. The Performance Analyzer determines the time slice by dividing the total trace 
  12580. time into equal units. For instance, a 10-second trace file would have 10 time 
  12581. slices equal to 1 second each. 
  12582.  
  12583. The time slice value can change based on the page size in the Execution Density 
  12584. diagram or Time Line diagram. If each page represents an overall diagram or 
  12585. 100% view, there is one page. As you magnify the diagram, the number of pages 
  12586. increases, and the time slice value increases. 
  12587.  
  12588.  
  12589. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12590.  
  12591. A time stamp is the actual time at which an event occurred when the program was 
  12592. being traced. The Performance Analyzer time stamps when your program calls and 
  12593. returns from a function. 
  12594.  
  12595.  
  12596. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12597.  
  12598. A trace analysis is a record of events obtained during the execution of a 
  12599. program. It contains the sequences and timing of the events during program 
  12600. execution. 
  12601.  
  12602.  
  12603. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12604.  
  12605. A trace event is either a call to a function or a return from a function. 
  12606.  
  12607.  
  12608. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12609.  
  12610. A trace file  is a file that contains a chronological sequence of records 
  12611. describing events which occurred during the program execution. The trace file 
  12612. contains the trace analysis information from your program. This file can be 
  12613. displayed by the diagrams. 
  12614.  
  12615.  
  12616. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12617.  
  12618. A trigger function turns tracing on when it is called and then turns tracing 
  12619. off when it returns. If a trigger function is nested within another trigger 
  12620. function, tracing is turned off only after the outer function returns. 
  12621.  
  12622.  
  12623. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12624.  
  12625. A user event is a call to the Performance Analyzer that is defined by the user 
  12626. in the program. The Performance Analyzer inserts text strings into the diagrams 
  12627. given by the parameter supplied by this call. User events can help you diagnose 
  12628. problem areas in your program. 
  12629.  
  12630.  
  12631. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12632.  
  12633. A dynamic link library that consists of functions for performing user-interface 
  12634. tasks, such as creating windows and sending messages. See also KERNEL32.DLL and 
  12635. GDI32.DLL. 
  12636.  
  12637.  
  12638. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12639.  
  12640. The name of a 32-bit application programming interface (API) developed by 
  12641. Microsoft. 
  12642.  
  12643. See also Win32 API. 
  12644.  
  12645.  
  12646. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12647.  
  12648. (1) A set of Win32 functions that can be called from source code. 
  12649.  
  12650. (2) A 32-bit version of the 16-bit Windows 3.1 API (native to Windows NT). 
  12651.  
  12652. See also Win32. 
  12653.  
  12654.  
  12655. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12656.  
  12657. An operating system that the Win32 API is implemented on. It is a portable, 
  12658. high-end operating system, which supports multitasking. It is the only 
  12659. operating system that allows implementation of the Win32 APIs on machine 
  12660. architectures based on processors other than the x86, and it supports multiple 
  12661. processors. 
  12662.  
  12663. See also Win32 API. 
  12664.  
  12665. Windows NT is a trademark of Microsoft Corporation. 
  12666.  
  12667.  
  12668. ΓòÉΓòÉΓòÉ <hidden>  ΓòÉΓòÉΓòÉ
  12669.  
  12670. (1) A 32-bit operating system that allows you to run 32-bit applications. 
  12671. Windows 95 is a multitasking, multithreaded operating system that can control 
  12672. multiple programs at once. Each program can have multiple concurrent threads or 
  12673. independently executing subcomponents. 
  12674.  
  12675. (2) A platform that the Win32 API is implemented on. It supports image color 
  12676. matching, modems, and other services. It partially supports asynchronous file 
  12677. I/O, debugging, registry, security, and event-logging functions. 
  12678.  
  12679. Windows 95 is a trademark of Microsoft Corporation.