-
Notifications
You must be signed in to change notification settings - Fork 96
BOYTest
= BOY Performance Test Report = PageOutline(2-3)
== Test Infrastructure == All tests were executed on two PCs:
=== PC 1 ===
- DELL Precision T3400
- CPU: Intel Core2 Quad CPU Q6700 2.66GHz
- Memory: 4GB
- OS: Windows Vista 32 bit
- Java: JDK 1.6.0_26
- CSS: SNS CSS 3.0.0 (BOY version: 3.0.0)
=== PC 2 ===
- DELL Precision workstation T3500
- CPU: Intel Xeon 4 core CPU W3520 2.66GHz
- Memory: 4GB
- OS: Linux 2.6.18 (Red Hat 4.1.2 with KDE)
- Java: JDK 1.6.0_26
- CSS: SNS CSS 3.0.0 (BOY version: 3.0.0)
== Test Setup == A soft IOC on PC 2 executed this type of EPICS database:
{{{ record(ai, "pv$(X)1") { field(DESC, "Analog input") field(INP, "pv$(X)1:calcExample.VAL NPP NMS") field(EGUF, "100") field(EGU, "Counts") field(HOPR, "100") field(LOPR, "0") field(HIHI, "80") field(HIGH, "60") field(LOW, "40") field(LOLO, "20") field(HHSV, "MAJOR") field(HSV, "MINOR") field(LSV, "MINOR") field(LLSV, "MAJOR") } record(calc, "pv$(X)1:calcExample") { field(DESC, "Counter") field(SCAN,"$(Scan)") field(FLNK, "pv$(X)1") field(CALC, "(A<B)?(A+C):D") field(INPA, "pv$(X)1:calcExample.VAL NPP NMS") field(INPB, "99") field(INPC, "1") field(INPD, "0") field(EGU, "Counts") field(HOPR, "100") field(HIHI, "80") field(HIGH, "60") field(LOW, "40") field(LOLO, "20") field(HHSV, "MAJOR") field(HSV, "MINOR") field(LSV, "MINOR") field(LLSV, "MAJOR") field(VAL, "0") } }}}
The SCAN rate is defined outside for different OPIs.
== Performance Test ==
=== Test Case 1: 100 text updates @10Hz === OPI: 100 Text Update with different PVs updated at 10 hz with alarm ==== Test Results on PC 1 ====
- Start up: no delay
- Actual GUI update: 10Hz
- Operation Responsiveness: no delay
- CPU: 4%
- Memory: 129M ==== Test Results on PC 2 ====
- Start up: no delay
- Actual GUI update: 10Hz
- Operation Responsiveness: no delay
- CPU: 4%
- Memory: 129M
=== Test Case 2: 400 text updates @10Hz === *
- OPI: 400 Text Update with different PVs updated at 10 hz with alarm
- Start up: no delay
- Actual GUI update: 10Hz
- CPU: 14%
- Memory: 120M
=== Test Case 3: 1000 text updates @10Hz ===
- OPI: 1000 Text Update with different PVs updated at 10 hz with alarm
- Start up: no delay
- Actual GUI update: 10Hz
- CPU: 28%
- Memory: 132M
}}}
=== Test Case 4: 100 text updates, 100 Spinners, 100 Scrollbars, 100 LEDs, 100 text inputs and 100 graphics widgets @10Hz ===
- OPI: 100 text updates, 100 Spinners, 100 Scrollbars, 100 LEDs, 100 text inputs with different PVs overlapped on 100 graphics widgets updated at 10 hz with alarm
- Start up: 1 second
- Actual GUI update: 7Hz
- CPU: 28%
- Memory: 158M
=== Test Case 5: Add 10 XY Graph to Test case 4 ===
- OPI: Based on test case 4, add 10 XY Graphs. Each graph has 10 traces.
- Start up: 2 second
- Actual GUI update: 3Hz
- CPU: 28%
- Memory: 166M
}}}
=== Test Case 6: 10 OPIs, each has 100 text updates @10Hz ===
- OPI: 10 OPIs with widgets as in test case 1; Two CSS windows in separate monitors; 5 tabs on each window; Tabs are arranged to not overlapped.
- Start up: no delay
- Actual GUI update: 10Hz
- Operation Responsiveness: no delay
- CPU: 22%
- Memory: 168M
}}}
=== Test Case 7: 30 OPIs, each has 100 text updates @10Hz ===
- OPI: 30 OPIs with widgets as in test case 1; Two CSS windows in separate monitors; 15 tabs on each window; Tabs are overlapped.
- Start up: no delay
- Actual GUI update: 10Hz
- Operation Responsiveness: no delay
- CPU: 18%
- Memory: 214M
=== Test Case 8: 2 OPIs based on test case 5 ===
- OPI: 2OPIs with widgets as in test case 5; Two CSS windows in separate monitors;
- Start up: 3 seconds
- Actual GUI update: 2Hz
- Operation Responsiveness: 1 second delay
- CPU: 28%
- Memory: 213M
=== Test Case 9: 200 labels with Rules ===
- OPI: 200 labels with same blinking rules (See the blinking rule example in BOY Examples->5_3_Rules_Script.opi).
- Start up: 1 seconds
- Actual GUI update: no delay
- Operation Responsiveness: no delay
- CPU: 7%(blinking at fast); 4%(blinking at slow)
- Memory: 190M
=== Test Case 10: 50 Ellipses with Scripts ===
- OPI: 50 Ellipses with same scripts to animate them (See the script example in BOY Examples->5_3_Rules_Script.opi). .
- Start up: 1 seconds
- Actual GUI update: no delay
- Operation Responsiveness: no delay
- CPU: 3%
- Memory: 143M
== Summary == BOY is able to