1 -- Copyright (c) 2011, 2014. The SimGrid Team.
2 -- All rights reserved.
4 -- This program is free software; you can redistribute it and/or modify it
5 -- under the terms of the license (GNU LGPL) which comes with this package.
10 simgrid.info("Hello from lua, I'm the master")
11 for i,v in ipairs(arg) do
12 simgrid.info("Got "..v)
15 prop_value = simgrid.host.get_prop_value(simgrid.host.self(),"peace");
16 simgrid.info("Prop Value >>> ".. prop_value);
24 error("Argc should be 4");
26 simgrid.info("Argc="..(#arg).." (should be 4)")
31 tk = simgrid.task.new("Task "..i,comp_size,comm_size);
32 alias = "slave "..(i%slave_count);
34 simgrid.Trace.setTaskCategory(tk,"compute");
35 simgrid.info("Master sending '" .. simgrid.task.get_name(tk) .."' To '" .. alias .."'");
36 simgrid.task.send(tk,alias); -- C user data set to NULL
37 simgrid.info("Master done sending '".. simgrid.task.get_name(tk) .."' To '" .. alias .."'");
40 -- Sending Finalize Message To Others
42 simgrid.info("Master: All tasks have been dispatched. Let's tell everybody the computation is over.");
43 for i=0,slave_count-1 do
45 simgrid.info("Master: sending finalize to "..alias);
46 finalize = simgrid.task.new("finalize",comp_size,comm_size);
48 simgrid.Trace.setTaskCategory(finalize,"finalize");
49 simgrid.task.send(finalize,alias);
51 simgrid.info("Master: Everything's done.");