OVR Metrics Tool

The OVR Metrics Tool is an application that can be installed on any Oculus Mobile device to provide performance metrics for applications.

OVR Metrics Tool reports application frame rate, heat, GPU and CPU throttling values, utilization, and the number of tears and stale frames per second. It is available for download from our Downloads page.

OVR Metrics Tool can be run two modes. In Report Mode, it produces a performance report about a VR session after it is complete. Report data may be easily exported as a CSV and PNG graphs.

In Performance HUD Mode, OVR Metrics Tool renders performance graphs as a VR overlay over any running Oculus application.

OVR Metrics Tool may be used with any Oculus Mobile application, including those built with Unity, Unreal, or our native mobile SDK.

Installation

Install OVRMetricsTool.apk on any Gear VR-compatible Android phone or Oculus Go. For more details, see “Using adb to Install Applications” in our adb guide or the “Install an App” section of Google’s adb documentation.

On Oculus Go, you can open the application by issuing the following command:

adb shell am start omms://app

Report Mode Usage

To enable report mode, first open the OVR Metrics Tool app from the Android apps menu, and open the Options menu. Enable the toggle that says Capture to CSV. You can also enable report mode by issuing the following adb command:

adb shell setprop debug.oculus.omms.enableCSV true

Run your VR application and conduct a session you want to gather data for. Note that data will be logged from every application you run. After you have finished your session and exited VR, open OVR Metrics Tool again and click the log entry that corresponds to your application. (On Oculus Go this list can be accessed through the Recorded Sessions option in the drop-down menu.) You will see a series of graphs describing the performance of your session. Use the buttons at the bottom of the report to save the information or share an image of the report. Recorded sessions can also be retrieved from /sdcard/OVRMonitorMetricsService/Records/ for your own analysis.

Performance HUD Usage

To enable performance HUD mode, open the OVR Metrics Tool app and bring up the Options menu. Enable the toggle that says Enable Overlay. Alternatively you can enable the HUD by issuing the command:

adb shell setprop debug.oculus.omms.enableOverlay true

Once Performance HUD Mode is enabled, you can customize the HUD itself using the Options screen in the OVR Metrics Tool toolbar menu or by using the following adb commands:

adb shell setprop debug.oculus.omms.enableGraph (true|false) // show or hide the graph
adb shell setprop debug.oculus.omms.enableStats (true|false) // show or hide the stats
adb shell setprop debug.oculus.omms.pitch (number) // set the pitch of the perf hud (degrees from center)
adb shell setprop debug.oculus.omms.yaw (number) // set the yaw of the perf hud (degrees from center)
adb shell setprop debug.oculus.omms.distance (number) // set the distance of the perf hud (meters)
adb shell setprop debug.oculus.omms.scale (number) // set the scale of the perf hud (1,2, or 3)
adb shell setprop debug.oculus.omms.headLocked (true|false) // whether to head lock the hud or position it in space

Remote Device Management

To enable remote device management, first make sure the remote device management toggle is enabled on both the device you wish to control, and the device from which you will be controlling. You can also enable remote management by setting the following property:

adb shell setprop debug.oculus.omms.enableBT true

Next, select Connect to Device from the Options menu. This will search for local Oculus devices over Bluetooth that have Remote Management enabled. Tap a device to connect to it. Once connected, you can configure the HUD of the remote device and receive real-time stats to the local device.

CPU/GPU Utilization Monitoring

On Oculus Go CPU/GPU utilization will always be enabled. However, on Gear VR devices, you have to enable CPU and GPU utilization monitoring by setting the following property:

adb shell setprop debug.oculus.vrapilayers UtilPoller

*GPU utilization is not available on devices with Mali chipsets.