Options

Profiling web sites

Hi, I am trying to a profile a website using ANTS Profiler.
The website has aspx pages using business logic in managed code (C++) that in turn calls legacy unmanaged C++ code.
However the profiling results do not show up these managed C++ function calls. All I see are time profiles for the aspx files.
The managed and unmanaged C++ code reside in a common dll which is supposedly loaded by the w3wp worker process for IIS6.

Also, if i choose to profile only the code whose source is available("Only .NET methods that have source code" option), nothing shows up in the results. Atleast the aspx source should be available right ?

Any clues what's going wrong ?

---
Nilesh

Comments

  • Options
    Brian DonahueBrian Donahue Posts: 6,590 Bronze 1
    Hi Nilesh,

    Thanks for asking. ANTS Profiler is a managed-code only profiler. Once the code leaves the managed code realm of .NET's Common Language Runtime, the Profiler doesn't get any method information back.

    Profiling only methods with source code is a wonderfully easy way to filter out all of the .NET methods and concentrate only on the code that you yourself had written. This doesn't work, however, if ANTS cannot find the source code.

    In most cases, this is because ANTS Profiler did not find the .pdb file that is produced when you build an application in the DEBUG configuration. The .pdb points to the location of the source code. You'd normally find the .pdb in the same folder of the dll assembly that ASP .NET compiles when the web application is run for the first time.

    It will probably begin to show results if you edit the web.config to compile the application in DEBUG mode:
    <compilation 
             defaultLanguage="c#"
             debug="true"
        />
    
This discussion has been closed.