From 34f66769bf55173aa3bba9ee5dbfd2626e7bedef Mon Sep 17 00:00:00 2001 From: pradeep Date: Fri, 25 Apr 2003 21:24:03 +0000 Subject: *** empty log message *** --- .../Priority/Multiple_Hosts/README | 25 ++++++ .../Priority/Multiple_Hosts/notify.conf | 4 + .../Priority/Multiple_Hosts/path_high_prio.conf | 48 +++++++++++ .../Priority/Multiple_Hosts/path_low_prio.conf | 48 +++++++++++ .../Priority/Multiple_Hosts/path_med_prio.conf | 48 +++++++++++ .../Priority/Multiple_Hosts/run_notify.pl | 71 ++++++++++++++++ .../Priority/Multiple_Hosts/run_path_high_prio.pl | 62 ++++++++++++++ .../Priority/Multiple_Hosts/run_path_low_prio.pl | 62 ++++++++++++++ .../Priority/Multiple_Hosts/run_path_med_prio.pl | 62 ++++++++++++++ .../Priority/Multiple_Hosts/setup_notify.conf | 19 +++++ .../Notify/performance-tests/ST_Throughput/README | 41 ++++++++++ .../performance-tests/ST_Throughput/consumer.conf | 25 ++++++ .../performance-tests/ST_Throughput/notify.conf | 6 ++ .../performance-tests/ST_Throughput/run_test.pl | 95 ++++++++++++++++++++++ .../performance-tests/ST_Throughput/supplier.conf | 29 +++++++ 15 files changed, 645 insertions(+) create mode 100644 TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/README create mode 100644 TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/notify.conf create mode 100644 TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/path_high_prio.conf create mode 100644 TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/path_low_prio.conf create mode 100644 TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/path_med_prio.conf create mode 100644 TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/run_notify.pl create mode 100644 TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/run_path_high_prio.pl create mode 100644 TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/run_path_low_prio.pl create mode 100644 TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/run_path_med_prio.pl create mode 100644 TAO/orbsvcs/tests/Notify/performance-tests/Priority/Multiple_Hosts/setup_notify.conf create mode 100644 TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/README create mode 100644 TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/consumer.conf create mode 100644 TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/notify.conf create mode 100644 TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/run_test.pl create mode 100644 TAO/orbsvcs/tests/Notify/performance-tests/ST_Throughput/supplier.conf 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" -- cgit v1.2.1