On Feb 11, 2004, at 9:06 PM, Shevek wrote:
On Wed, 11 Feb 2004, Theo Schlossnagle wrote:
-- end stupid test --
So, if I run this on a development server here, I get:
; perl ./t.pl 10000 1000000
CPU seconds/message: 0.0004080458
2000000 messages/hour = 820.8 seconds!
Extrapolated, that means that 22% of all my time sending mail is spent
on the CPU doing SRS.
Having read the figures a few times, I'm assuming that the 22% above
is a
typo made slightly funnier by context?
It wasn't a typo intentionally, but I am notoriously bad at arithmetic.
At 2x10^6 messages per hour (which is reasonable to achieve with a high
performance MTA on good hardware), it comes out to 820 seconds.
There are 3600 seconds in an hour. 820/3600 is about .22 = 22%
Obviously 22% of our time isn't spent doing it... rather we need 22%
more CPU seconds to accomplish the same task.
*grin*
Obviously an implementation aimed solely at performance could increase
this by a factor of 10 (probably). But that is 2%, which is a damn
Ah, but we will have better performance in the C version!
A factor of 10 is a pretty legit speed up. I'd be surprised to see a
speed-up of more than x100.
Like George mentioned earlier, we run MD5's on all MIME parts
(fingerprints) of all message on-the-fly (to hand back 55x's in the
SMTP session) when Anti-viral "mojo" is turned on and can still achieve
over 1x10^6 messages/hour. MD5 is surprisingly cheap.
// Theo Schlossnagle
// Principal Engineer -- http://www.omniti.com/~jesus/
// Postal Engine -- http://www.postalengine.com/
// Ecelerity: fastest MTA on earth