Operating System - HP-UX
1838694 Members
4606 Online
110128 Solutions
New Discussion

compute server kernel parameters

 
SOLVED
Go to solution
Eileen Millen
Trusted Contributor

compute server kernel parameters

We are getting an L class system with 5 CPUs
it will have 6Gb of memory. It is going to be used as a Scientific code compute server.
We have an external disk that will have 20Gb for /var/tmp and 12Gb for swap. From the way our others systems are, there will probably be at least 10 jobs on it all the time.

Does anyone recommend using the HP kernel templates?
I am not sure what to do about the kernel parameters bufpages, nbuf, dbc_min_pct and dbc_max_pct. There seems to be different suggestions about them. Are there any Whitepapers or documents about how to set kernel parameters for compute servers.
Thanks in Advance for any input.
Eileen
3 REPLIES 3
G. Vrijhoeven
Honored Contributor

Re: compute server kernel parameters

harry d brown jr
Honored Contributor
Solution

Re: compute server kernel parameters

Personally, I don't use the "templates" because every situation is different. If these are home grown apps, get the resource details from the developers, if it is from a third party, ask them for some guidelines.

The things to be concerned about is how much memory each process will need. Do they use semaphores? Are they threaded apps? Will you be using a database? Any stream IO? How many files will need to be opened at any one time? How many "processes"? Those are the kind of questions to ask. When in doubt, it might be better to "over-kill" than to underkill the parameters.

live free or die
harry
Live Free or Die
James R. Ferguson
Acclaimed Contributor

Re: compute server kernel parameters

Hi Eileen:

The templates, for the most part, are not a bad starting point. As a rule of thumb, you probably want to set 'max_db_pct' down to perhaps 2-10%. It generally defaults to 50%. If you are running a database server where buffering is done by the database software (e.g. as with Oracle) then providing large amounts of memory to file buffer cache is actually double-buffering since the database manages its own buffer pool.

If you are not running an application like Oracle, but instead had processes which frequently opened and closed the same files, or perhaps shared many of the same files, then offering memory to the file buffer cache improves I/O performance measureably. Somewhere around 300MB of buffer cache is a good start.

Since you are compute-bound, I suspect that a large buffer cache is immaterial.

The other template value to *fix* is the 'timeslice' parameter. It should be set to ten (10) but sometimes comes set at one (1), as with the database templates. This controls the amount of time a process is allowed to run before the CPU is given to the next process at the same priority. Setting it too low, may mean *little* work gets done. Rather the processor spends time merely hopping from process to process.

Have a look at this guide to kernel parameters for more information:

http://docs.hp.com/hpux/onlinedocs/os/KCparams.OverviewAll.html

Regards!

...JRF...