[MUD-Dev] Benchmarking MUDs
Chris Gray
cg at ami-cg.GraySage.COM
Mon Sep 10 23:05:03 CEST 2001
> From: "Adam Martin" <ya_hoo_com at yahoo.com>
> Sorry, to clarify, I'm assuming the tests were merely specified
> fully - I don't expect someone else to come along and volunteer to
> write a new test suite for my proprietary server core. If a set of
> tests is defined clearly and unambiguously enough, I can code them
> up reasonably quickly (if I couldn't, then I'd be running back to
> the drawing board hitting myself over the head and asking why on
> earth it was difficult to add new tests to my testing system? (and
> assuming laziness or oversight somewhere in the dev team that
> needed correcting before the code went to full test anyway!)).
Well, OK, I'll start with what I can quickly get.
(This first is from the ByteCode.txt file on my web pages.) A
simple test program in softcode:
proc hanoi(int fromPeg, toPeg, usingPeg, n)void:
if n ~= 0 then
hanoi(fromPeg, usingPeg, toPeg, n - 1);
hanoi(usingPeg, toPeg, fromPeg, n - 1);
fi;
corp
Execution times in seconds, for a 300 MHz P-II MMX, compiled with
gcc:
Unoptimized MUD server:
tree interpreter: n = 22: 57 n = 23: 114
bytecode machine: n = 22: 14 n = 23: 29
Optimized MUD server:
tree interpreter: n = 22: 34 n = 23: 68
bytecode machine: n = 22: 4 n = 23: 9
Another simple statistic is the simple size of the MUD on-disk
database file for the active scenario (see my web page for what's in
it):
-rw-r----- 1 cg users 836426 Sep 8 19:30 MUD.data
-rw------- 1 cg users 59148 Sep 8 19:30 MUD.index
On the last shutdown of the server (August 7):
2001-08-07 20:07:15 Allocator: used: 1224704 limit: 1000000000
2001-08-07 20:07:15 allocs: 1857309 frees: 1857288 reclaims: 0 panics: 0
(I understand the leaks, and they are false readings because of
the way I've compiled the server.)
Current process size (no active clients):
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
cg 14957 0.0 1.3 3444 1788 ? S Aug07 0:03 MUDServ -c1000000 -t16666:t -t16668:s -t16669:l
When I've tested in the past (room-only world, no tile region),
using my automated NPC's, I think I got up to 1000 NPC's trying to
do things that players do (move every couple of seconds, pick things
up, drop them, fight), before the system approached full CPU
load. Of course, that says absolutely nothing about
networking. (Same 300 MHz PII)
That's a start for some simple measurements. Things get harder from
here!
--
Experience should guide us, not rule us.
Chris Gray cg at ami-cg.GraySage.COM
http://www.GraySage.COM/cg/
_______________________________________________
MUD-Dev mailing list
MUD-Dev at kanga.nu
https://www.kanga.nu/lists/listinfo/mud-dev
More information about the mud-dev-archive
mailing list