summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpradeep <pradeep@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2003-04-25 21:24:03 +0000
committerpradeep <pradeep@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2003-04-25 21:24:03 +0000
commit34f66769bf55173aa3bba9ee5dbfd2626e7bedef (patch)
treeba68877873602095151d75e8fd442338d81f0c67
parent12e555a1a572036cb6d3cfdd465895fe7469fb0a (diff)
downloadATCD-34f66769bf55173aa3bba9ee5dbfd2626e7bedef.tar.gz
*** empty log message ***
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/README25
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/notify.conf4
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/path_high_prio.conf48
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/path_low_prio.conf48
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/path_med_prio.conf48
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/run_notify.pl71
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/run_path_high_prio.pl62
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/run_path_low_prio.pl62
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/run_path_med_prio.pl62
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/setup_notify.conf19
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/README41
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/consumer.conf25
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/notify.conf6
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/run_test.pl95
-rw-r--r--TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/supplier.conf29
15 files changed, 645 insertions, 0 deletions
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/README b/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/README
new file mode 100644
index 00000000000..56393e808fe
--- /dev/null
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/README
@@ -0,0 +1,25 @@
+Priority Preservation test on multiple hosts.
+
+There are 4 hosts involved in this test.
+
+Host 1 : Start the run_notify.pl here. It starts up an instance of the
+RT Notification configured with 3 lanes - High, Medium and Low
+priority.
+
+Host 2: Start path_low_prio.pl here. This will start a
+consumer-supplier pair which is configured for a low priority event
+propagation path.
+
+Host 3: Start path_medium_prio.pl here. This will start a
+consumer-supplier pair which is configured for a medium priority event
+propagation path.
+
+Host 4: Start path_high_prio.pl here. This will start a
+consumer-supplier pair which is configured for a high priority event
+propagation path.
+
+Once the path_high_prio.pl is started, it will signal the low path and
+medium priority path tests to execute.
+
+Each test will generate the data files from the results recorded
+during execution. \ No newline at end of file
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/notify.conf b/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/notify.conf
new file mode 100644
index 00000000000..761cbfdf7ea
--- /dev/null
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/notify.conf
@@ -0,0 +1,4 @@
+dynamic TAO_RT_ORB_Loader Service_Object *TAO_RTCORBA:_make_TAO_RT_ORB_Loader () "-ORBSchedPolicy SCHED_FIFO -ORBScopePolicy PROCESS -ORBPriorityMapping continuous"
+dynamic TAO_NS_Factory Service_Object * TAO_CosNotification:_make_TAO_NS_Default_Factory () ""
+dynamic TAO_Notify_Service Service_Object * TAO_RT_Notification:_make_TAO_RT_Notify_Service () ""
+
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/path_high_prio.conf b/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/path_high_prio.conf
new file mode 100644
index 00000000000..03a9bd6e529
--- /dev/null
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/path_high_prio.conf
@@ -0,0 +1,48 @@
+## $Id$
+
+##---- Load the Factories------
+dynamic TAO_RT_ORB_Loader Service_Object *TAO_RTCORBA:_make_TAO_RT_ORB_Loader () "-ORBSchedPolicy SCHED_FIFO -ORBScopePolicy PROCESS -ORBPriorityMapping continuous"
+
+dynamic TAO_NS_RT_Application_Command_Factory Service_Object * TAO_RT_NotifyTests:_make_TAO_NS_RT_Application_Command_Factory () ""
+##dynamic TAO_NS_Application_Command_Factory Service_Object * TAO_NotifyTests:_make_TAO_NS_Application_Command_Factory () ""
+
+dynamic TAO_NS_EventChannel_Command_Factory Service_Object *TAO_NotifyTests:_make_TAO_NS_EventChannel_Command_Factory () ""
+
+dynamic TAO_NS_SupplierAdmin_Command_Factory Service_Object* TAO_NotifyTests:_make_TAO_NS_SupplierAdmin_Command_Factory () ""
+
+dynamic TAO_NS_Periodic_Supplier_Command_Factory Service_Object* TAO_NotifyTests:_make_TAO_NS_Periodic_Supplier_Command_Factory () ""
+
+dynamic TAO_NS_ConsumerAdmin_Command_Factory Service_Object *TAO_NotifyTests:_make_TAO_NS_ConsumerAdmin_Command_Factory () ""
+
+dynamic TAO_NS_Periodic_Consumer_Command_Factory Service_Object* TAO_NotifyTests:_make_TAO_NS_Periodic_Consumer_Command_Factory () ""
+
+dynamic TAO_NS_RT_POA_Command_Factory Service_Object* TAO_RT_NotifyTests:_make_TAO_NS_RT_POA_Command_Factory () ""
+
+
+##------- Init the Application Object ----------
+static Command_Builder "Application -Init"
+
+### --- Create Supplier Admin 1 ----
+static Command_Builder "SupplierAdmin -Create sa_high ec1 -AND_OP"
+
+### --- Create Supplier s_high connected to sa_high -----
+static Command_Builder "PeriodicSupplier -Create s_high sa_high -Proxy s_high_proxy -EventType H -Priority 3 -Iter 5000 -Load 100 "
+
+##----------- Create an RT POA to host local consumer objects-----------
+static Command_Builder "POA -Create poa_1 -PriorityModel CLIENT 3 -ThreadPoolLanes 2 -Lane 0 1 0 -Lane 3 1 0"
+
+##--------- Consumer Admin 1 -------------
+static Command_Builder "ConsumerAdmin -Create ca_high ec1 -AND_OP"
+
+##--------- Consumer 1 , connected to CA 1 --------
+static Command_Builder "PeriodicConsumer -Create c_high ca_high -POA poa_1 -Proxy c_high_proxy -MaxCount 5000"
+static Command_Builder "PeriodicConsumer -Subscription c_high +H"
+
+##--------- Run -------------
+static Command_Builder "Application -SignalPeer"
+static Command_Builder "Application -WaitToStart"
+static Command_Builder "Application -Run"
+static Command_Builder "Application -WaitForEvents"
+static Command_Builder "Application -DumpStats"
+static Command_Builder "Application -Shutdown"
+
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/path_low_prio.conf b/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/path_low_prio.conf
new file mode 100644
index 00000000000..cab7480027c
--- /dev/null
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/path_low_prio.conf
@@ -0,0 +1,48 @@
+## $Id$
+
+##---- Load the Factories------
+dynamic TAO_RT_ORB_Loader Service_Object *TAO_RTCORBA:_make_TAO_RT_ORB_Loader () "-ORBSchedPolicy SCHED_FIFO -ORBScopePolicy PROCESS -ORBPriorityMapping continuous"
+
+dynamic TAO_NS_RT_Application_Command_Factory Service_Object * TAO_RT_NotifyTests:_make_TAO_NS_RT_Application_Command_Factory () ""
+##dynamic TAO_NS_Application_Command_Factory Service_Object * TAO_NotifyTests:_make_TAO_NS_Application_Command_Factory () ""
+
+dynamic TAO_NS_EventChannel_Command_Factory Service_Object *TAO_NotifyTests:_make_TAO_NS_EventChannel_Command_Factory () ""
+
+dynamic TAO_NS_SupplierAdmin_Command_Factory Service_Object* TAO_NotifyTests:_make_TAO_NS_SupplierAdmin_Command_Factory () ""
+
+dynamic TAO_NS_Periodic_Supplier_Command_Factory Service_Object* TAO_NotifyTests:_make_TAO_NS_Periodic_Supplier_Command_Factory () ""
+
+dynamic TAO_NS_ConsumerAdmin_Command_Factory Service_Object *TAO_NotifyTests:_make_TAO_NS_ConsumerAdmin_Command_Factory () ""
+
+dynamic TAO_NS_Periodic_Consumer_Command_Factory Service_Object* TAO_NotifyTests:_make_TAO_NS_Periodic_Consumer_Command_Factory () ""
+
+dynamic TAO_NS_RT_POA_Command_Factory Service_Object* TAO_RT_NotifyTests:_make_TAO_NS_RT_POA_Command_Factory () ""
+
+
+##------- Init the Application Object ----------
+static Command_Builder "Application -Init"
+
+### --- Create Supplier Admin 1 ----
+static Command_Builder "SupplierAdmin -Create sa_low ec1 -AND_OP"
+
+### --- Create Supplier s_low connected to sa_low -----
+static Command_Builder "PeriodicSupplier -Create s_low sa_low -Proxy s_low_proxy -EventType L -Priority 1 -Iter 5000 -Load 100 "
+
+##----------- Create an RT POA to host local consumer objects-----------
+static Command_Builder "POA -Create poa_1 -PriorityModel CLIENT 1 -ThreadPoolLanes 2 -Lane 0 1 0 -Lane 1 1 0"
+
+##--------- Consumer Admin 1 -------------
+static Command_Builder "ConsumerAdmin -Create ca_low ec1 -AND_OP"
+
+##--------- Consumer 1 , connected to CA 1 --------
+static Command_Builder "PeriodicConsumer -Create c_low ca_low -POA poa_1 -Proxy c_low_proxy -MaxCount 5000"
+static Command_Builder "PeriodicConsumer -Subscription c_low +L"
+
+##--------- Run -------------
+static Command_Builder "Application -WaitToStart"
+static Command_Builder "Application -SignalPeer"
+static Command_Builder "Application -Run"
+static Command_Builder "Application -WaitForEvents"
+static Command_Builder "Application -DumpStats"
+static Command_Builder "Application -Shutdown"
+
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/path_med_prio.conf b/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/path_med_prio.conf
new file mode 100644
index 00000000000..de55d57f70c
--- /dev/null
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/path_med_prio.conf
@@ -0,0 +1,48 @@
+## $Id$
+
+##---- Load the Factories------
+dynamic TAO_RT_ORB_Loader Service_Object *TAO_RTCORBA:_make_TAO_RT_ORB_Loader () "-ORBSchedPolicy SCHED_FIFO -ORBScopePolicy PROCESS -ORBPriorityMapping continuous"
+
+dynamic TAO_NS_RT_Application_Command_Factory Service_Object * TAO_RT_NotifyTests:_make_TAO_NS_RT_Application_Command_Factory () ""
+##dynamic TAO_NS_Application_Command_Factory Service_Object * TAO_NotifyTests:_make_TAO_NS_Application_Command_Factory () ""
+
+dynamic TAO_NS_EventChannel_Command_Factory Service_Object *TAO_NotifyTests:_make_TAO_NS_EventChannel_Command_Factory () ""
+
+dynamic TAO_NS_SupplierAdmin_Command_Factory Service_Object* TAO_NotifyTests:_make_TAO_NS_SupplierAdmin_Command_Factory () ""
+
+dynamic TAO_NS_Periodic_Supplier_Command_Factory Service_Object* TAO_NotifyTests:_make_TAO_NS_Periodic_Supplier_Command_Factory () ""
+
+dynamic TAO_NS_ConsumerAdmin_Command_Factory Service_Object *TAO_NotifyTests:_make_TAO_NS_ConsumerAdmin_Command_Factory () ""
+
+dynamic TAO_NS_Periodic_Consumer_Command_Factory Service_Object* TAO_NotifyTests:_make_TAO_NS_Periodic_Consumer_Command_Factory () ""
+
+dynamic TAO_NS_RT_POA_Command_Factory Service_Object* TAO_RT_NotifyTests:_make_TAO_NS_RT_POA_Command_Factory () ""
+
+
+##------- Init the Application Object ----------
+static Command_Builder "Application -Init"
+
+### --- Create Supplier Admin 1 ----
+static Command_Builder "SupplierAdmin -Create sa_med ec1 -AND_OP"
+
+### --- Create Supplier s_med connected to sa_med -----
+static Command_Builder "PeriodicSupplier -Create s_med sa_med -Proxy s_med_proxy -EventType M -Priority 2 -Iter 5000 -Load 100 "
+
+##----------- Create an RT POA to host local consumer objects-----------
+static Command_Builder "POA -Create poa_1 -PriorityModel CLIENT 2 -ThreadPoolLanes 2 -Lane 0 1 0 -Lane 2 1 0"
+
+##--------- Consumer Admin 1 -------------
+static Command_Builder "ConsumerAdmin -Create ca_med ec1 -AND_OP"
+
+##--------- Consumer 1 , connected to CA 1 --------
+static Command_Builder "PeriodicConsumer -Create c_med ca_med -POA poa_1 -Proxy c_med_proxy -MaxCount 5000"
+static Command_Builder "PeriodicConsumer -Subscription c_med +M"
+
+##--------- Run -------------
+static Command_Builder "Application -WaitToStart"
+static Command_Builder "Application -SignalPeer"
+static Command_Builder "Application -Run"
+static Command_Builder "Application -WaitForEvents"
+static Command_Builder "Application -DumpStats"
+static Command_Builder "Application -Shutdown"
+
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/run_notify.pl b/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/run_notify.pl
new file mode 100644
index 00000000000..d1ec5af9134
--- /dev/null
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/run_notify.pl
@@ -0,0 +1,71 @@
+eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
+ & eval 'exec perl -S $0 $argv:q'
+ if 0;
+
+# $Id$
+# -*- perl -*-
+
+use lib "../../../../../../../bin";
+use PerlACE::Run_Test;
+
+$experiment_timeout = 600;
+$startup_timeout = 60;
+$notify_conf = PerlACE::LocalFile ("notify.conf");
+$notify_ior = PerlACE::LocalFile ("notify.ior");
+$naming_ior = PerlACE::LocalFile ("naming.ior");
+$setup_notify_conf = PerlACE::LocalFile ("setup_notify.conf");
+$status = 0;
+
+$Naming = new PerlACE::Process ("../../../../../Naming_Service/Naming_Service",
+ "-o $naming_ior");
+
+$Notification = new PerlACE::Process ("../../../../../Notify_Service/Notify_Service");
+
+$Notify_Args = "-ORBInitRef NameService=file://$naming_ior -IORoutput $notify_ior -ORBSvcConf $notify_conf";
+
+$Setup_notify = new PerlACE::Process ("../../../Driver/Notify_Tests_Driver");
+
+$Setup_notify_Args = "-ORBInitRef NameService=file://$naming_ior -ORBSvcConf $setup_notify_conf";
+
+unlink $naming_ior;
+$Naming->Spawn ();
+
+if (PerlACE::waitforfile_timed ($naming_ior, $startup_timeout) == -1) {
+ print STDERR "ERROR: waiting for the naming service to start\n";
+ $Naming->Kill ();
+ exit 1;
+}
+
+unlink $notify_ior;
+$Notification->Arguments ($Notify_Args);
+$args = $Notification->Arguments ();
+print STDERR "Running Notification with arguments: $args\n";
+$Notification->Spawn ();
+
+if (PerlACE::waitforfile_timed ($notify_ior, $startup_timeout) == -1) {
+ print STDERR "ERROR: waiting for the notify service to start\n";
+ $Notification->Kill ();
+ $Naming->Kill ();
+ exit 1;
+}
+
+$Setup_notify->Arguments ($Setup_notify_Args);
+$args = $Setup_notify->Arguments ();
+print STDERR "Running Setup_notify with arguments: $args\n";
+$status = $Setup_notify->SpawnWaitKill ($experiment_timeout);
+
+if ($status != 0)
+ {
+ print STDERR "ERROR: Setup_notify returned $status\n";
+ $Notification->Kill ();
+ $Naming->Kill ();
+ exit 1;
+ }
+
+$Notification->Kill ();
+unlink $notify_ior;
+
+$Naming->Kill ();
+unlink $naming_ior;
+
+exit $status;
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/run_path_high_prio.pl b/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/run_path_high_prio.pl
new file mode 100644
index 00000000000..9c5535b117d
--- /dev/null
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/run_path_high_prio.pl
@@ -0,0 +1,62 @@
+eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
+ & eval 'exec perl -S $0 $argv:q'
+ if 0;
+
+# $Id$
+# -*- perl -*-
+
+use lib "../../../../../../../bin";
+use PerlACE::Run_Test;
+
+$experiment_timeout = 600;
+$startup_timeout = 60;
+$notify_conf = PerlACE::LocalFile ("notify.conf");
+$notify_ior = PerlACE::LocalFile ("notify.ior");
+$naming_ior = PerlACE::LocalFile ("naming.ior");
+$path_high_prio_ior = PerlACE::LocalFile ("path_high_prio.ior");
+$path_low_prio_ior = PerlACE::LocalFile ("path_low_prio.ior");
+$path_high_prio_conf = PerlACE::LocalFile ("path_high_prio.conf");
+
+$status = 0;
+
+$Path_high_prio = new PerlACE::Process ("../../../Driver/Notify_Tests_Driver");
+
+$Path_high_prio_Args = "-ORBInitRef NameService=file://$naming_ior -IORinput file://$path_low_prio_ior -IORoutput $path_high_prio_ior -ORBSvcConf $path_high_prio_conf";
+
+if (PerlACE::waitforfile_timed ($naming_ior, $startup_timeout) == -1) {
+ print STDERR "ERROR: waiting for the naming service to start\n";
+ $Naming->Kill ();
+ exit 1;
+}
+
+if (PerlACE::waitforfile_timed ($notify_ior, $startup_timeout) == -1) {
+ print STDERR "ERROR: waiting for the notify service to start\n";
+ $Notification->Kill ();
+ $Naming->Kill ();
+ exit 1;
+}
+
+#if (PerlACE::waitforfile_timed ($path_low_prio_ior, $startup_timeout) == -1) {
+# print STDERR "ERROR: waiting for the Low Prio Path to start\n";
+# $Notification->Kill ();
+# $Naming->Kill ();
+# exit 1;
+#}
+
+unlink $path_high_prio_ior;
+$Path_high_prio->Arguments ($Path_high_prio_Args);
+$args = $Path_high_prio->Arguments ();
+print STDERR "Running Path_high_prio with arguments: $args\n";
+
+$status=$Path_high_prio->SpawnWaitKill ($experiment_timeout);
+
+if ($status != 0)
+ {
+ print STDERR "ERROR: High Prio Path test returned $status\n";
+ $Path_high_prio->Kill ();
+ exit 1;
+ }
+
+unlink $path_high_prio_ior;
+
+exit $status;
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/run_path_low_prio.pl b/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/run_path_low_prio.pl
new file mode 100644
index 00000000000..85aa727adaf
--- /dev/null
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/run_path_low_prio.pl
@@ -0,0 +1,62 @@
+eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
+ & eval 'exec perl -S $0 $argv:q'
+ if 0;
+
+# $Id$
+# -*- perl -*-
+
+use lib "../../../../../../../bin";
+use PerlACE::Run_Test;
+
+$experiment_timeout = 600;
+$startup_timeout = 60;
+$notify_conf = PerlACE::LocalFile ("notify.conf");
+$notify_ior = PerlACE::LocalFile ("notify.ior");
+$naming_ior = PerlACE::LocalFile ("naming.ior");
+$path_low_prio_ior = PerlACE::LocalFile ("path_low_prio.ior");
+$path_low_prio_conf = PerlACE::LocalFile ("path_low_prio.conf");
+$path_med_prio_ior = PerlACE::LocalFile ("path_med_prio.ior");
+
+$status = 0;
+
+$Path_low_prio = new PerlACE::Process ("../../../Driver/Notify_Tests_Driver");
+
+$Path_low_prio_Args = "-ORBInitRef NameService=file://$naming_ior -IORinput file://$path_med_prio_ior -IORoutput $path_low_prio_ior -ORBSvcConf $path_low_prio_conf";
+
+if (PerlACE::waitforfile_timed ($naming_ior, $startup_timeout) == -1) {
+ print STDERR "ERROR: waiting for the naming service to start\n";
+ $Naming->Kill ();
+ exit 1;
+}
+
+if (PerlACE::waitforfile_timed ($notify_ior, $startup_timeout) == -1) {
+ print STDERR "ERROR: waiting for the notify service to start\n";
+ $Notification->Kill ();
+ $Naming->Kill ();
+ exit 1;
+}
+
+#if (PerlACE::waitforfile_timed ($path_med_prio.ior, $startup_timeout) == -1) {
+# print STDERR "ERROR: waiting for the Med Prio Path to start\n";
+# $Notification->Kill ();
+# $Naming->Kill ();
+# exit 1;
+#}
+
+unlink $path_low_prio_ior;
+$Path_low_prio->Arguments ($Path_low_prio_Args);
+$args = $Path_low_prio->Arguments ();
+print STDERR "Running Path_low_prio with arguments: $args\n";
+
+$status=$Path_low_prio->SpawnWaitKill ($experiment_timeout);
+
+if ($status != 0)
+ {
+ print STDERR "ERROR: Low Prio Path test returned $status\n";
+ $Path_low_prio->Kill ();
+ exit 1;
+ }
+
+unlink $path_low_prio_ior;
+
+exit $status;
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/run_path_med_prio.pl b/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/run_path_med_prio.pl
new file mode 100644
index 00000000000..6b925040d30
--- /dev/null
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/run_path_med_prio.pl
@@ -0,0 +1,62 @@
+eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
+ & eval 'exec perl -S $0 $argv:q'
+ if 0;
+
+# $Id$
+# -*- perl -*-
+
+use lib "../../../../../../../bin";
+use PerlACE::Run_Test;
+
+$experiment_timeout = 600;
+$startup_timeout = 60;
+$notify_conf = PerlACE::LocalFile ("notify.conf");
+$notify_ior = PerlACE::LocalFile ("notify.ior");
+$naming_ior = PerlACE::LocalFile ("naming.ior");
+$path_med_prio_ior = PerlACE::LocalFile ("path_med_prio.ior");
+$path_med_prio_conf = PerlACE::LocalFile ("path_med_prio.conf");
+$path_high_prio_ior = PerlACE::LocalFile ("path_high_prio.ior");
+
+$status = 0;
+
+$Path_med_prio = new PerlACE::Process ("../../../Driver/Notify_Tests_Driver");
+
+$Path_med_prio_Args = "-ORBInitRef NameService=file://$naming_ior -IORinput file://$path_high_prio_ior -IORoutput $path_med_prio_ior -ORBSvcConf $path_med_prio_conf";
+
+if (PerlACE::waitforfile_timed ($naming_ior, $startup_timeout) == -1) {
+ print STDERR "ERROR: waiting for the naming service to start\n";
+ $Naming->Kill ();
+ exit 1;
+}
+
+if (PerlACE::waitforfile_timed ($notify_ior, $startup_timeout) == -1) {
+ print STDERR "ERROR: waiting for the notify service to start\n";
+ $Notification->Kill ();
+ $Naming->Kill ();
+ exit 1;
+}
+
+#if (PerlACE::waitforfile_timed ($path_high_prio_ior, $startup_timeout) == -1) {
+# print STDERR "ERROR: waiting for the High Prio Path to start\n";
+# $Notification->Kill ();
+# $Naming->Kill ();
+# exit 1;
+#}
+
+unlink $path_med_prio_ior;
+$Path_med_prio->Arguments ($Path_med_prio_Args);
+$args = $Path_med_prio->Arguments ();
+print STDERR "Running Path_med_prio with arguments: $args\n";
+
+$status=$Path_med_prio->SpawnWaitKill ($experiment_timeout);
+
+if ($status != 0)
+ {
+ print STDERR "ERROR: Med Prio Path test returned $status\n";
+ $Path_med_prio->Kill ();
+ exit 1;
+ }
+
+unlink $path_med_prio_ior;
+
+exit $status;
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/setup_notify.conf b/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/setup_notify.conf
new file mode 100644
index 00000000000..d1ce007caeb
--- /dev/null
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/setup_notify.conf
@@ -0,0 +1,19 @@
+## $Id$: supplier.conf,v 1.2 2003/04/03 20:36:20 pradeep Exp $
+
+##---- Load the Factories------
+dynamic TAO_RT_ORB_Loader Service_Object *TAO_RTCORBA:_make_TAO_RT_ORB_Loader () "-ORBSchedPolicy SCHED_FIFO -ORBScopePolicy PROCESS -ORBPriorityMapping continuous"
+
+dynamic TAO_NS_RT_Application_Command_Factory Service_Object * TAO_RT_NotifyTests:_make_TAO_NS_RT_Application_Command_Factory () ""
+##dynamic TAO_NS_Application_Command_Factory Service_Object * TAO_NotifyTests:_make_TAO_NS_Application_Command_Factory () ""
+dynamic TAO_NS_EventChannel_Command_Factory Service_Object *TAO_NotifyTests:_make_TAO_NS_EventChannel_Command_Factory () ""
+
+##------- Init the Application Object ----------
+static Command_Builder "Application -Init"
+
+##------- Create Event Channel ---------------
+static Command_Builder "EventChannel -Create ec1 NotifyEventChannelFactory"
+static Command_Builder "EventChannel -Set_QoS ec1 -ThreadPoolLanes 4 -Lane 0 1 0 -Lane 1 1 0 -Lane 2 1 0 -Lane 3 1 0"
+
+##--------- Run -------------
+static Command_Builder "Application -Run"
+
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/README b/TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/README
new file mode 100644
index 00000000000..96b9d8d9a2a
--- /dev/null
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/README
@@ -0,0 +1,41 @@
+RT Notification test to verify lane support
+===========================================
+This test makes sure that events are send according to the lanes
+configured on the evnt channel.
+
+Description:
+===========
+
+notify.conf:
+-----------
+The notify.conf file specifies the Test Filter Factory to be used by
+the RT Notification library.
+The Test Filter factory create special filter objects. these objects
+check if the correct lane is being used for invocations.
+
+
+supplier.conf:
+-------------
+
+An event channel is created with 4 lanes. The lowest priority lane (0 in
+continuous mapping) is used to handle the administrative invocations
+by the driver program. 3 other lanes are used to handle 3 different
+event flow "paths" in the event channel.
+
+3 Periodic suppliers are created. Each supplier is configured to
+operate in its lane.
+
+consumer.conf:
+------------
+
+An RT POA is created with 4 lanes (identical to the one setup on the
+eventchannel).
+
+3 Periodic consumers and created and activated in the local RT POA.
+
+Expected Result:
+==============
+if a request reaches a Lane that it was not supposed to, an
+error message is printed. otherwise some housekeeping messages are
+generated when the test runs.
+
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/consumer.conf b/TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/consumer.conf
new file mode 100644
index 00000000000..c1e0c5c3336
--- /dev/null
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/consumer.conf
@@ -0,0 +1,25 @@
+##---- Load the Factories------
+## dynamic TAO_RT_ORB_Loader Service_Object * TAO_RTCORBA:_make_TAO_RT_ORB_Loader () "-ORBSchedPolicy SCHED_FIFO -ORBScopePolicy PROCESS -ORBPriorityMapping continuous"
+
+##dynamic TAO_NS_RT_Application_Command_Factory Service_Object * TAO_RT_NotifyTests:_make_TAO_NS_RT_Application_Command_Factory () ""
+dynamic TAO_NS_Application_Command_Factory Service_Object * TAO_NotifyTests:_make_TAO_NS_Application_Command_Factory () ""
+dynamic TAO_NS_ConsumerAdmin_Command_Factory Service_Object *TAO_NotifyTests:_make_TAO_NS_ConsumerAdmin_Command_Factory () ""
+
+dynamic TAO_NS_Periodic_Consumer_Command_Factory Service_Object* TAO_NotifyTests:_make_TAO_NS_Periodic_Consumer_Command_Factory () ""
+
+##------- Init the Application Object ----------
+static Command_Builder "Application -Init"
+
+##--------- Consumer Admin 1 -------------
+static Command_Builder "ConsumerAdmin -Create ca1 ec1 -AND_OP"
+
+##--------- Consumer 1 , connected to CA 1 --------
+static Command_Builder "PeriodicConsumer -Create c1 ca1 -Proxy c1_proxy -MaxCount 500 "
+static Command_Builder "PeriodicConsumer -Subscription c1 +ST"
+
+##------- Run---------
+static Command_Builder "Application -SignalPeer"
+static Command_Builder "Application -Run"
+static Command_Builder "Application -WaitForEvents"
+static Command_Builder "Application -DumpStats"
+static Command_Builder "Application -Shutdown"
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/notify.conf b/TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/notify.conf
new file mode 100644
index 00000000000..87f08d97596
--- /dev/null
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/notify.conf
@@ -0,0 +1,6 @@
+##dynamic TAO_RT_ORB_Loader Service_Object *TAO_RTCORBA:_make_TAO_RT_ORB_Loader () "-ORBSchedPolicy SCHED_FIFO -ORBScopePolicy PROCESS -ORBPriorityMapping continuous"
+
+##dynamic TAO_NS_FilterFactory Service_Object* TAO_RT_NotifyTests_Filter:_make_TAO_NS_RT_Test_FilterFactory () ""
+
+dynamic TAO_Notify_Service Service_Object * TAO_CosNotification:_make_TAO_CosNotify_Service () ""
+
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/run_test.pl b/TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/run_test.pl
new file mode 100644
index 00000000000..748aad907aa
--- /dev/null
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/run_test.pl
@@ -0,0 +1,95 @@
+eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
+ & eval 'exec perl -S $0 $argv:q'
+ if 0;
+
+# $Id$
+# -*- perl -*-
+
+use lib "../../../../../../bin";
+use PerlACE::Run_Test;
+
+$experiment_timeout = 60;
+$startup_timeout = 60;
+$notify_conf = PerlACE::LocalFile ("notify.conf");
+$notify_ior = PerlACE::LocalFile ("notify.ior");
+$naming_ior = PerlACE::LocalFile ("naming.ior");
+$supplier_ior = PerlACE::LocalFile ("supplier.ior");
+$supplier_conf = PerlACE::LocalFile ("supplier.conf");
+$consumer_conf = PerlACE::LocalFile ("consumer.conf");
+$status = 0;
+
+$Naming = new PerlACE::Process ("../../../../Naming_Service/Naming_Service",
+ "-o $naming_ior");
+
+$Notification = new PerlACE::Process ("../../../../Notify_Service/Notify_Service");
+
+$Notify_Args = "-ORBInitRef NameService=file://$naming_ior -IORoutput $notify_ior -ORBSvcConf $notify_conf";
+
+$Supplier = new PerlACE::Process ("../../Driver/Notify_Tests_Driver");
+
+$Supplier_Args = "-ORBInitRef NameService=file://$naming_ior -IORoutput $supplier_ior -ORBSvcConf $supplier_conf";
+
+$Consumer = new PerlACE::Process ("../../Driver/Notify_Tests_Driver");
+
+$Consumer_Args = "-ORBInitRef NameService=file://$naming_ior -IORinput file://$supplier_ior -ORBSvcConf $consumer_conf";
+
+unlink $naming_ior;
+$Naming->Spawn ();
+
+if (PerlACE::waitforfile_timed ($naming_ior, $startup_timeout) == -1) {
+ print STDERR "ERROR: waiting for the naming service to start\n";
+ $Naming->Kill ();
+ exit 1;
+}
+
+unlink $notify_ior;
+$Notification->Arguments ($Notify_Args);
+$args = $Notification->Arguments ();
+print STDERR "Running Notification with arguments: $args\n";
+$Notification->Spawn ();
+
+if (PerlACE::waitforfile_timed ($notify_ior, $startup_timeout) == -1) {
+ print STDERR "ERROR: waiting for the notify service to start\n";
+ $Notification->Kill ();
+ $Naming->Kill ();
+ exit 1;
+}
+
+unlink $supplier_ior;
+$Supplier->Arguments ($Supplier_Args);
+$args = $Supplier->Arguments ();
+print STDERR "Running Supplier with arguments: $args\n";
+$Supplier->Spawn ();
+
+if (PerlACE::waitforfile_timed ($supplier_ior, $startup_timeout) == -1) {
+ print STDERR "ERROR: waiting for the supplier to start\n";
+ $Supplier->Kill ();
+ $Notification->Kill ();
+ $Naming->Kill ();
+ exit 1;
+}
+
+$Consumer->Arguments ($Consumer_Args);
+$args = $Consumer->Arguments ();
+print STDERR "Running Consumer with arguments: $args\n";
+$status = $Consumer->SpawnWaitKill ($experiment_timeout);
+
+if ($status != 0)
+ {
+ print STDERR "ERROR: Consumer returned $status\n";
+ $Supplier->Kill ();
+ $Notification->Kill ();
+ $Naming->Kill ();
+ exit 1;
+ }
+
+$Supplier->Kill ();
+unlink $supplier_ior;
+
+$Notification->Kill ();
+unlink $notify_ior;
+
+$Naming->Kill ();
+unlink $naming_ior;
+
+exit $status;
diff --git a/TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/supplier.conf b/TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/supplier.conf
new file mode 100644
index 00000000000..de2a536f783
--- /dev/null
+++ b/TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/supplier.conf
@@ -0,0 +1,29 @@
+
+##---- Load the Factories------
+
+##dynamic TAO_NS_RT_Application_Command_Factory Service_Object * TAO_RT_NotifyTests:_make_TAO_NS_RT_Application_Command_Factory () ""
+dynamic TAO_NS_Application_Command_Factory Service_Object * TAO_NotifyTests:_make_TAO_NS_Application_Command_Factory () ""
+dynamic TAO_NS_EventChannel_Command_Factory Service_Object *TAO_NotifyTests:_make_TAO_NS_EventChannel_Command_Factory () ""
+dynamic TAO_NS_SupplierAdmin_Command_Factory Service_Object* TAO_NotifyTests:_make_TAO_NS_SupplierAdmin_Command_Factory () ""
+
+dynamic TAO_NS_Periodic_Supplier_Command_Factory Service_Object* TAO_NotifyTests:_make_TAO_NS_Periodic_Supplier_Command_Factory () ""
+
+##------- Init the Application Object ----------
+static Command_Builder "Application -Init"
+
+##------- Create Event Channel ---------------
+static Command_Builder "EventChannel -Create ec1 NotifyEventChannelFactory"
+
+
+### --- Create Supplier Admin 1 ----
+static Command_Builder "SupplierAdmin -Create sa1 ec1 -AND_OP"
+
+### --- Create Supplier s1 connected to sa1. -----
+static Command_Builder "PeriodicSupplier -Create s1 sa1 -Proxy s1_proxy -EventType ST -Iter 500 -Load 0 "
+
+##--------- Run -------------
+static Command_Builder "Application -WaitToStart"
+static Command_Builder "Application -Run"
+static Command_Builder "Application -WaitForEvents"
+static Command_Builder "Application -DumpStats"
+static Command_Builder "Application -Shutdown"