To answer Tim's question about when to use VSProfiler vs PerfView, my general recomentation is to use the VS Profiler if you are doing CPU investigations at development time (after all it is integrated into VS).   However you will find that if you are trying to profile at some other time (e.g. investigating a production regression), or you are not investigating CPU (it is a GC, blocked time, memory or other problem), then PerfView is the (obvious) choice. 

To answer 'topksharma' question on what exists on the .NET Compact framework.  I am afraid I don't know off hand.    I know that there are profilers for the phone (which currently uses .NET Compact Framework), but I don't know about other platforms that use CF.