Operating System - HP-UX
1825775 Members
1878 Online
109687 Solutions
New Discussion

Re: vmunix messages in syslog.log

 
Patrick Chim
Trusted Contributor

vmunix messages in syslog.log

Hi all,

Just a moment before I reboot my development server and the following messages is shown in the syslog.log which I have never seen before.

Oct 16 15:43:04 hostname vmunix: Equivalently mapped reserve pool exhausted;
Oct 16 15:43:04 hostname vmunix: Overall application performance may be improved by increasing the "eqmemsize" tunable parameter (currently set to "15")

Does anyone know the meaning of this ? What value should I set then ?

I am running HP-UX 11i of L2000 with 2GB memory. My production server is rp8400 running HP-UX 11i with 4GB memory. Can I apply the same value ?

Regards,
Patrick
2 REPLIES 2
eran maor
Honored Contributor

Re: vmunix messages in syslog.log

Hi

i think this will answer your que.

Use SAM to check the kernel tunable eqmemsize. By default, eqmemsize will
be 15.

Memory on HP-UX systems is divided into 4K pages for both physical and virtual
memory. When the cpu is ready to execute a process, the memory pages for the
process must be accessed by translating its virtual memory to a physical memory
address.

There are some memory pages which virtual address is equal to its physical
address and these are called equivalently mapped pages. These pages can be
accessed with the same address whether the address translation is enabled or
not. Such pages are useful for the data buffers for device drivers. Buffers on
such pages can be accessed with virtual address translation and the interrupt
handler. DMA controllers can access these areas without translating the
virtual addreses. Functions in the PDC also require such pages for buffers.

A kernel function called eqalloc() is used to allocate such pages. It
scans the free memory pools for pages that have same virtual address as
physical address. If it cannot find such pages in free memory pool, it uses
pages in the reserved pool. The size of reserved pool is determined by the
eqmemsiz kernel parameter. If the pages in this reserved pool are all
used, eqalloc() reports there are no equivalently mapped pages. In this case,
the message "Equivalently mapped reserve pool exhausted" is displayed. The
kernel subsystem which called eqalloc() and detected no equivalently mapped
pages have to wait until some other subsystem releases the pages.

When eqmemsize == 15 and the "Exhausted???" message is displayed, the kernel has
already allocated more than 15 pages of equivalently mapped pages. The usage of
equivalently mapped pages are dependent on the number of outstanding, pending
I/Os in parallel.

So what should eqmemsize be set to?

There is an unsupported tool, kmeminfo, that can be used to display the
number of pages allocated by eqalloc(). Contact the Response Center to obtain
a copy of this tool. Run this utility during peak memory usage times or when
the 'Equivalently mapped reserve pool exhausted' messages are displayed.

#./kmeminfo
Physical memory usage (in pages):
physmem = 24576 Available physical memory
freemem = 1973 Free physical memory
Used = 22603 Physical memory Used:
System = 9431 by Kernel:
firstfree = 2581 for Text and Static Data
Bufpages = 3432 for Buffer Cache
pagepool = 0 available for buffers
Dynamic = 3417 for Dynamic Data:
MALLOC = 2620 MALLOC() buckets:
bucket[ 0] = 0 size 1
bucket[ 1] = 0 size 2
bucket[ 2] = 0 size 4
bucket[ 3] = 0 size 8
bucket[ 4] = 0 size 16
bucket[19] = 0 size 524288
bucket[20] = 0 size 1048576
Kmalloc = 732 k[m]alloc()
Eqalloc = 63 eqalloc()
Reserved = 2 Reserved Pools
Other = 1 other system
User = 12793 by User processes
Reclaimable = 6 by Page Cache Disowned = 21
Uarea = 720 by Ureas
Other = 30 not accounted...

Look at the Eqalloc value and set eqmemsize to a value a little larger than
Eqalloc. This will reserve eqmemsize x 4Kbytes worth of memory, so if the
system is running short on memory, calculate this number carefully, but large
memory systems should not have a problem increasing this value.
love computers
T G Manikandan
Honored Contributor

Re: vmunix messages in syslog.log