From OpenSCADAWiki
Jump to: navigation, search

The measuring methodology for the table above is follow:

1. Time estimation for operations: generic lock of the critical section, sin(Pi), pow(Pi,2). In second, third and forth columns. sin() and pow() operations selected as the represented ones for estimation the co-processor performance and overall real-numbers manipulations. Value in square brackets characterizes the degree of overhead when calculating inside the OpenSCADA virtual machine and the performance of integer calculations around the sample operations. That is, the main value characterizes the performance of the processor in floating-point operations (math coprocessor or emulation), and in square brackets in integer operations (CPU) as the difference in the time of floating-point operations. Measurement method:
a) ensure stability the central processor frequency in way of setting the policy of its management to PERFORMANCE;
b) start OpenSCADA without load — the project by default or with an empty configuration, with the configurator UI.QTCfg, UI.WebCfg or UI.WebCfgD;
c) open the function object sin(), and next pow(), of the module of the mathematical functions library;
d) go to the tab "Execute", set "Enable", enter the argument value for "X" to 3.14159 and "Power" to 2 (for pow()), set the number of executions to 1000 — for greater representativeness, you can increase it by 10 times to a total operation time of no more than 10 seconds;
e) press "Execute" and get the execution time;
f) by pressing "Execute" we perform the calculation several times, which achieves the minimum value;
g) fix the minimal value, which divide to 1000 (number of the executions) and get the main time value of the single execution in microseconds;
h) go to the module object of the internal OpenSCADA executions (DAQ.JavaLikeCalc);
i) create there a function library object "test" and the "test" function in it, which we turn on;
j) in the "Program" tab, enter the text of the commands sequentially with the measurement of their time: EMPTY, y=sin(3.14159), y=pow(3.14159, 2);
k) measurements are made three times in the "Execute" tab and according to the method in the points "d."-"g.";
l) the first result obtained for EMPTY is recorded in the second column and considered auxiliary for further ones; the second and third results are recorded in square brackets of the third and fourth columns, respectively, and after subtracting the value of the first auxiliary result.
2. Complex performance estimation, in the fifth column, performs by execution the technological process (TP) model AGLKS on target architecture. This test can be executed only on computing systems with relatively high performance or with cores more to one, which capable for the simulator-model execution, and equipped by a graphical information output device — display (the visualization server execution we will not consider). The main value of the processor loading characterizes execution only the dynamical simulator-model of TP, but addition value appends of forming and execution the graphical interface. Measurement method:
a) ensure stability the central processor frequency in way of setting the policy of its management to PERFORMANCE;
b) from the desktop environment menu start the simulator-model AGLKS;
c) start a terminal emulator (e.g., "konsole"), where type "top", press Shift+H (for see the process at all) and Shift+P (sort by the processor load);
d) read the values in the column "%CPU" against to the process "openscada", select to typical value for several updates and fix it as the main value;
e) return to the OpenSCADA window and start the visualization environment, and next the interface of the "AGLKS" project.
f) return to the terminal emulator and read the addition value, like to the list point "d.".