diff options
Diffstat (limited to 'modules/CIAO/performance-tests/Benchmark/descriptors')
12 files changed, 485 insertions, 0 deletions
diff --git a/modules/CIAO/performance-tests/Benchmark/descriptors/Benchmark.cad b/modules/CIAO/performance-tests/Benchmark/descriptors/Benchmark.cad new file mode 100644 index 00000000000..6ab0dd70aa0 --- /dev/null +++ b/modules/CIAO/performance-tests/Benchmark/descriptors/Benchmark.cad @@ -0,0 +1,34 @@ +<?xml version="1.0"?> <!-- -*- SGML -*- --> + +<!-- If this file is moved to a different directory, make sure to change the + path to the DTD below. Otherwise the examples won't work. --> +<!DOCTYPE componentassembly SYSTEM "http://www.dre.vanderbilt.edu/CIAO/DTD/componentassembly.dtd"> + +<componentassembly id="Single-process Basic assembly"> + <componentfiles> + <componentfile id="com-RoundTrip"> + <fileinarchive name="RoundTrip.csd"/> + </componentfile> + </componentfiles> + + <partitioning> + + <!-- A plain vanilla partition. We don't even need the processcollocation tag here. --> + <homeplacement id="a_RoundTripHome"> + <componentfileref idref="com-RoundTrip"/> + <componentinstantiation id="a_RoundTrip"> + <registercomponent> + <!-- writeiortofile is a non-standard CIAO extension. --> + <writeiortofile name="test.ior"/> + </registercomponent> + </componentinstantiation> + </homeplacement> + + </partitioning> + + <!-- + <connections> + </connections> + --> + +</componentassembly> diff --git a/modules/CIAO/performance-tests/Benchmark/descriptors/CIAO_Installation_Data.ini b/modules/CIAO/performance-tests/Benchmark/descriptors/CIAO_Installation_Data.ini new file mode 100644 index 00000000000..ffe36ca3422 --- /dev/null +++ b/modules/CIAO/performance-tests/Benchmark/descriptors/CIAO_Installation_Data.ini @@ -0,0 +1,5 @@ +[ComponentInstallation] +DCE:cf88cb97-b5a8-4522-9fa3-e626c75c5470=RoundTripClient_svnt +DCE:568a3872-f7bb-4b3f-baba-44c6824d966d=RoundTripClient_exec +DCE:2498aa68-09aa-478c-8ae1-30ed67924f82=RoundTrip_exec +DCE:88c14bff-5158-4f48-9b22-8a1120e87f76=RoundTrip_svnt diff --git a/modules/CIAO/performance-tests/Benchmark/descriptors/Multi_Threaded.cad b/modules/CIAO/performance-tests/Benchmark/descriptors/Multi_Threaded.cad new file mode 100644 index 00000000000..0c0be0cb71c --- /dev/null +++ b/modules/CIAO/performance-tests/Benchmark/descriptors/Multi_Threaded.cad @@ -0,0 +1,112 @@ +<?xml version="1.0"?> <!-- -*- SGML -*- --> + +<!-- If this file is moved to a different directory, make sure to change the + path to the DTD below. Otherwise the examples won't work. --> +<!DOCTYPE componentassembly SYSTEM "http://www.dre.vanderbilt.edu/CIAO/DTD/componentassembly.dtd"> +<componentassembly id="Multi-client Component Scalability test"> + <componentfiles> + <componentfile id="com-RoundTrip"> + <fileinarchive name="RoundTrip.csd"/> + </componentfile> + <componentfile id="com-RoundTripClient"> + <fileinarchive name="RoundTripClient.csd"/> + </componentfile> + </componentfiles> + + <partitioning> + + <homeplacement id="a_RoundTripHome"> + <componentfileref idref="com-RoundTrip"/> + <componentinstantiation id="a_RoundTrip"/> + </homeplacement> + + <processcollocation> + <homeplacement id="a_RoundTripClientHome"> + <componentfileref idref="com-RoundTripClient"/> + <componentinstantiation id="a_RoundTripClient"> + <registercomponent> + <writeiortofile name="comp1.ior"/> + </registercomponent> + </componentinstantiation> + </homeplacement> + + + <homeplacement id="b_RoundTripClientHome"> + <componentfileref idref="com-RoundTripClient"/> + <componentinstantiation id="b_RoundTripClient"> + <registercomponent> + <writeiortofile name="comp2.ior"/> + </registercomponent> + </componentinstantiation> + </homeplacement> + + <homeplacement id="c_RoundTripClientHome"> + <componentfileref idref="com-RoundTripClient"/> + <componentinstantiation id="c_RoundTripClient"> + <registercomponent> + <writeiortofile name="comp3.ior"/> + </registercomponent> + </componentinstantiation> + </homeplacement> + + + <homeplacement id="d_RoundTripClientHome"> + <componentfileref idref="com-RoundTripClient"/> + <componentinstantiation id="d_RoundTripClient"> + <registercomponent> + <writeiortofile name="comp4.ior"/> + </registercomponent> + </componentinstantiation> + </homeplacement> + <destination>Remote</destination> + </processcollocation> + + </partitioning> + + + <connections> + <connectinterface> + <usesport> + <usesidentifier>latency</usesidentifier> + <componentinstantiationref idref="a_RoundTripClient"/> + </usesport> + <providesport> + <providesidentifier>latency</providesidentifier> + <componentinstantiationref idref="a_RoundTrip"/> + </providesport> + </connectinterface> + + <connectinterface> + <usesport> + <usesidentifier>latency</usesidentifier> + <componentinstantiationref idref="b_RoundTripClient"/> + </usesport> + <providesport> + <providesidentifier>latency</providesidentifier> + <componentinstantiationref idref="a_RoundTrip"/> + </providesport> + </connectinterface> + + <connectinterface> + <usesport> + <usesidentifier>latency</usesidentifier> + <componentinstantiationref idref="c_RoundTripClient"/> + </usesport> + <providesport> + <providesidentifier>latency</providesidentifier> + <componentinstantiationref idref="a_RoundTrip"/> + </providesport> + </connectinterface> + + <connectinterface> + <usesport> + <usesidentifier>latency</usesidentifier> + <componentinstantiationref idref="d_RoundTripClient"/> + </usesport> + <providesport> + <providesidentifier>latency</providesidentifier> + <componentinstantiationref idref="a_RoundTrip"/> + </providesport> + </connectinterface> + </connections> +</componentassembly> diff --git a/modules/CIAO/performance-tests/Benchmark/descriptors/NOTE.txt b/modules/CIAO/performance-tests/Benchmark/descriptors/NOTE.txt new file mode 100644 index 00000000000..7bcd2fbfade --- /dev/null +++ b/modules/CIAO/performance-tests/Benchmark/descriptors/NOTE.txt @@ -0,0 +1,65 @@ +This directory contains various XML descriptors and configuration +files required to run benchmarking experiments using CIAO in +different ways. Let's go over a few important files first: + +test.dat: +--------- + + This file describes the deployment daemons CIAO's Assembly_Manager + will contact to instantiate ComponentServer's, home's, and component + instances. Each line specify the name of a installation + "destination" (I used this to specify <processcollocation> + destination in various *.cad files) and the corresponding IOR for + the CIAO_Daemon. The first entry is the "default" destination the + deployment framework will use. + + For example, test.dat now contains: + + Default corbaloc:iiop:localhost:10000/ServerActivator + Remote corbaloc:iiop:localhost:12000/ServerActivator + + You can copy and modify the copy to deploy the components in various + different locations to let the application truely "distributed". + For example, changing the remote ServerActivator to: + corbaloc:iiop:deuce.doc.wustl.edu:13000/ServerActivator + + Remember to start up the Assembly_Manager in Step 2 using the + revised "test.dat" you created, and start up the CIAO_Daemon's in + Step 1 according to the specification. + +*.cad: +------ + + These files specify how an application should be composed. The + specification includes, where to install a component, what + implementation to use, and how to connect components together. + Currently, we have: + + Benchmark.cad: Plain vanilla assembly descriptor. This file installs + the RoundTrip component on the location given in test.dat. + RoundTripClient.cad : A descriptor file for the client component + RoundTripClient that uses the interface provided by + RoundTrip. + Test-IOR.cad: This cad file should be used to for testing a CORBA server + with a CIAO client. The IOR of the server should added in + this file. + +There are automated perl scripts that can run the tests to generate the +required results. These are located in the individual component directories +Round Trip and RoundTripClient. The descriptors directory has the required +.cad files that specify the component configuration used in the various +experiments. + +To run a simple CORBA component with a normal client: + cd descriptors; + ../Roundtrip/run_test.pl + + cd descritors; + ../RoundTripClient/run_test.pl + Script that runs two components one acts as a client and the other as the + server. Statistics are printed for RoundTrip latency jitter etc + + cd descritors; + ../RoundTripClient/run_test_ior_cad.pl + Script runs a CORBA server and a CIAO component that acts as a client. + Similar statistics are printed. diff --git a/modules/CIAO/performance-tests/Benchmark/descriptors/RoundTrip.csd b/modules/CIAO/performance-tests/Benchmark/descriptors/RoundTrip.csd new file mode 100644 index 00000000000..ebf8c4e1e15 --- /dev/null +++ b/modules/CIAO/performance-tests/Benchmark/descriptors/RoundTrip.csd @@ -0,0 +1,46 @@ +<?xml version="1.0"?> <!-- -*- SGML -*- --> + +<!-- If this file is moved to a different directory, make sure to change the + path to the DTD below. Otherwise the examples won't work. --> + +<!DOCTYPE softpkg SYSTEM "http://www.dre.vanderbilt.edu/CIAO/DTD/softpkg.dtd"> + +<!-- RoundTrip's Software Package Descriptor --> +<!-- This file describes various RoundTrip executor --> +<!-- implementations. --> + +<softpkg name="CIAO-TEST" version="1.0"> + <pkgtype>CORBA Component</pkgtype> + <title>RoundTrip</title> + <author> + <company>ISIS at Vanderbilt University</company> + <webpage href="http://www.dre.vanderbilt.edu/"/> + </author> + <description>A RoundTrip component.</description> + <license href="http://www.cs.wustl.edu/~schmidt/ACE-copying.html"/> + <idl id="IDL:Benchmark/RoundTrip:1.0" homeid="IDL:Benchmark/RoundTripHome:1.0"> + <fileinarchive name="RoundTrip.idl"/> + </idl> + <descriptor type="CORBA Component"> + <fileinarchive name="RoundTrip.ccd"/> + </descriptor> + <implementation id="DCE:2498aa68-09aa-478c-8ae1-30ed67924f82"> + + <!-- CIAO extension --> + <dependency type="CIAODLL"> + <softpkgref> + <!-- .ssd stands for Servant Software Descriptors which is a CIAO extension --> + <fileinarchive name="RoundTrip.ssd"/> + <implref idref="DCE:88c14bff-5158-4f48-9b22-8a1120e87f76"/> + </softpkgref> + </dependency> + + <code type="DLL"> + <!-- No need to specify extension below since ACE takes care of that, --> + <fileinarchive name="RoundTrip_exec"/> + <entrypoint>createRoundTripHome_Impl</entrypoint> + </code> + + </implementation> + +</softpkg> diff --git a/modules/CIAO/performance-tests/Benchmark/descriptors/RoundTrip.ssd b/modules/CIAO/performance-tests/Benchmark/descriptors/RoundTrip.ssd new file mode 100644 index 00000000000..b9720b9f2f1 --- /dev/null +++ b/modules/CIAO/performance-tests/Benchmark/descriptors/RoundTrip.ssd @@ -0,0 +1,43 @@ +<?xml version="1.0"?> <!-- -*- SGML -*- --> + +<!-- If this file is moved to a different directory, make sure to change the + path to the DTD below. Otherwise the examples won't work. --> + +<!DOCTYPE softpkg SYSTEM "http://www.dre.vanderbilt.edu/CIAO/DTD/softpkg.dtd"> + +<!-- RoundTrip's Servant Software Descriptor --> +<!-- This file describes various RoundTrip servant --> +<!-- implementations. --> + +<softpkg name="CIAO-RoundTrip-Servant" version="1.0"> + <pkgtype>CIAO Servant</pkgtype> + <title>Benchmark::RoundTrip Servants</title> + <author> + <company>ISIS at Vanderbilt University</company> + <webpage href="http://www.dre.vanderbilt.edu/"/> + </author> + <description>Single-Threaded Latency test component for benchmarking.</description> + <license href="http://www.cs.wustl.edu/~schmidt/ACE-copying.html"/> + <idl id="IDL:Benchmark/RoundTrip:1.0" homeid="IDL:Benchmark/RoundTripHome:1.0"> + <fileinarchive name="RoundTrip.idl"/> + </idl> + + <descriptor type="CORBA Component"> + <fileinarchive name="RoundTrip.ccd"/> + </descriptor> + + <implementation id="DCE:88c14bff-5158-4f48-9b22-8a1120e87f76"> + + <dependency type="ORB"> + <name>TAO</name> + </dependency> + + <code> + <!-- No need to specify extension below since ACE takes care of that, --> + <fileinarchive name="RoundTrip_svnt"/> + <entrypoint>createRoundTripHome_Servant</entrypoint> + </code> + + </implementation> + +</softpkg> diff --git a/modules/CIAO/performance-tests/Benchmark/descriptors/RoundTripClient.cad b/modules/CIAO/performance-tests/Benchmark/descriptors/RoundTripClient.cad new file mode 100644 index 00000000000..d53416195a2 --- /dev/null +++ b/modules/CIAO/performance-tests/Benchmark/descriptors/RoundTripClient.cad @@ -0,0 +1,49 @@ +<?xml version="1.0"?> <!-- -*- SGML -*- --> + +<!-- If this file is moved to a different directory, make sure to change the + path to the DTD below. Otherwise the examples won't work. --> +<!DOCTYPE componentassembly SYSTEM "http://www.dre.vanderbilt.edu/CIAO/DTD/componentassembly.dtd"> +<componentassembly id="Collocated Round-Trip test"> + <componentfiles> + <componentfile id="com-RoundTrip"> + <fileinarchive name="RoundTrip.csd"/> + </componentfile> + <componentfile id="com-RoundTripClient"> + <fileinarchive name="RoundTripClient.csd"/> + </componentfile> + </componentfiles> + + <partitioning> + +<homeplacement id="a_RoundTripHome"> + <componentfileref idref="com-RoundTrip"/> + <componentinstantiation id="a_RoundTrip"/> + </homeplacement> + +<homeplacement id="a_RoundTripClientHome"> + <componentfileref idref="com-RoundTripClient"/> + <componentinstantiation id="a_RoundTripClient"> + <registercomponent> + <!-- writeiortofile is a non-standard CIAO extension. --> + <writeiortofile name="test.ior"/> + </registercomponent> + </componentinstantiation> + </homeplacement> + <!-- A plain vanilla partition. We don't even need the processcollocation tag here. --> + + </partitioning> + + <connections> + <connectinterface> + <usesport> + <usesidentifier>latency</usesidentifier> + <componentinstantiationref idref="a_RoundTripClient"/> + </usesport> + <providesport> + <providesidentifier>latency</providesidentifier> + <componentinstantiationref idref="a_RoundTrip"/> + </providesport> + </connectinterface> + </connections> + +</componentassembly> diff --git a/modules/CIAO/performance-tests/Benchmark/descriptors/RoundTripClient.csd b/modules/CIAO/performance-tests/Benchmark/descriptors/RoundTripClient.csd new file mode 100644 index 00000000000..c52288e3207 --- /dev/null +++ b/modules/CIAO/performance-tests/Benchmark/descriptors/RoundTripClient.csd @@ -0,0 +1,44 @@ +<?xml version="1.0"?> <!-- -*- SGML -*- --> + +<!-- If this file is moved to a different directory, make sure to change the + path to the DTD below. Otherwise the examples won't work. --> +<!DOCTYPE softpkg SYSTEM "http://www.dre.vanderbilt.edu/CIAO/DTD/softpkg.dtd"> +<!-- RoundTripClient's Software Package Descriptor --> +<!-- This file describes various RoundTripClient executor --> +<!-- implementations. --> + + +<softpkg name="CIAO-TEST" version="1.0"> + <pkgtype>CORBA Component</pkgtype> + <title>RoundTripClient</title> + <author> + <company>ISIS at Vanderbilt University</company> + <webpage href="http://www.dre.vanderbilt.edu/"/> + </author> + <description>A RoundTripClient component.</description> + <license href="http://www.cs.wustl.edu/~schmidt/ACE-copying.html"/> + <idl id="IDL:Benchmark/RoundTripClient:1.0" homeid="IDL:Benchmark/RoundTripClientHome:1.0"> + <fileinarchive name="RoundTripClient.idl"/> + </idl> + <descriptor type="CORBA Component"> + <fileinarchive name="RoundTripClient.ccd"/> + </descriptor> + <implementation id="DCE:568a3872-f7bb-4b3f-baba-44c6824d966d"> + + <!-- CIAO extension --> + <dependency type="CIAODLL"> + <softpkgref> + <!-- .ssd stands for Servant Software Descriptors which is a CIAO extension --> + <fileinarchive name="RoundTripClient.ssd"/> + <implref idref="DCE:cf88cb97-b5a8-4522-9fa3-e626c75c5470"/> + </softpkgref> + </dependency> + + <code type="DLL"> + <!-- No need to specify extension below since ACE takes care of that, --> + <fileinarchive name="RoundTripClient_exec"/> + <entrypoint>createRoundTripClientHome_Impl</entrypoint> + </code> + </implementation> + +</softpkg> diff --git a/modules/CIAO/performance-tests/Benchmark/descriptors/RoundTripClient.ssd b/modules/CIAO/performance-tests/Benchmark/descriptors/RoundTripClient.ssd new file mode 100644 index 00000000000..86397731ed2 --- /dev/null +++ b/modules/CIAO/performance-tests/Benchmark/descriptors/RoundTripClient.ssd @@ -0,0 +1,39 @@ +<?xml version="1.0"?> <!-- -*- SGML -*- --> + +<!-- If this file is moved to a different directory, make sure to change the + path to the DTD below. Otherwise the examples won't work. --> +<!DOCTYPE softpkg SYSTEM "http://www.dre.vanderbilt.edu/CIAO/DTD/softpkg.dtd"> +<!-- RoundTripClient's Servant Software Descriptor --> +<!-- This file describes various RoundTripClient servant --> +<!-- implementations. --> + +<softpkg name="CIAO-RoundTripClient-Servant" version="1.0"> + <pkgtype>CIAO Servant</pkgtype> + <title>Benchmark::RoundTripClient Servants</title> + <author> + <company>ISIS at Vanderbilt University</company> + <webpage href="http://www.dre.vanderbilt.edu/"/> + </author> + <description>Single-Threaded Latency test component for benchmarking.</description> + <license href="http://www.cs.wustl.edu/~schmidt/ACE-copying.html"/> + <idl id="IDL:Benchmark/RoundTripClient:1.0" homeid="IDL:Benchmark/RoundTripClientHome:1.0"> + <fileinarchive name="RoundTripClient.idl"/> + </idl> + + <descriptor type="CORBA Component"> + <fileinarchive name="RoundTripClient.ccd"/> + </descriptor> + + <implementation id="DCE:cf88cb97-b5a8-4522-9fa3-e626c75c5470"> + + <dependency type="ORB"> + <name>TAO</name> + </dependency> + + <code> + <!-- No need to specify extension below since ACE takes care of that, --> + <fileinarchive name="RoundTripClient_svnt"/> + <entrypoint>createRoundTripClientHome_Servant</entrypoint> + </code> + </implementation> +</softpkg> diff --git a/modules/CIAO/performance-tests/Benchmark/descriptors/Test-IOR.cad b/modules/CIAO/performance-tests/Benchmark/descriptors/Test-IOR.cad new file mode 100644 index 00000000000..a917affec85 --- /dev/null +++ b/modules/CIAO/performance-tests/Benchmark/descriptors/Test-IOR.cad @@ -0,0 +1,41 @@ +<?xml version="1.0"?> <!-- -*- SGML -*- --> + +<!-- If this file is moved to a different directory, make sure to change the + path to the DTD below. Otherwise the examples won't work. --> +<!DOCTYPE componentassembly SYSTEM "http://www.dre.vanderbilt.edu/CIAO/DTD/componentassembly.dtd"> + +<componentassembly id="Single-process Basic assembly"> + <componentfiles> + <componentfile id="com-RoundTripClient"> + <fileinarchive name="RoundTripClient.csd"/> + </componentfile> + </componentfiles> + + <partitioning> + <homeplacement id="a_RoundTripClientHome"> + <componentfileref idref="com-RoundTripClient"/> + <componentinstantiation id="a_RoundTripClient"> + <registercomponent> + <!-- writeiortofile is a non-standard CIAO extension. --> + <writeiortofile name="test.ior"/> + </registercomponent> + </componentinstantiation> + </homeplacement> + </partitioning> + +<connections> + <connectinterface> + <usesport> + <usesidentifier>latency</usesidentifier> + <componentinstantiationref idref="a_RoundTripClient"/> + </usesport> + <existinginterface> + <findby> + <!-- One needs to add the correct IOR of the server here --> + <stringifiedobjectref>file://rtserver.ior</stringifiedobjectref> + </findby> + </existinginterface> + </connectinterface> +</connections> + +</componentassembly> diff --git a/modules/CIAO/performance-tests/Benchmark/descriptors/test-multi-process.dat b/modules/CIAO/performance-tests/Benchmark/descriptors/test-multi-process.dat new file mode 100644 index 00000000000..1570574903b --- /dev/null +++ b/modules/CIAO/performance-tests/Benchmark/descriptors/test-multi-process.dat @@ -0,0 +1,5 @@ +Default corbaloc:iiop:localhost:10000/ServerActivator +Remote1 corbaloc:iiop:localhost:12000/ServerActivator +Remote2 corbaloc:iiop:localhost:13000/ServerActivator +Remote3 corbaloc:iiop:localhost:14000/ServerActivator +Remote4 corbaloc:iiop:localhost:15000/ServerActivator
\ No newline at end of file diff --git a/modules/CIAO/performance-tests/Benchmark/descriptors/test.dat b/modules/CIAO/performance-tests/Benchmark/descriptors/test.dat new file mode 100644 index 00000000000..d26b3d4e070 --- /dev/null +++ b/modules/CIAO/performance-tests/Benchmark/descriptors/test.dat @@ -0,0 +1,2 @@ +Default corbaloc:iiop:localhost:10000/ServerActivator +Remote corbaloc:iiop:localhost:12000/ServerActivator
\ No newline at end of file |