Dota 2
217 ratings
Using the Dota 2 Performance Test
By Wyk
A quick guide that runs you through the process of running the Dota performance test to help you understand what you might need to do to make the game run better on your system.

Check out Drew's thread on the Dev Forums for the same and any further updates, discussion & queries: http://dev.dota2.com/showthread.php?t=277903
   
Award
Favorite
Favorited
Unfavorite
Preparation
Before you run the performance test, you need to make sure you have done the following.
  • Verify the integrity of your game cache. This will ensure that there are no corrupt files in your installation. | Guide To Verify Cache
  • Check if your video card driver is fully updated. If it is not, please update it to the latest version available.
  • Quit & Restart Dota and Steam.
Enabling and Using The Console
Setting Up The Console

You need to enable the console in order to run and log the performance test. You can do it by following either of the below mentioned steps.
  • Add -vconsole or -console to your launch options. | How To Do This?
  • (Or) Launch Dota 2. Go to Settings > Options > Advanced Options > Game and 'Enable Console'

Some basic information about the Console
  • The console is where you will need to enter all the performance test related commands.
  • The console is also the window where all kinds of technical information related to the game will be displayed.
  • Every time you run a performance test, the game will close down the console and then reopen it when the performance is completed.
  • Each test will produce FPS results in the console. You can type 'clear' in the console to remove previous results.
  • Alternatively you can Right Click > Save Log if you are using vconsole or use the 'condump' command to save the current text in the console to a text file outside. The text file gets saved in your Dota root directory.
Running Performance Tests
Now it's time to run some performance tests. But before we begin ...
  • The below mentioned scenarios are 'examples' for running a performance test. If you want to run the test in a different situation, then feel free to do so. However, if you use a different scenario from the ones given below, then just mention it when you are submitting you performance test results.
  • Performance test runs some commands that are marked as cheats. So it is important to enable cheats on your lobbies for the test to run properly.

Let's Begin!!

Simple Performance Test
  • Start a 'Hero Demo' of any hero you like.
  • Click on the arrow on the side bar to close the Demo Options panel in the demo.
  • Level up any skill to make sure the + icon disappears.
  • Pause the game.
  • Open the console. (Default hotkey: `)
  • Enter 'exec_async perftest' to run the test.
  • You can Right Click > Save Log if you are using vconsole or use condump command mentioned above to save your test results in a text file.

Local Bot Game Performance Test
  • Start a 'Bot Game' from the Play Dota Menu.
  • Open the console and enter 'sv_cheats 1' to enable cheats. Then close console.
  • Pick a hero and level up any skill to make sure the + icon disappears.
  • Run your hero to the center of the map (in the river between mid T1 towers) and wait for creeps to begin fighting.
  • Pause the game.
  • Open the console. (Default hotkey: `)
  • Enter 'exec_async perftest' to run the test.
  • You can Right Click > Save Log if you are using vconsole or use condump command mentioned above to save your test results in a text file.

Valve Lobby Bot Game Performance Test
  • Create a 'New Lobby' from the Play Dota Menu.
  • Before you load in to the game, make sure that "Enable Cheats" is turned on in your lobby settings.
  • Also make sure that option to Fill Bots in Empty Slots is turned on and that you are the only player in the lobby. Then start the game.
  • Pick a hero and level up any skill to make sure the + icon disappears.
  • Run your hero to the center of the map (in the river between mid T1 towers) and wait for creeps to begin fighting.
  • Pause the game.
  • Open the console. (Default hotkey: `)
  • Enter 'exec_async perftest' to run the test.
  • You can Right Click > Save Log if you are using vconsole or use condump command mentioned above to save your test results in a text file.

These are just three default scenarios where you can run the tests in. You can also run the tests in any other scenario. But be sure to note down the details of your scenario to better understand your results.
Interpreting The Performance Test Results
Once the test results are out, it is important to understand what they are so you can tweak your game accordingly to try and get better performance on your system.

Note: Remember that the test gives you an idea of how the game is running on your system but might not necessarily pin point what is causing your performance to go down.

Things To Check
  • First and foremost, check the Command Line part of your test results to see if there are any launch commands you do not wish to use. If there are, feel free to remove them.
  • Secondly, make sure that the Render System is what you want it to be. DirectX, OpenGL, Vulkan or etc..
  • Thirdly, check if the Driver Name shows the GPU that you intend the game to run it on. If it isn't, go to your GPU settings and allow Dota 2 to run on your graphics card. It is important to let your dedicated graphics GPU run Dota 2 for best performance.
  • Fourthly, Windows DVR feature is known to cause issues with many games including Dota 2. Turn it off if you haven't already.
  • Lastly, Network Information is a great feature but it does come at a slight performance cost. If you are facing serious performance issues, try to turn it off if you don't use it regularly.

Comparing FPS Results

After you have verified the above modes running as they are intended, you can look at the Performance Test FPS results and compare them to different scenarios to tweak your settings. Here are a few changes that you can make based upon the results.
  • If your HALF Resolution FP is significantly better than Baseline Resolution, you can reduce the Video > Game Screen Render Quality slider to possibly increase your performance.
  • If your REDUCED DRAWING FPS is significantly higher than your Baseline Resolution, you can turn OFF High Quality Water and set Shadow Quality to Medium or OFF in the Video Options to possibly increase your performance.
  • If the Particles Disabled FPS is significantly higher than your Baseline FPS, you can drop the Effects Quality settings in your Video Options to possibly increase your performance.
  • If the Game Only FPS is significantly higher than the Baseline FPS, then you can try to disable the High Quality UI from Video Options to try and increase your performance.

Local Bot Test Results vs Network Bot Game Results

You can try to identify your problems further by comparing results from Local Bot Games and Network Bot Games.

If you experience an issue in your network game, try watching a Replay of the moment you experience performance loss.
  • If the issue remains even while watching the replay, then it is a performance related issue.
  • If the issues does not remain when watching the replay, then you are most likely facing an issue with how your network is configured rather than the game itself. So you might want to look at solutions on the networking end to resolve your issue.

Replays

Replays are a great way to run performance tests and compare results as you can run tests on the same scenario using different settings.

You can turn off particular settings and run tests at the same time in a replay to see if that particular setting is causing your FPS to drop significantly.

What the Performance Test Does Not Track

The Dota 2 Performance Tests do not monitor your system conditions such as the GPU and CPU temperatures, fan speeds and etc. So if you have a system that may throttle due to heating during the execution of the tests might affect the results.

Additionally, any other setting (such as power profiles, system configurations) on your PC that might affect resources available for Dota will not be reflected in the results. These are solutions you will have to look outside of Dota.

Other Contributors To Performance
  • If you have manually increased the number of chat lines using dota_hud_chat_history_lines -- then you are likely to face some FPS drop.
Example Test Results
If you've done everything correctly, you should get a report log that has information like mentioned below.

The following data are select lines from the testing and NOT the entire result.

[]: Command Line: "dota2.exe" -vconsole []: Windows Game DVR: not enabled []: Render system: DX11 []: Driver Name: NVIDIA TITAN X []: Driver Version: 21.21.13.7866 []: ------------------------------------------------------------- []: Performance tests now running, this can take a minute or two. []: ------------------------------------------------------------- []: []: []: User settings measurement []: 60 frames: 186.2 fps, avg time:6.84ms abs_range:3.14ms, min_time:5.70ms, max_time:9.98ms []: 240 frames: 194.1 fps, avg time:6.49ms, abs_range:3.49ms, min_time:5.33ms, max_time:9.98ms []: 1000 frames: 196.6 fps, avg time:6.39ms, total frames: 784 []: []: Baseline measurement []: 60 frames: 198.8 fps, avg time:6.30ms abs_range:2.42ms, min_time:5.48ms, max_time:8.71ms []: 240 frames: 199.2 fps, avg time:6.28ms, abs_range:2.95ms, min_time:5.26ms, max_time:9.23ms []: 1000 frames: 198.4 fps, avg time:6.31ms, total frames: 793 []: []: Half resolution []: 60 frames: 194.2 fps, avg time:6.94ms abs_range:2.77ms, min_time:5.62ms, max_time:9.70ms []: 240 frames: 190.1 fps, avg time:6.66ms, abs_range:3.04ms, min_time:5.44ms, max_time:9.70ms []: 1000 frames: 196.4 fps, avg time:6.39ms, total frames: 783 []: []: Reduced drawing []: 60 frames: 226.3 fps, avg time:5.37ms abs_range:2.19ms, min_time:4.46ms, max_time:7.55ms []: 240 frames: 227.6 fps, avg time:5.33ms, abs_range:2.67ms, min_time:4.39ms, max_time:8.00ms []: 1000 frames: 229.2 fps, avg time:5.29ms, total frames: 947 []: []: Particles disabled []: 60 frames: 208.5 fps, avg time:5.93ms abs_range:2.18ms, min_time:5.04ms, max_time:8.11ms []: 240 frames: 211.8 fps, avg time:5.82ms, abs_range:2.75ms, min_time:4.81ms, max_time:8.57ms []: 1000 frames: 209.3 fps, avg time:5.91ms, total frames: 848 []: []: UI only []: 60 frames: 267.2 fps, avg time:4.40ms abs_range:1.86ms, min_time:3.63ms, max_time:6.26ms []: 240 frames: 266.2 fps, avg time:4.42ms, abs_range:3.30ms, min_time:3.63ms, max_time:7.72ms []: 1000 frames: 201.4 fps, avg time:6.20ms, total frames: 808 []: []: Game only []: 60 frames: 252.1 fps, avg time:4.71ms abs_range:2.35ms, min_time:3.98ms, max_time:7.06ms []: 240 frames: 248.1 fps, avg time:4.80ms, abs_range:3.27ms, min_time:3.89ms, max_time:8.07ms []: 1000 frames: 243.9 fps, avg time:4.91ms, total frames: 1022 []: []: []: ------------------------------------------------------------- []: perftest output ends here. []: -------------------------------------------------------------
Conclusion
You can use this thread on the Dota 2 Dev Forums for all further discussion regarding performance tests.
35 Comments
Luv@Thug Jun 16, 2017 @ 7:39am 
RUS: Выберите что то одно из этого списка и напишите в моём профиле, отвечу тем же!
ENG: Choose the one that's on the list and write in my profile, I will answer the same!
GER: Such dir eine Sache aus der Liste aus und schreib es unter mein Profil und ich mache es auch bei dir!
LIT: Pasirink viena iš sąrašo ir parašyk ant mano profilio, Aš parašysiu taip pat!
PL: Wybierz jeden z komentarzy ponizej i zamieść w moim profilu, odwdzięcze się tym samym !
+rep Invoker GOD
+rep Invoker KING
+rep Insane Skill !
+rep Good Player
+rep Nice Player
+rep Best Gamer Invoker
+rep Trusted Invoker Player
+rep Nice Invoker
+rep Pro Invoker +rep
Flick Apr 18, 2017 @ 2:52am 
Hey guys, I'm a rather small youtuber and would like to grow. I make dank dota montages kind of like midormeepo or Trymike4instance. Please do check out my youtube channel if you're interested. And don't forget to like the videos and subscribe if you like what you see :) Youtube channel
роллы филадельфия Mar 8, 2017 @ 4:01am 
my toster can't run dota2
〃不当大哥当辅助 Mar 7, 2017 @ 10:13am 
........
2rborats Mar 5, 2017 @ 11:39pm 
Nice
no-one Mar 5, 2017 @ 9:51pm 
ya
C rank Mar 5, 2017 @ 9:13am 
че это за хуйня?

12345 Mar 5, 2017 @ 7:45am 
http://steamcommunity.com/profiles/76561198127633976/ (Руинит на Шейкере кэрри)
Если не сложно, то накидайте этому дауну в профиль репортов, напиши в профиле, что он конченый лс (2:22 парень играет)
林湾猫流儿 Mar 5, 2017 @ 7:12am 
nice