Measuring Performance Using the Content Debugger and Profiler

Before reading this page, you should familiarize yourself with the use of the Vortex® Profiler and the Content Debugger.

Using the Content Debugger along with the Profiler is a powerful combination allowing you to easily find what is slowing down your simulation.

Change the inputs and parameters of your objects and see how it affects the timings of the different sections of your application.

Examples

Disabling the Drawing of a Graphics Node to See the Impact on the Graphics Engine

  1. Open Vortex Studio Player (Standalone).
  2. Load the EOD demo scene.
  3. Start the simulation by pressing .
  4. Within the Profiler tab, select Enable Tree.
  5. Expand ApplicationUpdate > GraphicsOSG > GraphicsDraw, right-click the value in the Time (ms) column, and select Show GraphicsDraw Time (ms).
  6. Do the same for DynamicsEngine and ApplicationUpdate for reference.
  7. Click .
  8. Switch to the Content Debugger tab and select Enable debugger.
  9. In Content > Scene > Buildings > CityStreets > Background graphics node, deselect the Visible input.
  10. Observe the Profiler graph.

Modifying a Dynamics Python Script Extension to See the Effect on the Dynamics Engine

  1. Open Vortex Studio Player (Standalone).
  2. Load the EOD.vxscene demo scene found in your Vortex Studio Demo Scenes folder.
  3. Start the simulation by pressing .
  4. Within the Profiler tab, select Enable Tree.
  5. Select Advanced Mode.
  6. Expand ApplicationUpdate > ModulesPreUpdate > DynamicsEngine > ExtensionPreStep > Scripting > Dynamics Python > Packbot 510 > Packbot Controller, right-click the value in the Time (ms) column, and select Show Packbot Controller Time (ms).
  7. Do the same for ApplicationUpdate and ApplicationUpdate > ModulesPreUpdate > DynamicsEngine for reference.
  8. Click .
  9. Switch to the Content Debugger tab and select Enable debugger.
  10. Go to the Content > Scene > Packbot 510 > Packbot 510 > Packbot Controller script extension and edit the Code parameter.
  11. At the start of the pre_step() method, add the following code:

    Wasting time in the pre_step
    a = 0
    for i in range(50000):
    	a+=1
  12. Clock OK.
  13. Observe the Profiler graph.