* under the terms of the license (GNU LGPL) which comes with this package. */
#include "msg/msg.h" /* Yeah! If you want to use msg, you need to include msg/msg.h */
-#include "xbt/sysdep.h" /* calloc, printf */
+#include "xbt/sysdep.h" /* calloc */
/* Create a log channel to have nice outputs. */
MAX_CHANNEL
} channel_t;
-double task_comm_size_lat = 0;
+double task_comm_size_lat = 1;
double task_comm_size_bw = 100000000;
/** Emitter function */
int sender(int argc,char *argv[] )
-{INFO0("sender");
+{
int nbr = 0;
m_host_t *hosts = NULL;
int i;
double task_comp_size = 0;
m_task_t task=NULL;
char sprintf_buffer[64];
+
+ INFO0("sender");
nbr = argc - 1;
hosts = calloc(nbr, sizeof(m_host_t));
for (i = 0; i < nbr; i++)
{
- /* Latency */
- /* time=MSG_get_clock(); */
-/* task = MSG_task_create(sprintf_buffer, task_comp_size, task_comm_size_lat, NULL); */
-/* INFO1("task = %p",task); */
-/* task->data=xbt_new0(double,1); */
-/* *(double*)(task->data)=time; */
-/* INFO1("task->data = %le", *(double*)(task->data)); */
-/* INFO2("host [%d]=%s ",i, argv[i+1]); */
-/* MSG_task_put(task, hosts[i],PORT_22); */
+/* Latency */
+ time=MSG_get_clock();
+ task = MSG_task_create(sprintf_buffer, task_comp_size, task_comm_size_lat, NULL);
+ INFO1("task = %p",task);
+ task->data=xbt_new0(double,1);
+ *(double*)(task->data)=time;
+ INFO1("task->data = %le", *(double*)(task->data));
+ INFO2("host [%d]=%s ",i, argv[i+1]);
+ MSG_task_put(task, hosts[i],PORT_22);
/* Bandwidth */
time=MSG_get_clock();
/** Receiver function */
int receiver(int argc, char *argv[])
{
- INFO0("receiver");
+
double communication_time=0;
+
+ INFO0("receiver");
while(1)
{
double time, time1, sender_time;
time1=MSG_get_clock();
sender_time=(*(double*)(task->data));
- if (sender_time > time)
+/* if (sender_time > time) */
time=sender_time;
communication_time=time1-time;
- INFO1("Communic. time %le",communication_time);
+ INFO1("Communic. time %.35f",communication_time);
MSG_task_destroy(task);
INFO1("Communic. time %le",communication_time);
MSG_error_t test_all(const char *platform_file,
const char *application_file)
{
- INFO0("test_all");
- MSG_error_t res = MSG_OK;
+
+ MSG_error_t res = MSG_OK;
+
+ INFO0("test_all");
/* Simulation setting */
MSG_set_channel_number(MAX_CHANNEL);
MSG_paje_output("msg_test.trace");
MSG_global_init(&argc,argv);
if (argc < 3)
{
- printf ("Usage: %s platform_file deployment_file\n",argv[0]);
- printf ("example: %s msg_platform.xml msg_deployment.xml\n",argv[0]);
+ CRITICAL1 ("Usage: %s platform_file deployment_file\n",argv[0]);
+ CRITICAL1 ("example: %s msg_platform.xml msg_deployment.xml\n",argv[0]);
exit(1);
}
res = test_all(argv[1],argv[2]);