XBT_INFO("Activity '%s' is complete", comm->get_cname());
});
- // Create a small DAG: parent->transfert->child
- sg4::ExecPtr parent = sg4::Exec::init();
- sg4::CommPtr transfert = sg4::Comm::sendto_init();
- sg4::ExecPtr child = sg4::Exec::init();
- parent->add_successor(transfert);
- transfert->add_successor(child);
+ // Create a small DAG: parent->transfer->child
+ sg4::ExecPtr parent = sg4::Exec::init();
+ sg4::CommPtr transfer = sg4::Comm::sendto_init();
+ sg4::ExecPtr child = sg4::Exec::init();
+ parent->add_successor(transfer);
+ transfer->add_successor(child);
// Set the parameters (the name is for logging purposes only)
// + parent and child end after 1 second
parent->set_name("parent")->set_flops_amount(tremblay->get_speed())->vetoable_start();
- transfert->set_name("transfert")->set_payload_size(125e6)->vetoable_start();
+ transfer->set_name("transfer")->set_payload_size(125e6)->vetoable_start();
child->set_name("child")->set_flops_amount(jupiter->get_speed())->vetoable_start();
// Schedule the different activities
parent->set_host(tremblay);
- transfert->set_source(tremblay);
+ transfer->set_source(tremblay);
child->set_host(jupiter);
- transfert->set_destination(jupiter);
+ transfer->set_destination(jupiter);
e.run();
$ ${bindir:=.}/s4u-dag-comm ${platfdir}/two_hosts.xml --log=s4u_activity.t:verbose "--log=root.fmt:[%10.6r]%e(%i:%a@%h)%e%m%n"
> [ 0.000000] (0:maestro@) Activity 'parent' vetoed. Dependencies: solved; Ressources: NOT assigned
-> [ 0.000000] (0:maestro@) Activity 'transfert' vetoed. Dependencies: NOT solved; Ressources: NOT assigned
+> [ 0.000000] (0:maestro@) Activity 'transfer' vetoed. Dependencies: NOT solved; Ressources: NOT assigned
> [ 0.000000] (0:maestro@) Activity 'child' vetoed. Dependencies: NOT solved; Ressources: NOT assigned
> [ 0.000000] (0:maestro@) 'parent' is assigned to a resource and all dependencies are solved. Let's start
-> [ 0.000000] (0:maestro@) Activity 'transfert' vetoed. Dependencies: NOT solved; Ressources: NOT assigned
+> [ 0.000000] (0:maestro@) Activity 'transfer' vetoed. Dependencies: NOT solved; Ressources: NOT assigned
> [ 0.000000] (0:maestro@) Activity 'child' vetoed. Dependencies: NOT solved; Ressources: assigned
-> [ 0.000000] (0:maestro@) Activity 'transfert' vetoed. Dependencies: NOT solved; Ressources: assigned
+> [ 0.000000] (0:maestro@) Activity 'transfer' vetoed. Dependencies: NOT solved; Ressources: assigned
> [ 1.000000] (0:maestro@) Activity 'parent' is complete (start time: 0.000000, finish time: 1.000000)
-> [ 1.000000] (0:maestro@) Remove a dependency from 'parent' on 'transfert'
-> [ 1.000000] (0:maestro@) 'transfert' is assigned to a resource and all dependencies are solved. Let's start
-> [ 2.083775] (0:maestro@) Activity 'transfert' is complete
-> [ 2.083775] (0:maestro@) Remove a dependency from 'transfert' on 'child'
+> [ 1.000000] (0:maestro@) Remove a dependency from 'parent' on 'transfer'
+> [ 1.000000] (0:maestro@) 'transfer' is assigned to a resource and all dependencies are solved. Let's start
+> [ 2.083775] (0:maestro@) Activity 'transfer' is complete
+> [ 2.083775] (0:maestro@) Remove a dependency from 'transfer' on 'child'
> [ 2.083775] (0:maestro@) 'child' is assigned to a resource and all dependencies are solved. Let's start
> [ 3.083775] (0:maestro@) Activity 'child' is complete (start time: 2.083775, finish time: 3.083775)
> [ 3.083775] (0:maestro@) Simulation time 3.08378
XBT_INFO("TEST: Latency test between hosts connected by a shared link.");
XBT_INFO("------------------------------------------------------------");
XBT_INFO("Have to send 1B from one host to another at 1Bps with a latency of 500ms.");
- XBT_INFO("Should be done in 1.5 seconds (500ms latency + 1s transfert).");
+ XBT_INFO("Should be done in 1.5 seconds (500ms latency + 1s transfer).");
start_time = sg4::Engine::get_clock();
sg4::Comm::sendto_async(hosts[0], hosts[4], 1.0)->wait();
end_time = sg4::Engine::get_clock();
XBT_INFO("TEST: Latency test between hosts connected by a fatpipe link.");
XBT_INFO("------------------------------------------------------------");
XBT_INFO("Have to send 1B from one host to another at 1Bps with a latency of 500ms.");
- XBT_INFO("Should be done in 1.5 seconds (500ms latency + 1s transfert).");
+ XBT_INFO("Should be done in 1.5 seconds (500ms latency + 1s transfer).");
start_time = sg4::Engine::get_clock();
sg4::Comm::sendto_async(hosts[0], hosts[5], 1.0)->wait();
end_time = sg4::Engine::get_clock();
XBT_INFO("TEST: Latency test between hosts connected by a 3-link route.");
XBT_INFO("------------------------------------------------------------");
XBT_INFO("Have to send 1B from one host to another at 1Bps with a latency of 2 x 500ms + 1s.");
- XBT_INFO("Should be done in 3 seconds (2 x 500ms + 1s latency + 1s transfert).");
+ XBT_INFO("Should be done in 3 seconds (2 x 500ms + 1s latency + 1s transfer).");
start_time = sg4::Engine::get_clock();
sg4::Comm::sendto_async(hosts[0], hosts[1], 1.0)->wait();
end_time = sg4::Engine::get_clock();
XBT_INFO("------------------------------------------------------------");
XBT_INFO("Have to send 1B from one host to another on a link at 2Bps with a latency of 2 x 1024^2s.");
XBT_INFO("This latency is half the default TCP window size (4MiB). This limits the bandwidth to 1B");
- XBT_INFO("Should be done in 2 x 1024^2s + 1 seconds (large latency + 1s transfert).");
+ XBT_INFO("Should be done in 2 x 1024^2s + 1 seconds (large latency + 1s transfer).");
start_time = sg4::Engine::get_clock();
sg4::Comm::sendto_async(hosts[0], hosts[6], 1.0)->wait();
end_time = sg4::Engine::get_clock();
XBT_INFO("TEST: Latency test between hosts connected by a shared link with 2 comms in same direction.");
XBT_INFO("------------------------------------------------------------");
XBT_INFO("Have to send 2 x 1B from one host to another at 1Bps with a latency of 500ms.");
- XBT_INFO("Should be done in 2.5 seconds (500ms latency + 2s transfert).");
+ XBT_INFO("Should be done in 2.5 seconds (500ms latency + 2s transfer).");
start_time = sg4::Engine::get_clock();
sg4::CommPtr c1 = sg4::Comm::sendto_async(hosts[0], hosts[4], 1.0);
sg4::CommPtr c2 = sg4::Comm::sendto_async(hosts[0], hosts[4], 1.0);
XBT_INFO("TEST: Latency test between hosts connected by a fatpipe link with 2 comms in same direction.");
XBT_INFO("------------------------------------------------------------");
XBT_INFO("Have to send 2 x 1B from one host to another at 1Bps with a latency of 500ms.");
- XBT_INFO("Should be done in 1.5 seconds (500ms latency + 1s transfert).");
+ XBT_INFO("Should be done in 1.5 seconds (500ms latency + 1s transfer).");
start_time = sg4::Engine::get_clock();
c1 = sg4::Comm::sendto_async(hosts[0], hosts[5], 1.0);
c2 = sg4::Comm::sendto_async(hosts[0], hosts[5], 1.0);
XBT_INFO("TEST: Latency test between hosts connected by a 3-link route with 2 comms in same direction.");
XBT_INFO("------------------------------------------------------------");
XBT_INFO("Have to send 2 x 1B from one host to another at 1Bps with a latency of 2 x 500ms + 1s.");
- XBT_INFO("Should be done in 4 seconds (2 x 500ms + 1s latency + 2s transfert).");
+ XBT_INFO("Should be done in 4 seconds (2 x 500ms + 1s latency + 2s transfer).");
start_time = sg4::Engine::get_clock();
c1 = sg4::Comm::sendto_async(hosts[0], hosts[1], 1.0);
c2 = sg4::Comm::sendto_async(hosts[0], hosts[1], 1.0);
XBT_INFO("TEST: Latency test between hosts connected by a shared link with 2 comms in opposite direction.");
XBT_INFO("------------------------------------------------------------");
XBT_INFO("Have to send 1B between two hosts in each direction at 1Bps with a latency of 500ms.");
- XBT_INFO("Should be done in 2.5 seconds (500ms latency + 2s transfert).");
+ XBT_INFO("Should be done in 2.5 seconds (500ms latency + 2s transfer).");
start_time = sg4::Engine::get_clock();
c1 = sg4::Comm::sendto_async(hosts[0], hosts[4], 1.0);
c2 = sg4::Comm::sendto_async(hosts[4], hosts[0], 1.0);
XBT_INFO("TEST: Latency test between hosts connected by a fatpipe link with 2 comms in opposite direction.");
XBT_INFO("------------------------------------------------------------");
XBT_INFO("Have to send 1B between two hosts in each direction at 1Bps with a latency of 500ms.");
- XBT_INFO("Should be done in 1.5 seconds (500ms latency + 1s transfert).");
+ XBT_INFO("Should be done in 1.5 seconds (500ms latency + 1s transfer).");
start_time = sg4::Engine::get_clock();
c1 = sg4::Comm::sendto_async(hosts[0], hosts[5], 1.0);
c2 = sg4::Comm::sendto_async(hosts[5], hosts[0], 1.0);
XBT_INFO("TEST: Latency test between hosts connected by a 3-link route with 2 comms in opposite direction.");
XBT_INFO("------------------------------------------------------------");
XBT_INFO("Have to send 1B between two hosts in each direction at 1Bps with a latency of 2 x 500ms + 1s.");
- XBT_INFO("Should be done in 4 seconds (2 x 500ms + 1s latency + 2s transfert).");
+ XBT_INFO("Should be done in 4 seconds (2 x 500ms + 1s latency + 2s transfer).");
start_time = sg4::Engine::get_clock();
c1 = sg4::Comm::sendto_async(hosts[0], hosts[1], 1.0);
c2 = sg4::Comm::sendto_async(hosts[1], hosts[0], 1.0);
XBT_INFO("TEST: 4-host parallel communication with independent transfers.");
XBT_INFO("------------------------------------------------------------");
XBT_INFO("'cpu0' sends 1B to 'cpu1' and 'cpu2' sends 1B to 'cpu3'. The only shared link is the fatpipe switch.");
- XBT_INFO("Should be done in 3 seconds (2 x 500ms + 1s latency + 1s transfert).");
+ XBT_INFO("Should be done in 3 seconds (2 x 500ms + 1s latency + 1s transfer).");
start_time = sg4::Engine::get_clock();
sg4::Exec::init()
->set_bytes_amounts(std::vector<double>({0.0, 1.0, 0.0, 0.0,
> TEST: Latency test between hosts connected by a shared link.
> ------------------------------------------------------------
> Have to send 1B from one host to another at 1Bps with a latency of 500ms.
-> Should be done in 1.5 seconds (500ms latency + 1s transfert).
+> Should be done in 1.5 seconds (500ms latency + 1s transfer).
> Actual result: sending 1 byte on a shared link at 1Bps + 500ms takes 1.50 seconds.
>
>
> TEST: Latency test between hosts connected by a fatpipe link.
> ------------------------------------------------------------
> Have to send 1B from one host to another at 1Bps with a latency of 500ms.
-> Should be done in 1.5 seconds (500ms latency + 1s transfert).
+> Should be done in 1.5 seconds (500ms latency + 1s transfer).
> Actual result: sending 1 byte on a fatpipe link at 1Bps + 500ms takes 1.50 seconds.
>
>
> TEST: Latency test between hosts connected by a 3-link route.
> ------------------------------------------------------------
> Have to send 1B from one host to another at 1Bps with a latency of 2 x 500ms + 1s.
-> Should be done in 3 seconds (2 x 500ms + 1s latency + 1s transfert).
+> Should be done in 3 seconds (2 x 500ms + 1s latency + 1s transfer).
> Actual result: sending 1 byte on a 3-link route at 1Bps + 2,500ms takes 3.00 seconds.
>
>
> ------------------------------------------------------------
> Have to send 1B from one host to another on a link at 2Bps with a latency of 2 x 1024^2s.
> This latency is half the default TCP window size (4MiB). This limits the bandwidth to 1B
-> Should be done in 2 x 1024^2s + 1 seconds (large latency + 1s transfert).
+> Should be done in 2 x 1024^2s + 1 seconds (large latency + 1s transfer).
> Actual result: sending 1 byte on a large latency link takes 2097153.00 seconds.
>
>
> TEST: Latency test between hosts connected by a shared link with 2 comms in same direction.
> ------------------------------------------------------------
> Have to send 2 x 1B from one host to another at 1Bps with a latency of 500ms.
-> Should be done in 2.5 seconds (500ms latency + 2s transfert).
+> Should be done in 2.5 seconds (500ms latency + 2s transfer).
> Actual result: sending 2x1 bytes on a shared link at 1Bps + 500ms takes 2.50 seconds.
>
>
> TEST: Latency test between hosts connected by a fatpipe link with 2 comms in same direction.
> ------------------------------------------------------------
> Have to send 2 x 1B from one host to another at 1Bps with a latency of 500ms.
-> Should be done in 1.5 seconds (500ms latency + 1s transfert).
+> Should be done in 1.5 seconds (500ms latency + 1s transfer).
> Actual result: sending 2x1 bytes on a fatpipe link at 1Bps + 500ms takes 1.50 seconds.
>
>
> TEST: Latency test between hosts connected by a 3-link route with 2 comms in same direction.
> ------------------------------------------------------------
> Have to send 2 x 1B from one host to another at 1Bps with a latency of 2 x 500ms + 1s.
-> Should be done in 4 seconds (2 x 500ms + 1s latency + 2s transfert).
+> Should be done in 4 seconds (2 x 500ms + 1s latency + 2s transfer).
> Actual result: sending 2x1 bytes on a 3-link route at 1Bps + 2,500ms takes 4.00 seconds.
>
>
> TEST: Latency test between hosts connected by a shared link with 2 comms in opposite direction.
> ------------------------------------------------------------
> Have to send 1B between two hosts in each direction at 1Bps with a latency of 500ms.
-> Should be done in 2.5 seconds (500ms latency + 2s transfert).
+> Should be done in 2.5 seconds (500ms latency + 2s transfer).
> Actual result: sending 1 byte in both directions on a shared link at 1Bps + 500ms takes 2.50 seconds.
>
>
> TEST: Latency test between hosts connected by a fatpipe link with 2 comms in opposite direction.
> ------------------------------------------------------------
> Have to send 1B between two hosts in each direction at 1Bps with a latency of 500ms.
-> Should be done in 1.5 seconds (500ms latency + 1s transfert).
+> Should be done in 1.5 seconds (500ms latency + 1s transfer).
> Actual result: sending 1 byte in both directions on a fatpipe link at 1Bps + 500ms takes 1.50 seconds.
>
>
> TEST: Latency test between hosts connected by a 3-link route with 2 comms in opposite direction.
> ------------------------------------------------------------
> Have to send 1B between two hosts in each direction at 1Bps with a latency of 2 x 500ms + 1s.
-> Should be done in 4 seconds (2 x 500ms + 1s latency + 2s transfert).
+> Should be done in 4 seconds (2 x 500ms + 1s latency + 2s transfer).
> Actual result: sending 1 byte in both directions on a 3-link route at 1Bps + 2,500ms takes 4.00 seconds.
>
>
> TEST: 4-host parallel communication with independent transfers.
> ------------------------------------------------------------
> 'cpu0' sends 1B to 'cpu1' and 'cpu2' sends 1B to 'cpu3'. The only shared link is the fatpipe switch.
-> Should be done in 3 seconds (2 x 500ms + 1s latency + 1s transfert).
+> Should be done in 3 seconds (2 x 500ms + 1s latency + 1s transfer).
> Actual result: sending 2 x 1 byte in a parallel communication without interference takes 3.00 seconds.
>
>