2010/3/30 Garrett D'Amore <garrett.dam...@oracle.com>:
> On 03/29/10 07:14 PM, ольга крыжановская wrote:
>>
>> That may be true for Opensolaris on SPARC and i386 but at least the
>> community tries to extend scope the scope beyond servers with 16TB
>> memory. The system should scale on all platforms from very small
>> embedded hardware (e.g. ARM with 16MB of memory) up to superservers
>> with 1PB of memory. This has been at least a goal of the ksh93 project
>> which tries hard to provide an efficient, small, capable and adaptive
>> core of POSIX utilities which scales from the smallest to the largest
>> environments.
>>
>> IMO the default for PIPE_BUF should be a kernel tunable and I agree
>> (out of feature parity with FreeBSD) that ulimit -p should be a
>> writable limit to accommodate easy and portable performance tuning.
>>
>> Garrett, care to sponsor an ARC case for ulimit -p?
>>
>
> I need to think about this.  I'd like to understand what the original
> objections were to it.  I suspect the concern was about breaking userland
> applications which may have hardcoded PIPE_BUF into binaries.
>
> Does POSIX have any advice here?

I don't know. But I agree with the analysis from Irek which said that:
> The pipe users expect to do atomic writes and reads in chunks of
> PIPE_BUF bytes. Increasing the pipe buffer to n*PIPE_BUF (e.g. 5120,
> 10240, 20480, 40960, ...) is safe.

But I think ulimit -p should not be restricted to certain buffer
sizes, it should be the script author to pick a safe value.
If we use a global kernel tunable for setting the default PIPE_BUF it
could spew a warning to /var/adm/messages if the size is not a
multiple of 5120.

Chris
-- 
    ^---^
   (@)v(@)  Chris Pickett
   |    /   IT consultant
 ===m==m=== pkch...@users.sourceforge.net
_______________________________________________
perf-discuss mailing list
perf-discuss@opensolaris.org

Reply via email to