Disabling (part of the) timers ?

Russ Allbery rra at stanford.edu
Tue Jun 7 03:40:16 UTC 2005


Christiaan den Besten <chris at prolocation.net> writes:

> Is it in anyway possible to disable (as much as possible) the 'timers'
> used in numerous places of inn and nnrpd. For a test I disabled the
> (nnrp write)timer in nnrpd and let the other one (used to check for
> Client time-out) run once every 100 iterations. It felt like the nnrpd
> (1000 instances running on the server) used way less CPU.

Yes, you can disable the timers in innd by just setting timer to 0 in
inn.conf.  This should affect nnrpd as well but it currently doesn't; I'll
fix that in Subversion.

> Just stracing the inn process shows me numerous gettimeofday's ... are
> all of the necessary?, or am I mistaking in the overhead of CPU power
> required for doing this systemcall?

gettimeofday is the fastest possible syscall, and is usually implemented
in as quick of a method as is available on the architecture.  Disabling
the timers also won't eliminate this; a lot of them are coming from
select() rather than the timers.  gettimeofday is about as close to free
as syscalls get.

> ( when our server is -realy- busy, we have disk I/O left, but 0% CPU
> from the Dual Xeon 2.8 cpu's ... )

That's fairly unusual for INN, and I'd be interested in the information
that the timer code would give you before you turned it off.  :)  INN
really doesn't use CPU power except in the filtering code.

-- 
Russ Allbery (rra at stanford.edu)             <http://www.eyrie.org/~eagle/>

    Please send questions to the list rather than mailing me directly.
     <http://www.eyrie.org/~eagle/faqs/questions.html> explains why.


More information about the inn-workers mailing list