-/* Copyright (c) 2006-2014. The SimGrid Team.
+/* Copyright (c) 2006-2015. The SimGrid Team.
* All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
#include <stdio.h>
#include <stdlib.h>
-#include "simdag/simdag.h"
+#include "simgrid/simdag.h"
#include "xbt/ex.h"
#include "xbt/log.h"
/* xbt_log_control_set("sd.thres=debug"); */
- if (argc < 2) {
- XBT_INFO("Usage: %s platform_file", argv[0]);
- XBT_INFO("example: %s sd_platform.xml", argv[0]);
- exit(1);
- }
+ xbt_assert(argc > 1, "Usage: %s platform_file\n"
+ "\nExample: %s two_clusters.xml", argv[0], argv[0]);
/* creation of the environment */
platform_file = argv[1];
workstations = SD_workstation_get_list();
w1 = workstations[0];
w2 = workstations[1];
- SD_workstation_set_access_mode(w2, SD_WORKSTATION_SEQUENTIAL_ACCESS);
name1 = SD_workstation_get_name(w1);
name2 = SD_workstation_get_name(w2);
computation_amount1 = 2000000;
route_size = SD_route_get_size(w1, w2);
for (i = 0; i < route_size; i++) {
XBT_INFO(" Link %s: latency = %f, bandwidth = %f",
- SD_link_get_name(route[i]),
- SD_link_get_current_latency(route[i]),
- SD_link_get_current_bandwidth(route[i]));
+ sg_link_name(route[i]),
+ sg_link_latency(route[i]),
+ sg_link_bandwidth(route[i]));
}
XBT_INFO("Route latency = %f, route bandwidth = %f",
- SD_route_get_current_latency(w1, w2),
- SD_route_get_current_bandwidth(w1, w2));
+ SD_route_get_latency(w1, w2),
+ SD_route_get_bandwidth(w1, w2));
XBT_INFO("Communication time for %f bytes between %s and %s: %f",
communication_amount12, name1, name2,
SD_route_get_communication_time(w1, w2, communication_amount12));
SD_task_dependency_add(NULL, NULL, taskC, taskA);
SD_task_dependency_add(NULL, NULL, taskD, taskB);
SD_task_dependency_add(NULL, NULL, taskD, taskC);
- /* SD_task_dependency_add(NULL, NULL, taskA, taskD); /\* deadlock */
+ SD_task_dependency_add(NULL, NULL, taskB, taskC);
xbt_assert(checkD == taskD &&
checkB == taskB, "Unexpected simulation results");
- xbt_dynar_free_container(&changed_tasks);
-
XBT_DEBUG("Destroying tasks...");
SD_task_destroy(taskA);