diag codePerformance: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Text replacement - "_{10,} " to "") |
Lou Montana (talk | contribs) m (Text replacement - " *\| *([Cc]omments|COMMENTS|Game|[Gg]ame [Nn]ame|Game [Vv]ersion|Game Version \(number surrounded by NO SPACES\)|Multiplayer Arguments( \("local" or "global"\))?|Effects|Multiplayer Effects( \("local" or "global"\))?|Multiplayer Exe...) |
||
Line 1: | Line 1: | ||
{{DISPLAYTITLE:diag_codePerformance}} | {{DISPLAYTITLE:diag_codePerformance}} | ||
{{Command | {{Command | ||
| arma3 | | arma3 | ||
|1.58 | |1.58 | ||
|gr1= Diagnosis | |gr1= Diagnosis | ||
|gr2= Performance Logging | |gr2= Performance Logging | ||
| Attempts to run given code with given arguments given number of cycles in unscheduled environment and returns average time it took to run the code as well as actual number of executions performed. The command will return as soon as possible if the tested code is slow and the duration of the command exceeds 1 second. Engine alternative to [[BIS_fnc_codePerformance]]<br><br> | | Attempts to run given code with given arguments given number of cycles in unscheduled environment and returns average time it took to run the code as well as actual number of executions performed. The command will return as soon as possible if the tested code is slow and the duration of the command exceeds 1 second. Engine alternative to [[BIS_fnc_codePerformance]]<br><br> | ||
{{Informative|For security purposes, this command will only run for 1 cycle in MP, unless in-game [[Mission_Editor:_Debug_Console_(Arma_3)|debug console]] is available via [[description.ext]] option or [[Eden]] attribute setting.}} | {{Informative|For security purposes, this command will only run for 1 cycle in MP, unless in-game [[Mission_Editor:_Debug_Console_(Arma_3)|debug console]] is available via [[description.ext]] option or [[Eden]] attribute setting.}} | ||
| '''diag_codePerformance''' [code, arguments, cycles] | | '''diag_codePerformance''' [code, arguments, cycles] | ||
|p1= [code, arguments, cycles]: [[Array]] | |p1= [code, arguments, cycles]: [[Array]] | ||
|p2= code: [[Code]] - code to compare performance | |p2= code: [[Code]] - code to compare performance | ||
|p3= arguments (Optional): [[Anything]] - arguments to pass to the code in _this variable. Default: [[nil]] | |p3= arguments (Optional): [[Anything]] - arguments to pass to the code in _this variable. Default: [[nil]] | ||
|p4= cycles (Optional): [[Number]] - wanted number of cycles to run the given code. > 1000 is recommended. Default: 100000 | |p4= cycles (Optional): [[Number]] - wanted number of cycles to run the given code. > 1000 is recommended. Default: 100000 | ||
| [[Array]] - format [duration, cycles], where: | | [[Array]] - format [duration, cycles], where: | ||
* duration: [[Number]] - average duration of 1 execution in milliseconds | * duration: [[Number]] - average duration of 1 execution in milliseconds | ||
* cycles: [[Number]] - actual number of cycles executed | * cycles: [[Number]] - actual number of cycles executed | ||
|x1= <code>_result = [[diag_codePerformance]] [{[[private]] _a = 123;}, 0, 10000];</code> | |x1= <code>_result = [[diag_codePerformance]] [{[[private]] _a = 123;}, 0, 10000];</code> | ||
| [[diag_log]], [[BIS_fnc_codePerformance]], [[Code_Optimisation|Code Optimisation]] | | [[diag_log]], [[BIS_fnc_codePerformance]], [[Code_Optimisation|Code Optimisation]] | ||
| |MPBEHAVIOUR= | | |MPBEHAVIOUR= |
Revision as of 00:29, 18 January 2021
Description
- Description:
- Attempts to run given code with given arguments given number of cycles in unscheduled environment and returns average time it took to run the code as well as actual number of executions performed. The command will return as soon as possible if the tested code is slow and the duration of the command exceeds 1 second. Engine alternative to BIS_fnc_codePerformance
- Groups:
- DiagnosisPerformance Logging
Syntax
- Syntax:
- diag_codePerformance [code, arguments, cycles]
- Parameters:
- [code, arguments, cycles]: Array
- code: Code - code to compare performance
- arguments (Optional): Anything - arguments to pass to the code in _this variable. Default: nil
- cycles (Optional): Number - wanted number of cycles to run the given code. > 1000 is recommended. Default: 100000
- Return Value:
- Array - format [duration, cycles], where:
Examples
- Example 1:
_result = diag_codePerformance [{private _a = 123;}, 0, 10000];
Additional Information
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