๐Ÿ“ˆProfiling

The performance estimates tool is designed to give rough performance estimates in PIE for streaming and native clients. The tool takes your current frame time and uses benchmark data to estimate what the expected performance is if the current level were to be played on GFN, Ubitus and native min spec hardware. For more accurate performance metrics, a full scale test will be necessary.

The performance estimates tool is on by default in editor and can be expanded using F7 . It can also be manually turned on and off by using the following console command:

M2PerformanceEstimates.ToggleHUD

To expand the performance estimates, use the following command:

M2PerformanceEstimates.ToggleExpandedHUD

The editor scalability settings can impact the quality of estimates if they are too high for your hardware and VRAM is exhausted. Your editor scalability settings can be found here:

For more accurate estimations, turn off Monitor Editor Performance

Instances

Currently, the tool only estimates performance for our most commonly used streaming instances and the lowest minimum hardware.

More instances will be added in the future.

The minimum hardware requirements can be found here.

Calculating estimates

The estimates are calculated by taking the current frame time in PIE and scaling this according to the current scalability settings using CPU and GPU benchmark results for the local machine and the target hardware. A crowd performance overhead is applied based on the scalability setting and the target scale for each hardware.

Estimates in PIE are likely to be lower than packaged buildsโ€™ performance, particularly with Low scalability settings. This is due to the editor overhead and less optimisations. This should improve in the future.

Assumptions made in calculating estimates

  • There is one player in the level

  • The crowd performance is based off of the default M2Unreal crowd setup

  • The crowd performance data is based off of the Full bot behaviour

  • The crowd is based off of modular characters

    • This will change to account for the transition to MML avatars

  • The data used is based off of Skypark_P

  • Features that are not currently active will not be reflected in the estimates

The tool does scale if the local machine is using scalability level Cinematic but it does not give predictions for this level as it is not recommended.

Configuring data (optional)

This is an optional step if you want more accurate estimates based off of custom data.

The data used to calculate estimates is spread across 3 data tables:

  • DT_PerformanceEstimatesHardwareData - native client performance data

  • DT_PerformanceEstimatesMinSpecData - native min spec hardware performance

  • DT_PerformanceEstimatesStreamingData - streaming hardware performance

This is currently configured using Skypark_P but the data can be changed in projects instead of the default values.

Here is the data required for each of these tables:

DT_PerformanceEstimatesHardwareData

DT_PerformanceEstimatesMinSpecData

DT_PerformanceEstimatesStreamingData

Last updated