Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

242 lines
10 KiB

  1. ;;
  2. ;;
  3. ;; Sample INI file for IceCAP 4.3.
  4. ;;
  5. ;; IceCAP is MICROSOFT CONFIDENTIAL, and should not be distributed except
  6. ;; under NDA.
  7. ;;
  8. ;; To customize your IceCAP runs, copy this file to your working directory
  9. ;; or to your Windows directory and make the appropriate changes.
  10. ;;
  11. [IceCAP]
  12. ;;
  13. ;;****************************************************************************
  14. ;; The Profile= value is read once for each process that starts. HOWEVER, the
  15. ;; Global value (third parameter) is read only ONCE, when the logger starts.
  16. ;;****************************************************************************
  17. ;;
  18. ;;
  19. ;; Profile sets the initial profiling state for the Thread, Process, and
  20. ;; Global levels.
  21. ;; Syntax is: Profile=On|Off[,On|Off,[On|Off|Never]]. Default is On,On,On.
  22. ;;
  23. ;; IceCAP 3.6 syntax works fine for setting the thread-level default value.
  24. ;; Note that we only support Never at the Global level.
  25. ;;
  26. ; Profile=On
  27. ; Profile=Off
  28. ;;
  29. ;; IceCAP 4.x allows greater flexibility, to control all three levels.
  30. ;;
  31. ; Profile=On,On,On
  32. ; Profile=On,Off,On
  33. ; Profile=On,On,Off
  34. ; Profile=Off,Off,Never
  35. ;;
  36. ;;
  37. ;;****************************************************************************
  38. ;; The following settings are read ONCE when the logger is initializing.
  39. ;; These are global settings which are ONLY read from the [IceCAP] section
  40. ;; of the INI file. For any of the sample settings below, remove the comment
  41. ;; indicator ";" at the beginning of the line to make use of the setting.
  42. ;;****************************************************************************
  43. ;;
  44. ;; DataCompression determines whether or not the logger compresses the
  45. ;; collected data. Note that compression takes additional cpu cycles which
  46. ;; may effect the performance of the profiled application. Default is None.
  47. ;; Note: At this time, Aggressive is the same as Standard.
  48. ;;
  49. ; DataCompression=None
  50. ; DataCompression=Standard
  51. ; DataCompression=Aggressive
  52. ;;
  53. ;;
  54. ;; InMemoryCollection determines whether or not to put the IceCAP logger
  55. ;; into a special mode where no data is written until either the profiled
  56. ;; application terminates or until the current ICP file is closed. Note
  57. ;; that opening an new ICP file will result in the second data set also
  58. ;; being collected in memory if the first was collected that way.
  59. ;; Default is Off.
  60. ;;
  61. ; InMemoryCollection=Off
  62. ; InMemoryCollection=On
  63. ;;
  64. ;;
  65. ;; EnableUIDisplay determines whether or not the logger loads its UI
  66. ;; components to show the the current profiling state and allow control
  67. ;; over profiling. Default is On.
  68. ;;
  69. ; EnableUIDisplay=Off
  70. ; EnableUIDisplay=On
  71. ;;
  72. ;;
  73. ;; Shutdown specifies whether, when the logger is started automatically, it
  74. ;; will shut down automatically ("Automatic", the default) or whether it
  75. ;; will continue running until manually shut down ("Manual"). The latter
  76. ;; behavior is useful when profiling a dynamically loaded component which
  77. ;; is loaded and unloaded and reloaded over the course of a single scenario.
  78. ;;
  79. ; Shutdown=Automatic
  80. ; Shutdown=Manual
  81. ;;
  82. ;;
  83. ;; MaxProcesses specifies the maximum number of processes which can be
  84. ;; profiled simultaneously. By default, this is 8.
  85. ;;
  86. ; MaxProcesses=8
  87. ;;
  88. ;;
  89. ;; MaxThreads specifies the maximum number of threads which can be profiled
  90. ;; simultaneously (across multiple processes). By default, this is 32 on
  91. ;; machines with 128MB of memory and is adjusted on a sliding scale for
  92. ;; machines with more RAM.
  93. ;;
  94. ; MaxThreads=64
  95. ;;
  96. ;;
  97. ;; NumberOfBuffers specifies the maximum number of buffers which can be in
  98. ;; use at one time. By default, this is set to the (MaxThreads + 1) (one
  99. ;; buffer per thread plus one extra for the index). This value must be
  100. ;; larger than MaxThreads or an error message will be issued.
  101. ;
  102. NumberOfBuffers=256
  103. ;;
  104. ;;
  105. ;; SizeOfBuffers specifies the size (in "K") of I/O buffers to be used to
  106. ;; collecting profile data. By default, this is 64 (64k or 65535 bytes).
  107. ;; On a system with limited disks but plenty of available RAM, it may be
  108. ;; useful to increase the buffer size (keeping in mind that this is the
  109. ;; size used PER THREAD being profiled). Maximum size is 1024 (1 megabyte).
  110. ;; Minimum size is 4.
  111. ;;
  112. ; SizeOfBuffers=64
  113. ;;
  114. ;;
  115. ;; ClearProcessSecurityACL controls whether any special handling is done
  116. ;; relative to the ACL of a process handle. This may be necessary in
  117. ;; some cases when redirecting output to a new ICP file during a profile
  118. ;; run. Three settings are supported: 'default' (which is the default),
  119. ;; 'standard', and 'impersonating'. Default will not cause any special
  120. ;; ACL handling to take place. Standard should be used to clear process
  121. ;; security for a standard service application. Impersonating should be
  122. ;; used to clear process security for a service which is impersonating
  123. ;; another user. We recommend contacting ICAPSUP before making use of
  124. ;; these settings if you are unsure about whether or not they are needed.
  125. ;;
  126. ; ClearProcessSecurityACL=default
  127. ; ClearProcessSecurityACL=standard
  128. ; ClearProcessSecurityACL=impersonating
  129. ;;
  130. ;;
  131. ;;****************************************************************************
  132. ;; The following settings are IceCAP-specific (i.e. don't apply if collecting
  133. ;; data for DLP, and are read ONCE when the logger is initializing. These
  134. ;; settings must be contained in the [IceCAP] section as well.
  135. ;;****************************************************************************
  136. ;;
  137. ;; P6PerfCounter specifies an additional P6 performance counter whose value
  138. ;; is to be collected in addition to time. The optional qualifier specifies
  139. ;; to which Ring the counter should apply (0 for Kernel, 3 for User, * or
  140. ;; blank for all). By default, this option collects no additional data. If
  141. ;; data is collected, it will be recorded in the User1 counter value slot.
  142. ;; If the P6 counter C0,* is added, IceCAP analysis will automatically
  143. ;; calculate CPI for you. (ie. P6PerfCounter=C0,*)
  144. ;;
  145. ; P6PerfCounter=24,*
  146. ;;
  147. ;;
  148. ;; For some P6 Performance Counters, a Unit Mask can be used to fine-tune
  149. ;; what is being collected. To allow users to specify this unit mask, the
  150. ;; following new INI setting has been added. Default value is 0.
  151. ;;
  152. ; P6PerfCounterUnitMask=0
  153. ; P6PerfCounterUnitMask=f
  154. ;;
  155. ;; UserCounter specifies one or more optional additional user-defined
  156. ;; counters whose value should be recorded with the IceCAP time (and
  157. ;; possibly P6 counter) data. At present, IceCAP supports a maximum of 15
  158. ;; user counter values, which includes a P6 counter if one is being
  159. ;; recorded. To specify a user counter, the user specifies a DLL name,
  160. ;; a counterinfo function name, and a counter initialization function
  161. ;; name. See the IceCAP documentation for additional info about
  162. ;; writing a User counter.
  163. ;;
  164. ; UserCounter=NTUserPerf.dll,GetNtCounterInfo,InitNtCounters
  165. ;;
  166. ;;
  167. ;; CollectPFEvents determines whether page fault data is collected and if so,
  168. ;; for which processes. It can take the following values:
  169. ;; all - pagefault data is collected for all processes in the system
  170. ;; profiled - pagefault data is collected only for profiled processes
  171. ;; none - default - no pagefault data is collected
  172. ;; Note: If you are collecting kernel-mode profiles, CollectPFEvents=profiled
  173. ;; will have the same effect of CollectPFEvents=all.
  174. ;;
  175. ; CollectPFEvents=all
  176. ; CollectPFEvents=profiled
  177. ; CollectPFEvents=none
  178. ;;
  179. ;;
  180. ;; If CollectPFEvents is not set to 'none', then the PageFaultCategory setting
  181. ;; determines what types of page faults are recorded. It can take one or more
  182. ;; of the following values (comma separated):
  183. ;; Hard (default), Transition, DemandZero, CopyOnWrite, Guard,
  184. ;; Soft (equivalent to "Transition, DemandZero,CopyOnWrite,Guard"),
  185. ;; All (equivalent to all of the above)
  186. ;; Note: Due to a bug in WMI, we cannot collect guard page fault data. This
  187. ;; bug exists in Windows 2000 and current Whistler builds, and it is not
  188. ;; expected to be fixed in the near term.
  189. ;;
  190. ; PageFaultCategory=Hard
  191. ; PageFaultCategory=Transition
  192. ; PageFaultCategory=Soft
  193. ; PageFaultCategory=All
  194. ;;
  195. ;; If CollectPFEvents is not set to 'none', then the WMIBuffers setting determines
  196. ;; the number of buffers that the WMI subsystem will allocate for its own use.
  197. ;; The size of the buffers is the specified below. The default is 32 buffers.
  198. ;;
  199. ; WMIBuffers=32
  200. ;;
  201. ;;
  202. ;; If CollectPFEvents is not set to 'none', then the WMIBufferSize setting
  203. ;; determines the size (in K) of the buffers that the WMI subsystem will
  204. ;; allocate for its own use. The default is 4K buffers.
  205. ;;
  206. ; WMIBufferSize=4
  207. ;;
  208. ;;
  209. ;;
  210. ;;****************************************************************************
  211. ;; The following fields are read ONCE when the logger is initializing. If
  212. ;; the logger is started manually, they will be read from the [IceCAP] section.
  213. ;; If the logger is started from an instrumented process, it will first look
  214. ;; for a section with that process's base application name ([WinWord] for
  215. ;; example), then if it doesn't find the entry, it will look in the [IceCAP]
  216. ;; section.
  217. ;;****************************************************************************
  218. ;;
  219. ;; DetectKernelTransitions determines whether or not a P6/PII performance
  220. ;; counter is used to track transitions between user mode and kernel mode.
  221. ;; By default, this is On for P6/PII processors, and Off for vanilla
  222. ;; Pentium processors. By turning this off, only Elapsed time can be
  223. ;; measured. It can, however, reduce collection overhead as a result.
  224. ;;
  225. ; DetectKernelTransitions=On
  226. ; DetectKernelTransitions=Off
  227. ;;
  228. ;;
  229. ;; Output overrides the path and/or filename used for the log file (ICP
  230. ;; file). For additional details, please refer to the documentation.
  231. ;;
  232. ; Output=C:\ICPFILES
  233. ; Output=C:\ICPFILES\SCENARIO1.ICP
  234. ;;
  235. ;; Additional, application-specific sections can be added to specify profile
  236. ;; settings for specific processes.
  237. ;;
  238. [WinWord]
  239. ;;
  240. ; Profile=On
  241. ; Profile=Off
  242. ;;