On 09/24/2010 04:56 PM, Wietse Venema wrote:
> Alexander 'Leo' Bergolth:
>>> Even then, a 1000 recipient list should be spread across two local(8)
>>> processes, each delivering transactions of 50 recipients side by side.
>>> I don't see that happen, so I suspect the measurement is inconclusive.
>>
>> Unfortunately it doesn't. :-(
> 
> Actually, multiple local(8) processes are used only when delivery
> is slow enough. 

Ah - OK.

> Now this 10ms delay in my first example (and your example) is
> suspicious. I strongly suspect that my laptop disk drive has write
> caching enabled.  It is physically not possible to create a queue
> file, fsync it, and then update a bunch of mailboxes and fsync them
> when disk heads need to move.
> 
> With this caching going on, my laptop delivers mail (and syslogs
> to the same disk) as fast as memory can be written, so there is no
> room left to run multiple processes delivering mail.
> 
> On the other hand with my artificial 1000ms delays, there is plenty
> of time for concurrency to pick up the slack. And that is what you
> see happening in my second example.
> 
> Does your mail server disk have write caching enabled, and is the
> cache persistent when power fails? I suppose it does not fail that
> often where you live, compared to this third-world infrastructure
> in the USA that I live on.

Yes, it has a battery backed write cache. But it's also connected to a
UPS even though we almost never have power outages. (This once was a
rescue coordination center. :-))

# hpacucli ctrl slot=0 show | grep -i -e "Write Cache" -e Battery
   Write Cache Size: 24 MB
   No-Battery Write Cache: Disabled
   Battery/Capacitor Count: 1
   Battery/Capacitor Status: OK

Cheers,
--leo
-- 
e-mail   ::: Leo.Bergolth (at) wu.ac.at
fax      ::: +43-1-31336-906050
location ::: IT-Services | Vienna University of Economics | Austria

Reply via email to