Hello,

I'm writing an snmp poller and I can't seem to get past around 60k hosts
(1 packet per host) in 2 seconds with sendto(). I'm using kqueue() and
batching the packets as the socket becomes ready for writes (it's always
ready as far as I can tell from debugging). I've done some profiling and
the application is waiting for sendto() for the majority of the
execution time. I've set the socket to non-blocking and it never
indicates that it would have blocked. All of the writes are
single-threaded using kqueue().

My question is, is there a way to squeeze more performance out of this?
I'm running 6.5, is there any significant performance improvements in
the newer versions of OpenBSD that would improve sendto()'s performance?
My biggest question would be where can I learn more to debug this myself
so I don't have to bug the mailing list?

Thanks to anyone who can point me in the right direction,

Brian

Reply via email to