Operating System - OpenVMS

PageFile Full

Frequent Advisor

PageFile Full

Dear All,

If the free space for Paging File is full, i still have batch jobs running & do not want to reboot the machines.

One of the method is creating the new Page file & install it.

However, if i want to extend the current page file without system reboot, could anyone know how to do it?

Karl Rohwedder
Honored Contributor

Re: PageFile Full


as far as I know, you can extend the current pagefile using the SWAPFILES procedure or SYSGEN directly. But the new space is used after a reboot only.
Even if you create/install a seconary pagefile, only new processes will use it.

regards Kalle
John Gillings
Honored Contributor

Re: PageFile Full


You can extend an existing page file (subject to the amount of fragmentation) or install a new page file on any disk at any time.

Kalle is correct for older versions of OpenVMS, but for V7.3 and above, I'm fairly sure the new the new pagefile space is immediately available to all processes.

Use SYSGEN CREATE/SIZE to create or extend the file, then SYSGEN INSTALL/PAGEFILE to make it active.
Don't forget to add the INSTALL command to your startup procedure to make the pagefile permanent.

Note that with reasonably sized pagefiles, it really doesn't matter if you have more than one per disk. Given the cost of disk space "reasonably sized" means GB. Balancing the cost of downtime vs cost of disk space, you should have sufficient pagefile(s) to never get even close to full.
A crucible of informative mistakes
Jur van der Burg
Respected Contributor

Re: PageFile Full

If you extend a part of a pagefile then this space will only be used after a reboot. You can't use it otherwise. This is for all VMS versions.

You can however create a new one and install it after which it will be used immediately.

Karl Rohwedder
Honored Contributor

Re: PageFile Full

Perhaps my english was a little misunderstanding, but according to the system mangers manual a reboot is always nec. to use an EXTENDED page/swapfile's space (from the V8.3 docset).

regards kalle
Andy Bustamante
Honored Contributor

Re: PageFile Full

Minor addition to John's post


will attempt to allocate contiguous space. If you've started paging, contiguous space can can have a minor performance impact.


If you don't have time to do it right, when will you have time to do it over? Reach me at first_name + "." + last_name at sysmanager net
Robert Gezelter
Honored Contributor

Re: PageFile Full


To summarize somewhat:

- a pagefile can be extended, but the extended size will only become usable following a reboot

- a new (secondary..) pagefile is used immediately

If a secondary pagefile has been created, space can be freed in the primary pagefile by selectively restarting processes. For example, interactive users logging off and logging back in will, over time, balance the load on the two page files.

- Bob Gezelter, http://www.rlgsc.com
Ian Miller.
Honored Contributor

Re: PageFile Full

Since Alpha V7.3 a process can use multiple page files. A process reserves a set of pages from the page file with the highest number of unreserved pages. When it has used that set of pages it then reserves another set. So if you add a page file then the next time a process reserves a set of pages (or when a process starts)it will find the new page file.

Purely Personal Opinion
Jan van den Ende
Honored Contributor

Re: PageFile Full


Are you sure your pagefile is full, or has the space only been Reserved?

If the pagefile _IS_ (nearly) full, your system will simply halt, and a reboot is necessary.
So, I have to conclude that "only" the available space has been reserved.
And yes, that _might_ bring you in trouble when at the same moment every process comes to need all its allocated address space, but in most configurations that is highly unlikely.

Quite another symptom of the problem will have shown long before that.
Processes that _need_ to _USE_ the pagefile, will for any activity that addresses a page that is no longer in memory, have to fetch it from the pagefile. Typically such process will slow down, REALLY slow down. (a factor of 100, up to 10000, depending of the fraction of addresses needing page-in).

When this occurs, you really should buy more memory.

A much more likely scenario is, that your accounts have been set up with too slittle allowance for memory use.
Pleas do some Monitoring, my educated guess is that you have a lot of paging, mostly SOFT.
And while the penalty for soft paging is orders of magnitude less then for hard paging, there _IS_ a penalty.

If you(r company) has paid for enough memory, then make it easy for processes to use it!

Bottom line:
Find the processes that are (soft) paging the most, and boost their working sets!



Have one on me.

Don't rust yours pelled jacker to fine doll missed aches.
The Brit
Honored Contributor

Re: PageFile Full

As has been suggested, look into the cause of your paging rates.

In the simplest terms, your system's physical memory is distributed between
1. Blocks reserved for the OS.
2. Reserved memory segments(if you have defined any)
3. Process Working Sets.
4. Modified pages (the modified page list)
and 5. The rest (the FreeList).

Look at how your memory use is distributed.

1. What is the system's memory use looking like? If it is at, or close to 100% then it may be time for an upgrade.
2. Even if #1 is true, You may be able to improve the situation. Check into Proactive Memory reclaimation (See SYSGEN HELP for PFRATL, PFRATH, WSDEC and WSINC) However, a warning; Besure you read and understand what this process does.
3. Use "mon System" to check on the amount of memory currently being held on the Modified List, and what is available on the Free List. If the Modified list is too small, this will result in pages being dumped into the page file at a high rate. This will also occur if the FreeList is too small, i.e. the page writer will dump pages to the pagefile to free them up for the FreeList.
4. Check the memory parameters, in particular, the size limit for the Modified List (MPW_HILIMIT). Again, besure you understand the relationship between the different memory parameters (MPW_* & FREELIM/FREEGOAL).
5. For individual process "mon proc/topfault". Processes with consistently high fault rates need more Working Set.

The Proactive memory reclamation process described in #2 is very useful in systems where memory is tight, and there are lots of interactive processes. Basically, it reclaims pages from processes which are not currently using them, and places them on the free list. As I said above, it can be as agressive or as placid as you want it too be, just take the time to understand it.