* * * * * 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 Sean Conner at sean@conman.org .