Named pipe performance

Hi,
I am getting data into a Named pipe. Does Named pipe have any size restriction; I know it does not have any storage and it just passes on the data to the next process.

I want to know, if there will be a difference in the Named pipe performance if the data input is more. (I am using DB2 load utility to load data coming into the Named pipe). For example, assuming that the process taking the data from the Named pipe is very fast (DB2 load),
will the pipe perform better when I get 10,000 records at once than when I get 10,000,00 records at a time.

Do I have an option to create a bigger pipe if I expect a very large volume of incoming data at a time.

I have not used Named pipe before. Please help.

To my knowledge, increasing the size of pipe and fifo (named pipe) buffers requires tweaking a header file and recompiling the kernel. The parameter in question is PIPE_BUF.

If you're using a recent linux, it's probably 64K. On an older linux, I believe it's 4K. On some other UNIX systems, it may be as low as 512 bytes (I believe this is the minimum allowed by POSIX).

You should be able to check the value with getconf PIPE_BUF pathname , where "pathname" is the path to the named pipe or the directory in which the named pipe will be located.

Regards,
Alister