140 lines
3.3 KiB
INI
Executable File
140 lines
3.3 KiB
INI
Executable File
// This script gathers some basic information about how
|
|
// Dota runs on a particular machine. The intended usage
|
|
// is to get to the game state of interest and then
|
|
// execute this script with 'exec_async perftest'.
|
|
// Note that if you are testing in a game it is recommended
|
|
// to pause the game for more consistent results.
|
|
// Additionally exec_async can only be used when cheats
|
|
// are allowed.
|
|
|
|
echoln
|
|
echoln
|
|
echoln -------------------------------------------------------------
|
|
echoln perftest output starts here.
|
|
echoln -------------------------------------------------------------
|
|
echoln
|
|
echoln
|
|
|
|
push_var_values
|
|
|
|
sys_info
|
|
|
|
fps_max 999
|
|
cl_showfps 2
|
|
|
|
echoln
|
|
echoln
|
|
echoln -------------------------------------------------------------
|
|
echoln Performance tests now running, this can take a minute or two.
|
|
echoln -------------------------------------------------------------
|
|
echoln
|
|
// Give some time for the user to see the message above.
|
|
sleep 2000
|
|
hideconsole
|
|
|
|
// If we're watching a demo mark where we're at so that we can
|
|
// run each test starting from the same point with demo_gotomark.
|
|
// If you want to run the perftest from a specific point in
|
|
// a replay use "demo_marktick 4 <ticknum>" prior to exec_async.
|
|
// That will lock a particular tick as the mark and this mark will
|
|
// be ignored. "demo_marktick 8" will unlock the tick.
|
|
demo_marktick 2
|
|
|
|
// Turn on GPU perf collection
|
|
stats_display 1
|
|
stats_collect_gpu true
|
|
|
|
echoln
|
|
echoln User settings measurement
|
|
// We've already waited so things should be warm, go ahead and measure.
|
|
demo_gotomark 1
|
|
// Wait for any demo seeking to happen.
|
|
sleep 2000
|
|
cl_resetfps
|
|
sleep 2000
|
|
cl_printfps
|
|
echoln GPU Time:
|
|
stats_print_gpu perftest_usersettings.csv
|
|
|
|
echoln
|
|
echoln Half resolution
|
|
mat_viewportscale 0.5
|
|
// Let new state settle.
|
|
sleep 1000
|
|
demo_gotomark 1
|
|
// Wait for any demo seeking to happen.
|
|
sleep 2000
|
|
cl_resetfps
|
|
sleep 2000
|
|
cl_printfps
|
|
echoln GPU Time:
|
|
stats_print_gpu perftest_halfresolution.csv
|
|
mat_viewportscale 1
|
|
|
|
echoln
|
|
echoln Reduced Settings (similar to Source1)
|
|
r_particle_shadows 0
|
|
r_aoproxy_enable 0
|
|
r_csgo_mboit 0
|
|
r_ssao 0
|
|
r_csgo_gpu_culling 0
|
|
r_csgo_effects_bloom 0
|
|
lb_csm_cascade_size_override 1024
|
|
|
|
// Let new state settle.
|
|
sleep 1000
|
|
demo_gotomark 1
|
|
// Wait for any demo seeking to happen.
|
|
sleep 2000
|
|
cl_resetfps
|
|
sleep 2000
|
|
cl_printfps
|
|
echoln GPU Time:
|
|
stats_print_gpu perftest_s1_settings.csv
|
|
r_particle_shadows 1
|
|
r_aoproxy_enable 1
|
|
r_csgo_mboit 1
|
|
r_ssao 1
|
|
r_csgo_gpu_culling 1
|
|
r_csgo_effects_bloom 1
|
|
lb_csm_cascade_size_override 2048
|
|
|
|
echoln
|
|
echoln UI only
|
|
r_drawblankworld 1
|
|
// Let new state settle.
|
|
sleep 1000
|
|
demo_gotomark 1
|
|
// Wait for any demo seeking to happen.
|
|
sleep 2000
|
|
cl_resetfps
|
|
sleep 2000
|
|
cl_printfps
|
|
echoln GPU Time:
|
|
stats_print_gpu perftest_uionly.csv
|
|
r_drawblankworld 0
|
|
|
|
echoln
|
|
echoln Game only
|
|
r_drawpanorama 0
|
|
// Let new state settle.
|
|
sleep 1000
|
|
demo_gotomark 1
|
|
// Wait for any demo seeking to happen.
|
|
sleep 2000
|
|
cl_resetfps
|
|
sleep 2000
|
|
cl_printfps
|
|
echoln GPU Time:
|
|
stats_print_gpu perftest_gameonly.csv
|
|
r_drawpanorama 1
|
|
|
|
pop_var_values
|
|
|
|
showconsole
|
|
echoln
|
|
echoln
|
|
echoln -------------------------------------------------------------
|
|
echoln perftest output ends here.
|
|
echoln -------------------------------------------------------------
|