locked
Profiler information?

Answers

  • I don't think there are any build sessions that demo profiling.

    If the quick start isn't enough, the Visual Studio docs on profiling are here - http://msdn.microsoft.com/en-us/library/z9z62c29(v=vs.110).

    Marks are discussed in the VS profiling docs, though I can't seem to find the Data Collection Control window in 2012.

    • Marked as answer by woody tk Wednesday, June 27, 2012 2:27 AM
    Tuesday, June 26, 2012 7:58 PM
    Moderator

All replies

  • I don't think there are any build sessions that demo profiling.

    If the quick start isn't enough, the Visual Studio docs on profiling are here - http://msdn.microsoft.com/en-us/library/z9z62c29(v=vs.110).

    Marks are discussed in the VS profiling docs, though I can't seem to find the Data Collection Control window in 2012.

    • Marked as answer by woody tk Wednesday, June 27, 2012 2:27 AM
    Tuesday, June 26, 2012 7:58 PM
    Moderator
  • Hi Steve,

    Thanks for your reply

    Woody

    Wednesday, June 27, 2012 2:28 AM
  • Hi,

    I am also interested in profiling metro app, I actually tried it and it works, but I cannot seem to acquire more control over it.

    So basically, I created Direct3D App from template, ran the profiler (Analyze->Profiler->Start Profiling), watched a spinning cube for 5 seconds, hit Stop profiling, and inspected the results.

    As expected, most of the time was spent in Direct3DBase::Present and CubeRenderer::[Direct3DBase]::Render.

    Now let's say, I want to exclude some portion of the code from profiling, so here's what I did:

    #include <VSPerf.h>

    ... then modified Direct3DFramework::Run function like this:

    void Direct3DFramework::Run()
    {
        BasicTimer^ timer = ref new BasicTimer();
    
        while (!m_windowClosed)
        {
    	SuspendProfile(PROFILE_GLOBALLEVEL, PROFILE_CURRENTID);
            timer->Update();
            CoreWindow::GetForCurrentThread()->Dispatcher->ProcessEvents(CoreProcessEventsOption::ProcessAllIfPresent);
            m_renderer->Update(timer->Total, timer->Delta);
            m_renderer->Render();
            m_renderer->Present(); // This call is synchronized to the display frame rate.
    	ResumeProfile(PROFILE_GLOBALLEVEL, PROFILE_CURRENTID);
        }
    
    }

    Ran the profiler, but sadly I am seeing same results, that means rendering and presenting was still got picked by the profiler, though I executed SuspendProfile and ResumeProfile accordingly.

    Is this a bug, or functions from VSPerf.h have no effect on the profiler ran from Visual Studio menu?

    Thanks !

    Wednesday, July 04, 2012 6:05 PM
  • anyone?
    Thursday, July 05, 2012 7:40 PM