;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; This is a sample mshtmdbg.ini ;; Copy this to your windows directory (%windir% -- c:\winnt) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; ***PerfTags are sort of a mini-profile. These let you dump info in retail mode with ; attached timing info. There is pad script to control starting/stoping/clearing/dumping ; of this info. You can build by setting use_perftags_in_retail_build or ; use_perftags_in_meter_build. I have some tools for analyzing this data if you are ; interested. In debug, most of these are exposed as regular debug tags [perftags] ;***Open up the perftags dialog automatically ;AutoOpen=1 ;***Automatically dump at pad shutdown ;AutoDump=1 ;***Overwrite the dump file instead of appending ;OverwriteDump=1 ;***Don't put all the summary stuff in the dump ;SimpleDump=1 ;***File to dump too ;DumpFile=z:\perftags.log ;***Buffer size to prealloc ;PreAllocLog=5103616 ;***Turn individual tags on and off here. tagPerfScript=1 tagPerfWatch=1 tagPerfWatchPad=1 tagDwnBindData=0 tagDwnCtx=0 tagDwnChan=0 tagTableExpand=1 tagRecRequest=1 tagDBTask=1 tagDataTransfer=1 ; ***The meter dialog lets you track resource and statistics. ; The meter dialog also lets you simulate out of memory conditions -- ; either on a global level or on a meter tag by tag level. I didn't ; get around to saving the tags by tag stuff in mshtmdbg.ini [perfmeter] ;***Automatically open the meter dialog ;AutoOpen=1 ;***Automatically start loging meter changes ;AutoLog=1 ;***Dump at pad shutdown ;AutoDump=1 ;***Simulate out of memory ;OutOfMemory=1 ;***Only OOM every n allocations ;OutOfMemoryCycle=500 ; ***switches that only affect profile mode [profile] ;***use shdocvw ;shdocvw=1 ;***serialize preparser,parser,recalc,paint ;serialize=1 ;***don't bg recalc ;nobgrecalc=1 ;***don't calc lines ;norecalclines=1 ;***don't render lines ;norenderlines=1 ;***don't cache decoded images ;noimagecache=1 ;***only profile this timer ;profiletimer=ComputeFormats ;***grab all records at once wrt databinding ;syncdatabind=1 ; ***switches that only affect retail mode [retail] ; ***We have a subsystem called "switches" that end up timing ; certain actions and dumping them when running perf tests. ; complogs knows about these and will break them down into ; different tables; ;*** turn on this subsystem usetimers=1 ;*** keep times for image decoding ;useimagetimer=1 ;*** keep times for heap allocations -- ; rebuild with TIMEHEAP set in src\core\cdutil\memutils.cxx ;useheaptimer=1 ;***these switches are the same as the profile section ;shdocvw=1 ;serialize=1 ;nobgrecalc=1 ;norecalclines=1 ;norenderlines=1 ;noimagecache=1 ;syncdatabind=1 ;***in x86 debug mode we will spew this DWORD onto the stack ; at the start of every function [chkstk] fill=0xBEDABEDA ;***heap fill values -- one byte only! [Memory] FillClean=0x9D FillDead=0xAD HeadGuard=0xBD FootGuard=0xCD ;***default dirs for the pad [PadDirs] FileDir=d:\html ScriptDir=d:\html ; *** if you are recording symbols for mem allocations, this restricts ; that intensive process to allocations of only this certain size. ; Won't work well with realloc... [SymbolLeakTrack] ;Size=312 [P6Ctr] Ctr0=0xC0 Ctr0Modes=* Ctr1=0xD0 Ctr1Modes=*