Online Expert Day - HPE Data Storage - Live Now
April 24/25 - Online Expert Day - HPE Data Storage - Live Now
Read more
cancel
Showing results for 
Search instead for 
Did you mean: 

nfile !

SOLVED
Go to solution
titu
Regular Advisor

nfile !

Hi All ,

What should be the value of nfile parameter if I have 40 GB of physical memory in my system ?

Thanks in advance

Titu
8 REPLIES
Mel Burslan
Honored Contributor
Solution

Re: nfile !

nfile kernel parameter is not directly related to amount of memory in your system. It is related to the behavior of the applications running on the system and there is no cookie cutter recipe for determining the value. At the initial hpux system build, this value comes as a result of a rough formula. You can keep it there or change it according to the requirements of your main application (e.g. oracle, weblogic etc.) documentation.

Hope this helps
________________________________
UNIX because I majored in cryptology...
Pete Randall
Outstanding Contributor

Re: nfile !

The value of nfile controls the size of a kernel table and therefore has a very minimal affect on memory - so minimal as to be inconsequential. A much better way to determine an appropriate value is to monitor the high water mark of open files (glance's system tables report is ideal for this) and keep nfile set to double the high water mark.


Pete

Pete
Ganesan R
Honored Contributor

Re: nfile !

Hi,

nfile defines the maximum number of open files system wide. It also depends on the maxfiles_lim

see here for more details.

http://docs.hp.com/en/B3921-60631/nfile.5.html
Best wishes,

Ganesh.
titu
Regular Advisor

Re: nfile !

Changing or increasing value of nfile has any effect on memory usage or any other system parameter ?

Thanks in advance.

Titu.
Mel Burslan
Honored Contributor

Re: nfile !

as Pete mentioned, by increasing this parameter, you are reserving (using) memory to hold a table. Bigger the value, bigger the table size, hence bigger the memory it occupies. But unless you set the value to an obscenely big number, no you should not have any adverse effects. Just be sensible. More than likely, you will not need 3 billion files open at the same time. But may need a hundred thousand files open, depending your application's nature. Consult with the application vendor. If this is just for users, it is a good idea to go with the rule of thumb, default formula that gets put in at the installation time, which is a function of maxusers parameter.
________________________________
UNIX because I majored in cryptology...
Bijeesh
Respected Contributor

Re: nfile !

titu
Regular Advisor

Re: nfile !

Thanks for all reply

Titu
VK2COT
Honored Contributor

Re: nfile !

Hello,

I know my post will not win any points but it
does not matter.

I want to send this advisory so that
others do not get hurt if they run soft
upgrade from HP-UX 11.23 to 11.31 and
use nfile parameter.

Here is the scenario that happened to
a reputable government ogranisation:

a) They run Oracle database on HP-UX 11.23
servers (ServiceGuard clusters) and
set kernel parameter nfile to some value
(say, 30000).

b) They did a soft-upgrade to HP-UX 11.31
(as opposed to clean, fresh installation of
the new release) and started getting serious
problems with Oracle.

And here is why:

On HP-UX 11.31 nfile is a private parameter.
It is not supposed to be tuned anymore.
Hence, the best value for nfile on HP-UX 11.31 is 0 (auto-tune).

Since the upgrade kept nfile at 30000,
Oracle was somehow needing more and
crashing regularly.

A little trick how you can find out the
private kernel parameters on HP-UX 11.31:

a) If the private parameter holds a
non-default value, simply run:

# print_manifest

This command will list ALL kernel
parameters that have non-default values,
including the private parameters.

b) If you know the name of the parameter,
you can check it directly:

# kctune nfile

But, this will fail:

# kctune | grep nfile

Go figure :) Interesting and useful.

So, the private kernel parameters are hidden
partially but not completely...

Cheers,

VK2COT
VK2COT - Dusan Baljevic