* * * * *
Just gotta love stupid benchmarks
Obligatory Sidebar Links
* Stupid multithreaded benchmarks [1]
* More stupid multithreaded benchmarks [2]
* Obsessing over stupid benchmarks (and you thought my obsessing over a
greylist daemon was bad … ) [3]
* Compression fever [4]
* A mass of stupid benchmarks. You have been warned. [5]
Because I like running stupid bench marks, I thought it might be fun to see
just how fast syslogintr [6] is—to see if it even gets close to handling
thousands of requests per second [7].
So, benchmarks.
All tests were run on my development system at Chez Boca: 1G (gigabyte) of
RAM (Random Access Memory), 2.6GHz (Gigahertz) dual core Pentium D (at least,
that's why my system is reporting). I tested syslogintr linked against Lua
[8] and against LuaJIT [9]. All were run with messages (after being
processed) being relayed to a multicast address (but one set without a
corresponding listener, and another set with a corresponding listener).
The script being tested was using.lua from the current version [10];
executable compiled without any optimizations.
And the results:
Table: Number of messages per second processed by syslogintr
Lua LuaJIT
------------------------------
no multicast listener 10,250 12,000
multicast listener 8,400 8,800
Not terribly shabby [11], given that the main logic is in a dynamic scripting
language. It would probably be faster if it skipped the relaying entirely and
compiled with heavy optimizations, but that's a test for another day.
Update a few minutes later …
I forgot to mention—those figures are for a non-threaded (that is, it only
runs on a single CPU (Central Processing Unit)) program. Going multithreaded
should improve those figures quite a bit.
[1]
gopher://gopher.conman.org/0Phlog:2007/11/28.1
[2]
gopher://gopher.conman.org/0Phlog:2007/11/29.1
[3]
gopher://gopher.conman.org/0Phlog:2007/11/30.1
[4]
gopher://gopher.conman.org/0Phlog:2008/04/01.2
[5]
gopher://gopher.conman.org/0Phlog:2009/10/14.3
[6]
https://github.com/spc476/syslogintr
[7]
http://www.kegel.com/c10k.html
[8]
http://www.lua.org/
[9]
http://luajit.org/
[10]
https://github.com/spc476/syslogintr/archive/refs/tags/v1.0.0.tar.gz
[11]
http://prog21.dadgum.com/52.html
Email author at
[email protected]