1 ECOAPP ECOAPP is an application which enables power saving in the case that OpenVMS Alpha is running on the vtAlpha emulator. In that case the VMS idle loop is forced to call a routine which will suspend the emulator's execution until the next interrupt, either from a peripheral or the hardware interval timer, resulting in energy saving since the CPU does not have to keep on running when there's no work to do. If the system on which this application is running does not support powersaving then an error will be issued when starting the application. (Some systems just ignore the power save command and don't return an error. The modules's presence is harmless in that case). Manual activation can be done with the LOAD command. For more info or issues contact support@avtware.com. 2 LOAD ECOAPP LOAD This command will load the ecoapp utility. If it is aleady running a warning will be shown. 3 /LEVEL /LEVEL=level This qualifier allows setting the detection level after which ecoapp will cease activity. This level is given as a floating point number, and is compared against the current one minute system load. If the system load is higher than the specified level then ecoapp will cease waiting for interrupts, which will lead to higher physical cpu consumption, but also to a more efficient processing due to the lack of waits, context switches and cache invalidations. If the system load drops below the level the ecoapp will start to use wait cycles again. Example: ECO LOAD/LEVEL=1.5 will caese activity if the one minute system load will raise above 1.5. 3 /LOG /LOG This qualifier will log the loading activity. 3 /NOLOAD /NOLOAD This qualifier allows setting the permanent characteristic without loading the system module. 3 /PERMANENT /PERMANENT This qualifier will make it load at boot time so that no manual intervention is needed anymore. 2 MONITOR ECOAPP MONITOR This command will monitor the statistics of the ecoapp utility. The display will continusly be updated with relevant info: ECOAPP version V2.1 Enter H or ? for help Start time: 8-JUL-2020 09:12:01.15 (load at boot enabled, level 5.00) Uptime: 1 02:47:44.35 State: Inactive Level: 5.00 Total system idle percentage since ECOAPP start: 88% Cpu average: 3.76 5.22 3.87 Cur processes: 1 IOq average: 4.20 6.90 3.88 Cur I/O queue: 0 Sys average: 7.97 12.12 7.75 CPU idle count idle time idle ----------------------------------------------- 0 257257646 0 20:21:11.49 100% 1 203724018 0 17:23:03.55 86% 2 191994732 0 17:50:49.53 88% 3 153309693 0 15:34:28.96 77% 4 243440235 0 20:59:39.65 100% 5 224290571 0 19:56:39.10 95% 6 198999658 0 18:17:45.03 88% 7 173178507 0 15:47:53.65 76% 'idle count' is the number of times that a cpu was suspended due to lack of work. 'idle time' is the total time that a cpu has spent waiting before an interrupt woke it up. During monitoring a couple of keys are recognized which can influence the settings of monitoring: Ctrl-Z, F10, Q: Exit Ctrl-W: Refresh S: Suspend R: Resume Left arrow: Interval down Right arrow: Interval up Up arrow: Level up Down arrow: Level down PageUp: Level up * 10 PageDown: Level down * 10 C: Clear level W: Write level 0-9: Set level to 0-9 H, ?: Help 3 /FULL /FULL Shows extended info including the average idle time. 3 /INTERVAL /INTERVAL=n This qualifier specifies the interval in seconds between updates. The default is 1 second. 3 /SMG /[NO]SMG Allows a pretty formatted display using the VMS Screen Management routines. 2 SET ECOAPP SET This command will set the detection level. The /LEVEL qualifier is mandatory. 3 /LEVEL This qualifier allows setting the detection level after which ecoapp will cease activity. This level is given as a floating point number, and is compared against the current one minute system load. If the system load is higher than the specified level then ecoapp will cease waiting for interrupts, which will lead to higher physical cpu consumption, but also to a more efficient processing due to the lack of waits, context switches and cache invalidations. If the system load drops below the level the ecoapp will start to use wait cycles again. Example: ECO SET/LEVEL=1.5 will caese activity if the one minute system load will raise above 1.5. 3 /PERMANENT /PERMANENT This qualifier will make the specified level permanent, the level will automatically be set at boot time. 2 UNLOAD ECOAPP UNLOAD This command will unload the ecoapp utility. If it is not running a warning will be shown. 3 /LOG /LOG This qualifier will log the unloading activity. 3 /PERMANENT /PERMANENT This qualifier will prevent loading at boot time. Only manual loading will make it run. 2 STATISTICS ECOAPP STATISTICS This command will show statistics of the ecoapp utility, for example: ECOAPP version V2.3 Start time: 12-JUL-2023 10:04:24.57 (load at boot enabled, level 0.00) Uptime: 0 00:16:48.72 State: Active Level: 0.00 Total system idle percentage since ECOAPP start: 96% Cpu average: 0.05 0.07 0.05 Cur processes: 0 IOq average: 0.01 0.08 0.05 Cur I/O queue: 0 Sys average: 0.06 0.16 0.10 CPU idle count idle time idle ----------------------------------------------- 0 927298 0 00:15:59.10 96% 1 951391 0 00:16:08.83 97% 'idle count' is the number of times that a cpu was suspended due to lack of work. 'idle time' is the total time that a cpu has spent waiting before an interrupt woke it up. 3 /FULL /FULL Shows the current system, priority and I/O load over a period of 1, 5 and 15 minutes. 3 /CPU /CPU Shows the current cpu load over 1, 5 and 15 minutes. 3 /IO /IO Shows the current I/O queue load over 1, 5 and 15 minutes. 3 /LOAD /LOAD Shows the raw current cpu, I/O and system load over 1, 5 and 15 minutes. This switch may be combined with IO, CPU or SYSTEM switches. $ eco statistics/load 0.00 0.04 0.07 0.00 0.01 0.01 0.00 0.04 0.08 3 /SYSTEM /SYSTEM Shows the current system load over 1, 5 and 15 minutes. Notice that the system load is the sum of the cpu load and the I/O load. 2 RESUME ECOAPP RESUME This will resume ecoapp's activity 2 SUSPEND ECOAPP SUSPEND This will suspend ecoapp's activity 2 VERSION ECOAPP VERSION This will show the current version.