Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
[Doc] Added description for the boost context factory
[simgrid.git] / examples / lua / multi_matrix / sender.lua
index 7dfe0f3..c942ba3 100644 (file)
@@ -1,30 +1,33 @@
-function Sender(...) 
+-- Copyright (c) 2011, 2014. The SimGrid Team.
+-- All rights reserved.
 
-       simgrid.info("Hello From Sender")
-       receiver = simgrid.Host.getByName(arg[1])
-       task_comp = arg[2]
-       task_comm = arg[3]
-       rec_alias = arg[4]
-       
-       size = 4
-       m1 = mkmatrix(size, size)
-        m2 = mkmatrix(size, size)      
+-- This program is free software; you can redistribute it and/or modify it
+-- under the terms of the license (GNU LGPL) which comes with this package.
 
-       if (#arg ~= 4) then
-           error("Argc should be 4");
-       end
-       simgrid.info("Argc="..(#arg).." (should be 4)")
+function Sender(...)
 
-       -- Sending Task
-       task = simgrid.Task.new("matrix_task",task_comp,task_comm);
-       task['matrix_1'] = m1;
-       task['matrix_2'] = m2;
-       task['size'] = size;
-       simgrid.info("Sending "..simgrid.Task.name(task).." to "..simgrid.Host.name(receiver));
-       simgrid.Task.send(task,rec_alias);
-       -- Read The Result 
-       mm = task['matrix_res']
-       simgrid.info("Got the Multiplication result ...Bye");
-       --mprint(size,size,mm);
+  simgrid.info("Hello From Sender")
+  local receiver = simgrid.host.get_by_name(select(1, ...))
+  local task_comp = select(2, ...)
+  local task_comm = select(3, ...)
+  local rec_alias = select(4, ...)
 
+  local size = 4
+  local m1 = mkmatrix(size, size)
+  local m2 = mkmatrix(size, size)
+
+  if select("#", ...) ~= 4 then
+    error("Argc should be 4")
+  end
+  simgrid.info("Argc=" .. select("#", ...) .. " (should be 4)")
+
+  -- Sending Task
+  local task = simgrid.task.new("matrix_task", task_comp, task_comm)
+  task['matrix_1'] = m1
+  task['matrix_2'] = m2
+  task['size'] = size
+  simgrid.info("Sending " .. simgrid.task.get_name(task) .. " to " .. simgrid.host.name(receiver))
+  simgrid.task.send(task, rec_alias)
+  simgrid.info("Got the Multiplication result ...Bye")
 end
+