Solved

DIO  vs CIO  in AIX

Posted on 2014-01-16
4
1,223 Views
Last Modified: 2014-01-16
what is the real difference between

DIO  vs CIO  in AIX

in all releases 5,6 and 7?
which one is superior? and will give better results and must have?
all in the context of Oracle..

thanks
0
Comment
Question by:it-rex
  • 2
  • 2
4 Comments
 
LVL 68

Expert Comment

by:woolmilkporc
ID: 39786720
Direct I/O is a non-caching policy.  File data is transferred directly to/from the disk from/to the application  without going through the VMM file cache.

Because Oracle implements data caching at application level it does not need the filesystem cache.

Concurrent I/O incorporates DIO.
Additionally, CIO bypasses the filesystem's inode locking mechanism. This mechanism is meant to serialize I/O, but Oracle has its own I/O serialization mechanisms for datafiles/redologs/controlfiles to ensure data integrity, so the filesystem's service is not needed in that aspect.
Please don't use CIO for other than the above mentioned types of files!

CIO and DIO are implemented exactly the same way in AIX 5, 6 and 7.

I already explained AIO in our other thread (just in case someone would hit on the idea that I could have forgotten to mention it).

AIO disconnects all I/O processing from application processing (where possible)
0
 
LVL 11

Author Comment

by:it-rex
ID: 39786919
So CIO has what DIO has ,plus more functionality..?
correct?

Now how is CIO works in Linux ..CIO and DIO with oracle and linux?
0
 
LVL 68

Accepted Solution

by:
woolmilkporc earned 500 total points
ID: 39787062
Yes, AIX CIO is AIX DIO plus inode lock bypassing.

DIO under Linux is just the same as under AIX. The Oracle parameter FILESYSTEMIO_OPTIONS is present under Linux as well, with the same functionality as under AIX.

As far as I know there is no native concurrent I/O (CIO) capability built into Linux. Third party filesystems like Veritas FS (VxFS) or GPFS etc. can provide this feature, I think.

AIO exists under Linux as well. As opposed to AIX where AIO is fully implemented as a kernel extension only a few functions are part of the kernel under Linux , many functions are implemented in user space so a library "libaio" is required to provide them.

Linux AIO requires  DIO support thus it works only on filesystems mounted with the dio option.

There is a configuration parameter /proc/sys/fs/aio-max-nr which is the upper limit "of the running total of the number of events specified on the io_setup system call for all currently active aio contexts" (quote from linux.org).

As under AIX the application has to use the proper functions to perform asynchronous I/O.
The FILESYSTEMIO_OPTIONS parameter enables this for Oracle under Linux if set to "setall".
0
 
LVL 11

Author Closing Comment

by:it-rex
ID: 39787203
Great thanks
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
how to monitor remote shell execution on linux 9 104
Linux : can't create transaction lock on rpm.lock (Permission denied) 10 341
Shell Script on AIX 7 116
aix unix tar error 3 73
Introduction Regular patching is part of a system administrator's tasks. However, many patches require that the system be in single-user mode before they can be installed. A cluster patch in particular can take quite a while to apply if the machine…
Using libpcap/Jpcap to capture and send packets on Solaris version (10/11) Library used: 1.      Libpcap (http://www.tcpdump.org) Version 1.2 2.      Jpcap(http://netresearch.ics.uci.edu/kfujii/Jpcap/doc/index.html) Version 0.6 Prerequisite: 1.      GCC …
Learn how to navigate the file tree with the shell. Use pwd to print the current working directory: Use ls to list a directory's contents: Use cd to change to a new directory: Use wildcards instead of typing out long directory names: Use ../ to move…
In a previous video, we went over how to export a DynamoDB table into Amazon S3.  In this video, we show how to load the export from S3 into a DynamoDB table.

820 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question