Simpler Navigation for Servers and Operating Systems
Completed: a much simpler Servers and Operating Systems section of the Community. We combined many of the older boards, so you won't have to click through so many levels to get at the information you need. Check the consolidated boards here as many sub-forums are now single boards.
Showing results for 
Search instead for 
Did you mean: 

I/O Buffer Size

I/O Buffer Size

I have an HP9000 K570. The DBA for the system has ask me a question that I'm Not sure how to answer. He wants to know what the I/O buffer size is for this server. I ask him to be more specific but he keep ask the same question. IS there a way to find out what the I/O buffer size is?
Rita C Workman
Honored Contributor

Re: I/O Buffer Size

He may be referring to the read buffer size...
Generally the default on Oracle is 8k block size, then you'd want to make sure the blocksize of the lvol matches. JFS are generally 8k as default, I believe.
You can check your by:
fstyp -v /dev/vg_/lvol_ | grep -i bsize

Just a thought,
David Snider
Frequent Advisor

Re: I/O Buffer Size

If you are using hfs, do a /usr/bin/df -g and look for "file system block size"

DF will always show vxfs as 8K block size, but the default is actually 1K and scales automatically according to disk size. Use the following command to find the correct block size for JFS (Vxfs):
'#echo "8192B.p S" | fsdb -F vxfs /dev/vg06/rlvol12|grep bsize'

Make sure you substitute the correct VG and RAW lvol for your FS..

for more info, search for document ID:S3100000884 on the ITRC..
Ed Ulfers
Frequent Advisor

Re: I/O Buffer Size

Senior level Oracle DBA responding...

There are 2 types of OS buffers of importance:
1) The memory page size buffer (in HP its 4K)
2) The file system fragment size (from the mkfs command)

For #1, the Oracle database block size (db_block_size) should be some multiple (1 or greater) of this, unless your DBA has really good reasoning. While the newer HP-UX's can vary memory block size, few vary it from the default of 4K.

For #2, the HP-UX default used to be 1K. Since Oracle likes to deal with complete blocks, datafiles tend to always write in multiples of db_block_size. A OS filesystem will maximize performance by having its fragment size set to db_block_size. With the newer versions of Oracle, there are more settable values that affect the disk write attributes and can have it performing differently (but that is a long and deep Oracle discussion). For the purely Oracle datafile filesystems, I suggest rebuilding the filesystem go gain optimal performance (1 Oracle block read/write = 1 OS filesystem read/write). Characteristics within Oracle should then be left to your DBA.

Hope this helps clarify the question for you. Most of this is directly out of the Managing Oracle on HP-UX course offered by Oracle. Your DBA and/or you may be interested in.

-- Ed Ulfers
Put a smile on your users face, offer them a kiss (Hershey's Kiss).
Andrzej Krytenko
Occasional Visitor

Re: I/O Buffer Size

One thing is filesystem block size, and another is buffer size. DBA should be rather interested in the first one. But if he means I/O buffer cache size, then on your system with default kernel settings buffer size <= 50% of physical memory and is dynamically changed depending on current demands.