Yesterday I ran some benchmark tests against Seaside on Dolphin, Squeak and VW.
The test is basically a brute force conection initiation, against the basic Seaside Counter.
I won't do any analysis or conclusion yet, just some observations, however I'm publishing the results for you our own review.
All the test were ran by separate in the same machine, an Athlon64 X2 3600+, 1GB RAM, Windows XP Pro.
Simulating 20 concurrent users starting connections against the server, one after the other, to see how much load it can handle.Dolphin (Swazoo 1.1.4):http://emaringolo.users.dolphinmap.net/seaside/reports/20071114/SeasideDolphin.html
Dolphin stopped answering connections when they reached the 8000, however, during the test, the image (a workspace) was still responsive (slow, but usable). Once the test ended, the image was responsive again, having more than 8000 instances of WASession, invoking a garbage collect with all those sessions in memory (with all its continuations, i.e. processes), caused a failure, and Windows showed a message saying "Dolphin Smalltalk stop responding". Why it happens at that moment, is unknown to me.Squeak (Kom 6.2):http://emaringolo.users.dolphinmap.net/seaside/reports/20071114/SeasideSqueak.html
The result for Squeak are similar as Dolphin. Same number of instances (average), with the difference of no having "processes" for its continuations, during the test the workspace wasn't responsive as Dolphin's one, but you can evaluate some expressions, and with patience get the print-it or do-it. But passed the test without dying. Invoking a GC forced me to interrupt the VM, because the GC blocked it.VW (WebToolkit):http://emaringolo.users.dolphinmap.net/seaside/reports/20071114/SeasideVW.html
VW started answer a large number of hit per second, which was as expected considering its fast VM, but started to halve its performance, and in less than 2 minutes started to show "Process Emergency" (or something similar I don't remember exactly). During the test all the windows were a dark grey rectangle, so no interaction can be done. After two minutes of test, the VM showed a out of memory message, and died abruptly.
Labels: benchmarks, seaside