diag captureSlowFrame: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
No edit summary
mNo edit summary
 
(43 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{DISPLAYTITLE:diag_captureSlowFrame}}
{{RV|type=command
{{Command|= Comments
____________________________________________________________________________________________


| arma2oa |= Game name
|game1= arma2oa
|version1= 1.63


|1.63|= Game version
|game2= tkoh
____________________________________________________________________________________________
|version2= 1.00


| [[File:CaptureSlowFrame.jpg|right|200x120px]] Opens "capture frame" dialog if current frame exceeds set threshold in seconds. One can indicate to either capture duration of a specific profiling selection or the total duration of the frame. The selection names can be obtained by expanding the profiling tree. Clicking on a tree item will highlight the item on the graph and vice versa. Some of the selections:
|game3= arma3
''Render''
|version3= 1.00
<br/> - '''bgD3D'''
<br/>''Main Thread''
<br/> - '''total'''
<br/> - '''memAl'''
<br/>''Visualize''
<br/> - '''visul'''
<br/>''Mjob''
<br/> - '''Mjob'''


'''Note''': Only available in specific builds. See [[Performance Profiling]] for details. |= Description
|branch= diag prof
____________________________________________________________________________________________


| '''diag_captureSlowFrame''' [section, threshold] |= Syntax
|gr1= Diagnostic


|p1= section: [[String]] - (case sensitive) |= Parameter 1
|gr2= Performance Profiling


|p2= threshold: [[Number]] - Duration of the section in seconds |= Parameter 2
|descr= [[File:CaptureSlowFrame.jpg|right|200x120px]]
Opens "capture frame" dialog if current frame exceeds set threshold in seconds. One can indicate to either capture duration of a specific profiling selection or the total duration of the frame.
The selection names can be obtained by expanding the profiling tree. Clicking on a tree item will highlight the item on the graph and vice versa.
The GUI also provides method of copying of the displayed data to clipboard. Some of the selections:


| [[Nothing]] |= Return value
{{{!}} class="wikitable valign-top-row-2" style="margin: 1em auto"
____________________________________________________________________________________________
! Render
 
! Main Thread
|x1= <code>[[diag_captureSlowFrame]] ['total',0.3];</code> |= Example 1
! Visualize
|x2= <code>[[diag_captureSlowFrame]] ['memAl', 0.0001];</code> |= Example 2
! Mjob
____________________________________________________________________________________________
{{!}}-
{{!}}
* bgD3D
{{!}}
* total
* memAl
{{!}}
* visul
{{!}}
* Mjob
{{!}}}


| [[Performance Profiling]], [[diag_captureFrame]], [[diag_logSlowFrame]] |= See also
{{Feature|informative|
'''Chrome export format''':
Capturing to file also creates a .trace file, which can be imported into chrome://tracing (in chromium based webbrowsers), or https://ui.perfetto.dev/ <br>
The same format can be exported by pressing the "COPY ALL" button, in the capture frame UI, with {{Controls|Ctrl}} key being held down.
}}
 
|s1= [[diag_captureSlowFrame]] [section, threshold, frameSkip, toFile, continuousCounter]
 
|p1= section: [[String]] - case-sensitive
 
|p2= threshold: [[Number]] - section duration in seconds. 0 captures always '''IF''' the section you gave as section filter appears inside the given frame. "total" always appears, while "callExt" might not always appear for example


}}
|p3= frameSkip: [[Number]] (Optional, default 0) - number of frames to ignore before measuring
|p3since= arma3 1.18 <!-- estimate, was committed at 2014-03-31 -->


<h3 style="display:none">Notes</h3>
|p4= toFile: [[Boolean]] - (Optional, default [[false]]) if true, doesn't open UI and writes straight to file. If logging to file, it automatically also outputs a .trace file. Note: even if false it might still force to file if it doesn't have a UI, like a server or HC
<dl class="command_description">
|p4since= arma3 2.20
<!-- Note Section BEGIN -->
<dd class="notedate">Posted on December 5, 2013
<dt class="note">'''[[User:Killzone_Kid|Killzone_Kid]]'''
<dd class="note">
Available in Arma 3 [DEV] branch since version 1.09.113238


|p5= continuousCounter: [[Number]] (Optional, default 0) - captures N slow frames. 0 or 1 will only capture one frame - don't set it to negative! Can be aborted by running diag_captureFrame or another captureSlowFrame
|p5since= arma3 2.20


|r1= [[Nothing]]


|x1= <sqf>diag_captureSlowFrame ["total", 0.003];</sqf>


<!-- Note Section END -->
|x2= <sqf>diag_captureSlowFrame ["memAl", 0.0001, 30];</sqf>
</dl>


<h3 style="display:none">Bottom Section</h3>
|x3= <sqf>diag_captureSlowFrame ["total", 0, 0, false, 3]; // Will open the capture UI three times</sqf>


[[Category:Scripting Commands|{{uc:{{PAGENAME}}}}]]
|seealso= [[Arma 3: Diagnostics Exe]] [[Performance Profiling]] [[Arma 3: Cheats]] [[Multiplayer_Server_Commands#Performance_Profiling|Admin chat commands]] [[diag_captureFrameToFile]] [[diag_captureFrame]] [[diag_logSlowFrame]] [[logEntities]] [[exportJIPMessages]]
[[Category:Scripting Commands ArmA2|{{uc:{{PAGENAME}}}}]]
}}
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
[[Category:Command_Group:_Performance_Logging|{{uc:{{PAGENAME}}}}]]

Latest revision as of 18:41, 24 November 2024

Hover & click on the images for description
Only available in Diagnostic/Profiling branch(es).

Description

Description:
CaptureSlowFrame.jpg

Opens "capture frame" dialog if current frame exceeds set threshold in seconds. One can indicate to either capture duration of a specific profiling selection or the total duration of the frame. The selection names can be obtained by expanding the profiling tree. Clicking on a tree item will highlight the item on the graph and vice versa. The GUI also provides method of copying of the displayed data to clipboard. Some of the selections:

Render Main Thread Visualize Mjob
  • bgD3D
  • total
  • memAl
  • visul
  • Mjob
Chrome export format:

Capturing to file also creates a .trace file, which can be imported into chrome://tracing (in chromium based webbrowsers), or https://ui.perfetto.dev/

The same format can be exported by pressing the "COPY ALL" button, in the capture frame UI, with Ctrl key being held down.
Groups:
DiagnosticPerformance Profiling

Syntax

Syntax:
diag_captureSlowFrame [section, threshold, frameSkip, toFile, continuousCounter]
Parameters:
section: String - case-sensitive
threshold: Number - section duration in seconds. 0 captures always IF the section you gave as section filter appears inside the given frame. "total" always appears, while "callExt" might not always appear for example
since Arma 3 logo black.png1.18
frameSkip: Number (Optional, default 0) - number of frames to ignore before measuring
since Arma 3 logo black.png2.20
toFile: Boolean - (Optional, default false) if true, doesn't open UI and writes straight to file. If logging to file, it automatically also outputs a .trace file. Note: even if false it might still force to file if it doesn't have a UI, like a server or HC
since Arma 3 logo black.png2.20
continuousCounter: Number (Optional, default 0) - captures N slow frames. 0 or 1 will only capture one frame - don't set it to negative! Can be aborted by running diag_captureFrame or another captureSlowFrame
Return Value:
Nothing

Examples

Example 1:
diag_captureSlowFrame ["total", 0.003];
Example 2:
diag_captureSlowFrame ["memAl", 0.0001, 30];
Example 3:
diag_captureSlowFrame ["total", 0, 0, false, 3]; // Will open the capture UI three times

Additional Information

See also:
Arma 3: Diagnostics Exe Performance Profiling Arma 3: Cheats Admin chat commands diag_captureFrameToFile diag_captureFrame diag_logSlowFrame logEntities exportJIPMessages

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note