Resources used by EtwHostService when not connected to dotTrace

We are adding self profiling to our WPF desktop application.  Because we need to use Timeline profiling, we need the EtwHostService installed on the same machine as the application.

While we don't plan to have all instances of our application self-profiling all the time, we don't really know up front which machines of our 2,400+ user machines will need it.  Since these machines are very locked down, we will need to push out the change using a tool (Ghost).  

My Question is:  If we push out EtwHostService to all 2,400+ machines, what kind of resources is EtwHostService going to use when NOT connected to an application that is self-profling via dotTrace?

For example, does it use:

  • CPU
  • Memory
  • Traces (Meaning the limited number of traces controlled by the registry key  `Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\WMI\EtwMaxLoggers`)

Again, this is for when it is NOT connected to dotTrace.  I already am aware of what it will do when connected, but my developer machine is too powerful to accurately feel what kind of impact it has when NOT connected.  

In the end, I am looking for some assurances that when we push this out to 2,400+ machines at my company, I am not going to have a rollback disaster on my hands.


1 comment
Official comment

Duplicate the answer to the same question asked in the bug tracker

The EtwHostService was initially designed as a failover lightweight process that is almost never being changed and never requires to be relaunched for any reason. It has almost no impact on the system since it's just mediating a client (a la dotTrace) and the profiler process (ETW Collector). It consumes around 5MB of memory and is sleeping most of the time regardless of whether the profiler is connected or not.

Please sign in to leave a comment.