|
Other manuals for this model:
manual abstract
Solution for Unknown Status Occurring on Overloaded Servers
HP-UX specific case
Restarting JQM server causes the server to use a single ARENA for all the memory allocation requests preventing the
server memory from increasing for any of the subsequent requests.
NOTE: The memory growth for a specific server can also be restricted by setting the
-server-environment-variables attribute for that server. Setting the
_M_ARENA_OPTS variable may adversely affect the performance of an application, as
per HP-UX manual for malloc, use of different ARENA for each thread leads to better
server performance.
The M_ARENA_OPTS can also be set for a specific server (JQM or any other) by using
-server-environment-variables attribute. You can set this attribute by using the following command:
config_server -u -x"-server-environment-variables \"_M_ARENA_OPTS=1:8\"" jqm
NOTE: For more information on M_ARENA_OPTS,refer to the following link:
http://devrsrc1.external.hp.com/STK/cgi-bin/man2html?debug=0&manpage=/usr/share/m
an/man3.Z/malloc.3c
Example 2
In the DSM server, use of an advanced template (with 150 destinations) increases the memory size to 200MB. The
combination of memory usage and APF destination causes this increase. But the estimate of memory usage of these
destinations is 200k to 500k per physical destination. The memory increase is caused due to a specific feature present
in the HP-UX heap manager that sometimes causes DSM server to gain memory. By default, the HP-UX heap
manager uses sub-heaps, which it calls ARENAS. These ARENAS are thread specific, and there are eight of them
(default). Unless changed, this causes HP Output Server processes, such as DSM server, to get larger than needed.
To make the HP-UX heap manager behave like any other heap manager, execute the following command:
config_server -u -x"-server-environment-variables \""_M_ARENA_OPTS=1:32\"" dsm
This command changes the heap manager’s behavior for DSM server. With this setting of _M_ARENA_OPTS, there
is only one ARENA(like all the other heap managers.) This setting is recommended for any of the DSMs that run APF
physicals.
Example 3
In the CM server, executing the pdconfig command results in substantial growth of memory. A memory spike
occurs on the server when the 'pdconfig -d -c /tmp/x.cf'command is executed.This increases the
memory growth to 121MB. A feature in HP-UX heap manager (malloc and free) creates separate heaps for each
thread in the multi-threaded program. This problem occurs when different RPC WorkerThreads allocate memory
to serve the pdls -c class RPC that comes from the pdconfig client.
The large size of the configuration causes CM server to allocate about 40MB to serve one pdls -cp ids_ccm:
rpc call. All of this memory is allocated in one ARENA since it is all allocated only on one thread. When another
pdls -cp ids_ccm:rpc call is made, this RPC is served by another RPC worker thread. This causes the CM
server to allocate another 40MB in another heap ARENA. In this case, the original 40MB, which was allocated and
later cleared, is not reused. Instead the heap manager asks HP-UX for another 40MB of virtual memory. Eventually
pdls calls fill up the ARENAS to exceed the 128MB per-process data limit.
To rectify this problem, the behavior of the HP-UX heap manager should be modified by adding the following
environment variable in the HostConfig.sgml entry for the environment-variables host attribute:
_M_ARENA_OPTS=1:8
HP Output Server 3.5
5
...