BIS fnc codePerformance: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - " |r1=[[" to " |r1= [[")
m (Some wiki formatting)
Line 6: Line 6:
|gr1= Diagnostic
|gr1= Diagnostic


|descr= [[File:BIS fnc codePerformance.png|300px|right]]Measures how much time it takes to execute given expression. Results may vary based on overall performance; use this function to compare alternative scripting approaches rather than to measure specific values. Upon function execution, window with results is opened. The user then has a choice to copy the result into clipboard or not. <br>
|descr= [[File:BIS fnc codePerformance.png|300px|right]]
Measures how much time it takes to execute given expression.
Results may vary based on overall performance; use this function to compare alternative scripting approaches rather than to measure specific values.
Upon function execution, window with results is opened. The user then has a choice to copy the result into clipboard or not.<br>
This function is using [[diag_codePerformance]] command.
This function is using [[diag_codePerformance]] command.
<br>
Keep in mind that this takes string, and that you can't pass <code>[[str]] _code</code> as string because that add's curly braces to the string.


|s1=[expression, arguments, cycles, display] call [[BIS_fnc_codePerformance]]
{{Feature|informative|Use {{ic|[[toString]] _code}} instead of [[str]] as the latter adds curly braces to the string.}}


|p1= expression: [[String]] - Tested expression
|s1= [expression, arguments, cycles, display] call [[BIS_fnc_codePerformance]]
|p2= arguments (Optional): [[Anything]] - Arguments to pass into the code.  Default: []


|p3= cycles (Optional): [[Number]] - Number of wanted cycles. Default: 10000
|p1= expression: [[String]] - tested expression
|p4= display (Optional): [[Display]] - Display in which the message window with results will be opened. Use [[displayNull]] to disable the window. Default: Current mission display
 
|p2= arguments: [[Anything]] - (Optional, default []) arguments to pass into the code
 
|p3= cycles: [[Number]] - (Optional, default 10000) number of wanted cycles
 
|p4= display: [[Display]] - (Optional, default {{ic|[[findDisplay]] 46}}) display in which the message window with results will be opened. Use [[displayNull]] to disable the window


|r1= [[Number]] - Average execution time of the expression
|r1= [[Number]] - Average execution time of the expression


|x1= <code>testArray = [];
|x1= <sqf>
["testArray = testArray + [1]"] [[call]] [[BIS_fnc_codePerformance]];
// compare three methods of adding elements into array
testArray = [];
["testArray = testArray + [1]"] call BIS_fnc_codePerformance;
testArray = [];
testArray = [];
["testArray [[set]] [<nowiki/>[[count]] testArray, 1]"] [[call]] [[BIS_fnc_codePerformance]];
["testArray set [count testArray, 1]"] call BIS_fnc_codePerformance;
testArray = [];
testArray = [];
["testArray [[pushBack]] 1"] [[call]] [[BIS_fnc_codePerformance]];
["testArray pushBack 1"] call BIS_fnc_codePerformance;
</code>
</sqf>
Compare three methods of adding elements into array


|seealso= [[diag_codePerformance]]
|seealso= [[diag_codePerformance]]
}}
}}

Revision as of 14:16, 5 May 2022

Hover & click on the images for description

Description

Description:
BIS fnc codePerformance.png

Measures how much time it takes to execute given expression. Results may vary based on overall performance; use this function to compare alternative scripting approaches rather than to measure specific values. Upon function execution, window with results is opened. The user then has a choice to copy the result into clipboard or not.
This function is using diag_codePerformance command.

Use toString _code instead of str as the latter adds curly braces to the string.
Execution:
call
Groups:
Diagnostic

Syntax

Syntax:
[expression, arguments, cycles, display] call BIS_fnc_codePerformance
Parameters:
expression: String - tested expression
arguments: Anything - (Optional, default []) arguments to pass into the code
cycles: Number - (Optional, default 10000) number of wanted cycles
display: Display - (Optional, default findDisplay 46) display in which the message window with results will be opened. Use displayNull to disable the window
Return Value:
Number - Average execution time of the expression

Examples

Example 1:
// compare three methods of adding elements into array testArray = []; ["testArray = testArray + [1]"] call BIS_fnc_codePerformance; testArray = []; ["testArray set [count testArray, 1]"] call BIS_fnc_codePerformance; testArray = []; ["testArray pushBack 1"] call BIS_fnc_codePerformance;

Additional Information

See also:
diag_codePerformance

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