Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Add a simple exemple and test of multicore machine.
authoralegrand <alegrand@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Thu, 2 Dec 2010 22:24:28 +0000 (22:24 +0000)
committeralegrand <alegrand@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Thu, 2 Dec 2010 22:24:28 +0000 (22:24 +0000)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@8940 48e7efb5-ca39-0410-a469-dd3cf9ba447f

buildtools/Cmake/AddTests.cmake
examples/msg/masterslave/deployment_masterslave_mailbox_multicore.xml [new file with mode: 0644]
examples/msg/masterslave/masterslave_multicore.tesh [new file with mode: 0644]
examples/platforms/multicore_machine.xml [new file with mode: 0644]

index 14be4ea..a0d6543 100644 (file)
@@ -131,6 +131,7 @@ ADD_TEST(msg-masterslave-failure    ${CMAKE_BINARY_DIR}/bin/tesh --cd ${CMAKE_HOME_
 ADD_TEST(msg-masterslave-bypass        ${CMAKE_BINARY_DIR}/bin/tesh --cd ${CMAKE_HOME_DIRECTORY}/examples/msg masterslave/masterslave_bypass.tesh)
 ADD_TEST(msg-masterslave-mailbox       ${CMAKE_BINARY_DIR}/bin/tesh --cd ${CMAKE_HOME_DIRECTORY}/examples/msg masterslave/masterslave_mailbox.tesh)
 ADD_TEST(msg-masterslave-vivaldi       ${CMAKE_BINARY_DIR}/bin/tesh --cd ${CMAKE_HOME_DIRECTORY}/examples/msg masterslave/masterslave_vivaldi.tesh)
 ADD_TEST(msg-masterslave-bypass        ${CMAKE_BINARY_DIR}/bin/tesh --cd ${CMAKE_HOME_DIRECTORY}/examples/msg masterslave/masterslave_bypass.tesh)
 ADD_TEST(msg-masterslave-mailbox       ${CMAKE_BINARY_DIR}/bin/tesh --cd ${CMAKE_HOME_DIRECTORY}/examples/msg masterslave/masterslave_mailbox.tesh)
 ADD_TEST(msg-masterslave-vivaldi       ${CMAKE_BINARY_DIR}/bin/tesh --cd ${CMAKE_HOME_DIRECTORY}/examples/msg masterslave/masterslave_vivaldi.tesh)
+ADD_TEST(msg-masterslave-multicore     ${CMAKE_BINARY_DIR}/bin/tesh --cd ${CMAKE_HOME_DIRECTORY}/examples/msg masterslave/masterslave_multicore.tesh)
 ADD_TEST(msg-migration         ${CMAKE_BINARY_DIR}/bin/tesh --cd ${CMAKE_HOME_DIRECTORY}/examples/msg migration/migration.tesh)
 ADD_TEST(msg-ptask             ${CMAKE_BINARY_DIR}/bin/tesh --cd ${CMAKE_HOME_DIRECTORY}/examples/msg parallel_task/parallel_task.tesh)
 ADD_TEST(msg-priority          ${CMAKE_BINARY_DIR}/bin/tesh --cd ${CMAKE_HOME_DIRECTORY}/examples/msg priority/priority.tesh)
 ADD_TEST(msg-migration         ${CMAKE_BINARY_DIR}/bin/tesh --cd ${CMAKE_HOME_DIRECTORY}/examples/msg migration/migration.tesh)
 ADD_TEST(msg-ptask             ${CMAKE_BINARY_DIR}/bin/tesh --cd ${CMAKE_HOME_DIRECTORY}/examples/msg parallel_task/parallel_task.tesh)
 ADD_TEST(msg-priority          ${CMAKE_BINARY_DIR}/bin/tesh --cd ${CMAKE_HOME_DIRECTORY}/examples/msg priority/priority.tesh)
diff --git a/examples/msg/masterslave/deployment_masterslave_mailbox_multicore.xml b/examples/msg/masterslave/deployment_masterslave_mailbox_multicore.xml
new file mode 100644 (file)
index 0000000..fc11b15
--- /dev/null
@@ -0,0 +1,31 @@
+<?xml version='1.0'?>
+<!DOCTYPE platform SYSTEM "simgrid.dtd">
+<platform version="3">
+  <!-- The master process (with some arguments) -->
+  <process host="Tremblay" function="master">
+     <argument value="20"/>       <!-- Number of tasks -->
+     <argument value="50000000"/>  <!-- Computation size of tasks -->
+     <argument value="1000000"/>   <!-- Communication size of tasks -->
+     <argument value="6"/>         <!-- Number of slaves -->
+  </process>
+  <!-- The slave processes (with mailbox to listen on as argument) -->
+  <process host="Tremblay" function="slave">
+    <argument value="0"/>
+  </process>
+  <process host="Tremblay" function="slave">
+    <argument value="1"/>
+  </process>
+  <process host="Tremblay" function="slave">
+    <argument value="2"/>
+  </process>
+  <process host="Tremblay" function="slave">
+    <argument value="3"/>
+  </process>
+  <process host="Tremblay" function="slave">
+    <argument value="4"/>
+  </process>
+  <process host="Tremblay" function="slave">
+    <argument value="5"/>
+  </process>
+
+</platform>
diff --git a/examples/msg/masterslave/masterslave_multicore.tesh b/examples/msg/masterslave/masterslave_multicore.tesh
new file mode 100644 (file)
index 0000000..8515d8c
--- /dev/null
@@ -0,0 +1,36 @@
+#! ./tesh
+
+p Testing a simple master/slave example application
+
+$ $SG_TEST_EXENV ./masterslave/masterslave_mailbox ../platforms/multicore_machine.xml ./masterslave/deployment_masterslave_mailbox_multicore.xml --cfg=cpu/model:Cas01_fullupdate
+> [0.000000] [xbt_cfg/INFO] Configuration change: Set 'cpu/model' to 'Cas01_fullupdate'
+> [0.000000] [surf_config/INFO] Switching workstation model to compound since you changed the network and/or cpu model(s)
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Got 6 slaves and 20 tasks to process
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Sending "Task_0" (of 20) to mailbox "slave-0"
+> [Tremblay:master:(1) 0.002164] [msg_test/INFO] Sending "Task_1" (of 20) to mailbox "slave-1"
+> [Tremblay:master:(1) 0.004328] [msg_test/INFO] Sending "Task_2" (of 20) to mailbox "slave-2"
+> [Tremblay:master:(1) 0.006492] [msg_test/INFO] Sending "Task_3" (of 20) to mailbox "slave-3"
+> [Tremblay:master:(1) 0.008656] [msg_test/INFO] Sending "Task_4" (of 20) to mailbox "slave-4"
+> [Tremblay:master:(1) 0.010820] [msg_test/INFO] Sending "Task_5" (of 20) to mailbox "slave-5"
+> [Tremblay:master:(1) 0.012984] [msg_test/INFO] Sending "Task_6" (of 20) to mailbox "slave-0"
+> [Tremblay:master:(1) 0.514038] [msg_test/INFO] Sending "Task_7" (of 20) to mailbox "slave-1"
+> [Tremblay:master:(1) 0.516202] [msg_test/INFO] Sending "Task_8" (of 20) to mailbox "slave-2"
+> [Tremblay:master:(1) 0.518366] [msg_test/INFO] Sending "Task_9" (of 20) to mailbox "slave-3"
+> [Tremblay:master:(1) 0.520530] [msg_test/INFO] Sending "Task_10" (of 20) to mailbox "slave-4"
+> [Tremblay:master:(1) 0.522694] [msg_test/INFO] Sending "Task_11" (of 20) to mailbox "slave-5"
+> [Tremblay:master:(1) 0.524858] [msg_test/INFO] Sending "Task_12" (of 20) to mailbox "slave-0"
+> [Tremblay:master:(1) 1.025912] [msg_test/INFO] Sending "Task_13" (of 20) to mailbox "slave-1"
+> [Tremblay:master:(1) 1.028076] [msg_test/INFO] Sending "Task_14" (of 20) to mailbox "slave-2"
+> [Tremblay:master:(1) 1.030240] [msg_test/INFO] Sending "Task_15" (of 20) to mailbox "slave-3"
+> [Tremblay:master:(1) 1.032404] [msg_test/INFO] Sending "Task_16" (of 20) to mailbox "slave-4"
+> [Tremblay:master:(1) 1.034568] [msg_test/INFO] Sending "Task_17" (of 20) to mailbox "slave-5"
+> [Tremblay:master:(1) 1.036732] [msg_test/INFO] Sending "Task_18" (of 20) to mailbox "slave-0"
+> [Tremblay:master:(1) 1.537786] [msg_test/INFO] Sending "Task_19" (of 20) to mailbox "slave-1"
+> [Tremblay:master:(1) 1.539950] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
+> [Tremblay:slave:(2) 2.047652] [msg_test/INFO] I'm done. See you!
+> [Tremblay:slave:(3) 2.049816] [msg_test/INFO] I'm done. See you!
+> [Tremblay:slave:(4) 2.049972] [msg_test/INFO] I'm done. See you!
+> [Tremblay:slave:(5) 2.050128] [msg_test/INFO] I'm done. See you!
+> [Tremblay:slave:(6) 2.050284] [msg_test/INFO] I'm done. See you!
+> [Tremblay:slave:(7) 2.050440] [msg_test/INFO] I'm done. See you!
+> [2.050440] [msg_test/INFO] Simulation time 2.05044
diff --git a/examples/platforms/multicore_machine.xml b/examples/platforms/multicore_machine.xml
new file mode 100644 (file)
index 0000000..0c9011c
--- /dev/null
@@ -0,0 +1,7 @@
+<?xml version='1.0'?>
+ <!DOCTYPE platform SYSTEM "simgrid.dtd">
+ <platform version="3">
+ <AS  id="AS0"  routing="Full">
+   <host id="Tremblay" power="98095000" core="6"/>
+ </AS>
+ </platform>