Mark,
if you're interested in the details of the KERNEL mode usage, consider to run the following to provide more detailled information (copied from my reply in comp.os.vms):
$ ANA/SYS
SDA> READ/EXEC ! get better symbolization (routine names)
SDA> PCS LOAD ! PC sampling SDA Execlet
SDA> PCS START TRACE
...
SDA> PCS STOP TRACE
SDA> PCS SHOW TRACE/STAT/MODE=KERNEL
...
SDA> PCS UNLOAD
SDA> EXIT
SDA> PCS SHOW TRACE/STAT/MODE=KERNEL will show the PC values seen most often during the trace period (sorted by decreasing no. of occurences) and it will symbolize the PC values as routine names or execlet names. This might give you an idea, which kind of kernel mode code is running how often.
Added in 2 hours 18 minutes 22 seconds:
here are some MONITOR MODE/AVERAGE examples from running the SAME SRI_VUPS_NEW.COM procedure on otherwise idle systems for 3 different architectures Alpha (emulated), I64 (rx2600) and x86-64 E9.2-1
Code: Select all
OpenVMS Monitor Utility
+-----+ TIME IN PROCESSOR MODES
| AVE | on node AXPVMS
+-----+ 28-APR-2023 10:19:32.61
0 25 50 75 100
+ - - - - + - - - - + - - - - + - - - - +
Interrupt State |
| | | | |
MP Synchronization |
| | | | |
Kernel Mode 1 |
| | | | |
Executive Mode 22 |********
| | | | |
Supervisor Mode 76 |******************************
| | | | |
User Mode |
| | | | |
Compatibility Mode |
| | | | |
Idle Time |
+ - - - - + - - - - + - - - - + - - - - +
OpenVMS Alpha (emulated) V8.2: 677 VUPS (it's an emulated Alpha, so not a 'hardware' VUPS measurement !)
Code: Select all
OpenVMS Monitor Utility
+-----+ TIME IN PROCESSOR MODES
| AVE | on node I64VMS
+-----+ 28-APR-2023 10:23:21.02
0 25 50 75 100
+ - - - - + - - - - + - - - - + - - - - +
Interrupt State |
| | | | |
MP Synchronization |
| | | | |
Kernel Mode 5 |**
| | | | |
Executive Mode 17 |******
| | | | |
Supervisor Mode 78 |*******************************
| | | | |
User Mode |
| | | | |
Compatibility Mode |
| | | | |
Idle time |
+ - - - - + - - - - + - - - - + - - - - +
OpenVMS I64 V8.2 (rx2600): 1759 VUPS.
Code: Select all
OpenVMS Monitor Utility
+-----+ TIME IN PROCESSOR MODES
| AVE | on node VOLKER
+-----+ 28-APR-2023 10:34:35.31
Combined for 2 CPUs 0 50 100 150 200
+ - - - - + - - - - + - - - - + - - - - +
Interrupt State 4 |
| | | | |
MP Synchronization |
| | | | |
Kernel Mode 15 |***
| | | | |
Executive Mode 23 |****
| | | | |
Supervisor Mode 62 |************
| | | | |
User Mode |
| | | | |
Compatibility Mode |
| | | | |
Idle Time 97 |*******************
+ - - - - + - - - - + - - - - + - - - - +
VSI OpenVMS E9.2-1, VMware Workstation Player 16, i5-9600K @3.7 GHz, VUPS: 3783
Results of PRIME_SIEVE calculating prime numbers up to 10^10:
Reference:
http://wwwhomes.uni-bielefeld.de/achim/prime_sieve.html
Code: Select all
(emulated) Alpha: CPUTIM is 9723 ticks 677 VUPS
I64 rx2600: CPUTIM is 3869 ticks 1759 VUPS
x86-64: CPUTIM is 1947 ticks 3783 VUPS
After evaluating the above results from PRIME_SIEVE, I had to change the CPU_MULTIPLIER for x86-64 to 5 (instead of 8) to get a more realistic VUPS value for x86-64.
Next I will try to look at the details of the KERNEL mode consumption...
Added in 24 minutes 53 seconds:
Code: Select all
SDA> pcs sho trace/stat/mode=kernel ! on E9.2-1 reports this
PC sampler information:
-----------------------
PC IPL Pid Count Routine Module
----------------- --- -------- ------------ -------------------------------- ------
FFFF8300.069B3270 0 00000428 12 EXE$SS_PREP_C SYSTEM_PRIMITIVES_7_MIN
FFFF8300.069A166C 0 00000428 3 SYSTEM_PRIMITIVES_7_MIN+8003B66C SYSTEM_PRIMITIVES_7_MIN
FFFF8300.069AC6B0 0 00000428 2 SWIS$SANITIZE_FRAME_C SYSTEM_PRIMITIVES_7_MIN
FFFF8300.069A1B04 0 00000428 1 EXE$INT_PROBE_KERNEL_C+00004 SYSTEM_PRIMITIVES_7_MIN
FFFF8300.069A1909 0 00000428 1 SYSTEM_PRIMITIVES_7_MIN+8003B909 SYSTEM_PRIMITIVES_7_MIN
FFFF8300.069A1621 0 00000428 1 SYSTEM_PRIMITIVES_7_MIN+8003B621 SYSTEM_PRIMITIVES_7_MIN
FFFF8300.069A14A4 0 00000428 1 SYSTEM_PRIMITIVES_7_MIN+8003B4A4 SYSTEM_PRIMITIVES_7_MIN
FFFF8300.0680235B 0 00000428 1 SYS$BASE_IMAGE+8000025B SYS$BASE_IMAGE
FFFF8300.068022E0 0 00000428 1 SYS$BASE_IMAGE+800001E0 SYS$BASE_IMAGE
FFFF8300.06D5A481 3 00000000 1 X86_HALT_C+00001 PROCESS_MANAGEMENT
PCS$SDA on OpenVMS I64 V8.2 does not offer statistics per mode, so I can only compare PCS data collected when running SRI_VUPS_NEW.COM on VSI OpenVMS Alpha V8.4-2L2 (again emulated Alpha), which is pretty simple:
Code: Select all
SDA> pcs sho trace/stat/mode=kernel
PC sampler information:
-----------------------
PC IPL Pid Count Routine Module
----------------- --- -------- ------------ -------------------------------- ------
FFFFFFFF.8426403C 3 00000000 40 SYS$IDLE+0003C SYS$IDLE
So there seems to be significant - but not unexpected - KERNEL mode 'overhead' on x86-64.
It would be interesting to see the PCS statistics from your WASD load test.
Volker.
PS: Edited to fix the SDA> PCS syntax - thanks Maurizio for spotting this.