- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - OpenVMS
- >
- CPU Utilization plays Catch Up
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Discussions
Discussions
Forums
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО05-27-2008 10:18 AM
тАО05-27-2008 10:18 AM
We are running Openvms 7.1 on an Alphaserver 4100 5/300.
The problem is that CPU utilization of each program doesn't accrue regularly. No CPU will be charged for minutes at a time and then suddenly one or more of the 22 instances (about every 5 minutes) will start getting charged large amounts of CPU (up to 30% for a minute at a time) time that seems to try and catch up the CPU utilization.
What's going on here?
I use scheduled wakeup at 100ms and Hibernate at end, but I tried other timing mechanisms (event flag waitfr, and lib$wait) but I still see the process in HIB a large amount of the time.
Any way to smooth the CPU use out?
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО05-27-2008 10:42 AM
тАО05-27-2008 10:42 AM
SolutionThe CPU charging takes place by the clock interupt routine, charging whichever process was active on a CPU, before checking what to run next.
Therefor, a task which is (in_directly timer scheduled and runs less than a clock tick might never be visible as far as CPU time is concerned.
Put a short task which takes 10% cpu right after a repeated longer tasks taking 95% of a clock tick and the short tasks may appear to consume 50% CPU with the long task none. "Bad timing".
What TCP/IP stack/version is being using? The older UCX versions had several high contention interlocks, serializing access and potentially magnifying the above suggestions.
Hardware assisted CPU cycle sampling, such as offered by the PRF extention to SDA can show what is really happening... but that is probably not available on OpenVMS 7.1
Is this question born out of curiosity, or is there a real problem to be addressed?
If there is a performance concern then it may be more fruitful to go the upgrade path first. Can you upgrage the Alpha and or OpenVMS and its TCP stack at all? The 5/300 only has a fraction of the power of a recent alpha chip. And OpenVMS has much improved in the performance area as well.
Hope this helps some,
Hein van den Heuvel
HvdH Performance Consulting.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО05-27-2008 10:56 AM
тАО05-27-2008 10:56 AM
Re: CPU Utilization plays Catch Up
System is using Digital TCP/IP services for OpenVMS Alpha Version V4.1, ECO 10.
This is causing some problems from time to time there seems to be an alignment of multiple programs catching up and there being nearly no cpu time availalbe. Timing constraints are retrieving data 10 times a second).
I wonder if there's a way to trick it so they don't ever get charged?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО05-27-2008 11:41 AM
тАО05-27-2008 11:41 AM
Re: CPU Utilization plays Catch Up
As Jan comented, the accounting time aggregation mechanism was never designed to do accounting for time at this level of detail. The fact that all of the programs are running the precisely same processing will only reinforce the "moire" possibilities that Jan was referring to.
For instrumentation, I would consider putting in some mechanism that allows the processes to be monitored. If nobody is actually having problems, I would not recommend any action.
Of course, more detailed review may disclose some issue, but that is more detailed than can be handled in this forum.
- Bob
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО05-27-2008 12:23 PM
тАО05-27-2008 12:23 PM
Re: CPU Utilization plays Catch Up
I'm quite fond of instrumenting application code for debugging, performance and monitoring purposes, as external tools can and do have limitations. Out-board monitors never seem to have all of the detail I want, so I incorporate hooks or routines into the application code that out-board monitors and tools can then use.
Shared memory can be used to instrument the code, or otherwise.
These hooks might be selectively-enabled in certain cases (and particularly in the most performance-critical code paths), but I've found having debugging and monitoring tools "baked in" greatly simplifies support and upkeep.
And if you want to experiment with some potential "free" performance, try an upgrade to V7.3-2 or later, or an Alpha processor upgrade, or both. A number of folks around have found V7.3-2 faster than earlier releases, for various reasons.
It can be worthwhile optimizing old releases and old gear, but the costs do need to be compared with the costs of upgrading. And there can be diminishing returns here, too. And a cheap AlphaStation XP1000 or analogous will likely run your applications far faster than this AlphaServer 4100 box.
Stephen Hoffman
HoffmanLabs LLC
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО05-27-2008 10:13 PM
тАО05-27-2008 10:13 PM
Re: CPU Utilization plays Catch Up
adv coll sys /out=xxx/end=[time]/int=zzz
adv coll rep sys /out=yyy xxx
It will report the cpu per process based upon sampling every zzz 1/100 sec(default 1/100 sec and lower not possible).
Wim
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО06-03-2008 07:36 AM
тАО06-03-2008 07:36 AM
Re: CPU Utilization plays Catch Up
FYI I found that creating the process real time priority (20) and and using the prc$m_noacnt attribute when creating the process diminished the cpu utilization spikes significantly.
Also per HP, using a SYS$Hiber for this relatively quick (100ms scan cycle) timing was NOT a good idea at all. Changed the code to use a simple sys$setimr and sys$waitfr event flag, and all this made a significant difference in smoothing out the cpu oddities etc.
Done!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО06-03-2008 07:38 AM
тАО06-03-2008 07:38 AM