3 @page Stack_Recursion Test README File
7 Begin Comment added August 14, 2007 <wilsond@ociweb.com>
8 The original README starts below.
10 The name of this test is misleading. See the bugzilla entry below for a
11 historical justification of the name.
13 It is a test of the throughput for replies to a clients CORBA requests.
15 The client starts 8 tasks (aka threads.) Each task calls the ping method
16 100 times. Ping is a nop method on the server. Presumably sending these
17 pings opens one or more connections to the server. The actual number of
18 connections varies from test run to test run.
20 After that the client calls the get_data method 1000 times. Each call
21 returns a sequence of octets containing 1048576 bytes (1Mb). The test
22 succeeds if these replys are received by the client in 960 seconds
25 A successful test executes 8800 CORBA calls in 16 minutes (550 calls a
26 minute = 9+ calls/second) and returns 8000 megabytes (500 megabytes/minute
27 = 8.3 megabytes/second) via a local host connection.
29 A typical failure for this test is a client timeout at the end of 16 minutes.
30 This can happen if the test system is too slow or heavily loaded to handle
31 this much data (including the necessary mallocs & frees (16M per call), or
32 if there is a significant bottleneck or hang in the ORB. Because the test
33 is sensitive to other loads on the test system, the results will be intermittent.
35 8 tasks is hardcoded in client.cpp
36 100 pings is hardcoded in Client_Task.cpp
37 1000 calls to get_data is hardcoded in client.cpp
38 1Mb per get_data call is hardcoded in client.cpp.
39 960 seconds is hard coded in run_test.pl
41 End Comment added August 14, 2007 <wilsond@ociweb.com>
44 A stress test for the stack recursion outlined in the bugzilla
45 under id 1125. Here is the link for the bug
47 http://bugzilla.dre.vanderbilt.edu/show_bug.cgi?id=1125
49 This test is designed to show the bug. The test has a server running 4
50 threads and clients running 16 threads requesting around 30 MB of
53 @@NOTE: Once the bug is fixed we may have to change the timings in the
54 test so that the test can run to completion.
56 To run the test use the run_test.pl script:
60 the script returns 0 if the test was successful.