From 14f6b4abd703b45e80e563263d8d409c0b766357 Mon Sep 17 00:00:00 2001 From: suter Date: Fri, 22 Jun 2012 15:25:03 +0200 Subject: [PATCH 1/1] Add a new basic test: what happens when simulation ends while some tasks are not handle at all? Get wome warnings, dude! --- teshsuite/SimGrid.tesh | 1 + teshsuite/simdag/CMakeLists.txt | 5 +++ teshsuite/simdag/incomplete | Bin 0 -> 18563 bytes teshsuite/simdag/incomplete.c | 70 ++++++++++++++++++++++++++++++++ teshsuite/simdag/simdag.tesh | 1 + 5 files changed, 77 insertions(+) create mode 100755 teshsuite/simdag/incomplete create mode 100644 teshsuite/simdag/incomplete.c diff --git a/teshsuite/SimGrid.tesh b/teshsuite/SimGrid.tesh index 0c1c933e76..b4a4642a9b 100644 --- a/teshsuite/SimGrid.tesh +++ b/teshsuite/SimGrid.tesh @@ -18,6 +18,7 @@ $ cd ${TESHSUITE_DIR:=.} ! include basic4.tesh ! include basic5.tesh ! include basic6.tesh +! include incomplete.tesh # Network Tests diff --git a/teshsuite/simdag/CMakeLists.txt b/teshsuite/simdag/CMakeLists.txt index 210543a5a2..b003ea4e0f 100644 --- a/teshsuite/simdag/CMakeLists.txt +++ b/teshsuite/simdag/CMakeLists.txt @@ -9,6 +9,7 @@ add_executable(basic3 basic3.c) add_executable(basic4 basic4.c) add_executable(basic5 basic5.c) add_executable(basic6 basic6.c) +add_executable(incomplete incomplete.c) ### Add definitions for compile if(NOT WIN32) @@ -19,6 +20,7 @@ target_link_libraries(basic3 simgrid m pthread ) target_link_libraries(basic4 simgrid m pthread ) target_link_libraries(basic5 simgrid m pthread ) target_link_libraries(basic6 simgrid m pthread ) +target_link_libraries(incomplete simgrid m pthread ) else(NOT WIN32) target_link_libraries(basic0 simgrid) target_link_libraries(basic1 simgrid) @@ -27,6 +29,7 @@ target_link_libraries(basic3 simgrid) target_link_libraries(basic4 simgrid) target_link_libraries(basic5 simgrid) target_link_libraries(basic6 simgrid) +target_link_libraries(incomplete simgrid) endif(NOT WIN32) set(tesh_files @@ -38,6 +41,7 @@ set(tesh_files ${CMAKE_CURRENT_SOURCE_DIR}/basic4.tesh ${CMAKE_CURRENT_SOURCE_DIR}/basic5.tesh ${CMAKE_CURRENT_SOURCE_DIR}/basic6.tesh + ${CMAKE_CURRENT_SOURCE_DIR}/incomplete.tesh ${CMAKE_CURRENT_SOURCE_DIR}/simdag.tesh PARENT_SCOPE ) @@ -55,6 +59,7 @@ set(teshsuite_src ${CMAKE_CURRENT_SOURCE_DIR}/basic4.c ${CMAKE_CURRENT_SOURCE_DIR}/basic5.c ${CMAKE_CURRENT_SOURCE_DIR}/basic6.c + ${CMAKE_CURRENT_SOURCE_DIR}/incomplete.c PARENT_SCOPE ) set(bin_files diff --git a/teshsuite/simdag/incomplete b/teshsuite/simdag/incomplete new file mode 100755 index 0000000000000000000000000000000000000000..28529c90404453ace35d2c82cf60a40cab8dcc91 GIT binary patch literal 18563 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

vnd} z5gk!2)5KP0vvxiI;-({dJ`Bt3u4;htyW;sfl*pgpyK>3c2DF=^c z9Wl#c)WnU2j%e;YCq1VeJfC&MEXP?BHx)X%DaQ+hUn>W{$vR?|4~{1ELPzwrn3K*c z2XAK`G0VM16W0_vx+cd9gm0-gmhUL4iGF5HhxWcb`F3`tUzN3Emb;@Swii}ld%mNB zch3AbN$x~kodO50`0lZUZ%DYXQq!QL%*h9lap8(Yv7Do;yKgC7aSUlBl5`CvakW|+ z3J4cTqrUj4aN%+ae+Es&j2v9D<8=3wYD&*DAM(PEaXSwQMkm;CCf2dk>8rvi*R?4M}9a2XRU%yTi*=PU?VUwoh2xGC!dl zwn!*l!82GbE#~%o9yvGut~W+yo1!vX^VNBx3A%Jf7(n0GsXk^{AFQ z1(IAqX|Qt7b`0GO#%#~?0j)KLhJzIqrC6KOy%5Nr=m4m{|t_NW!kUo&nZQ2CmV3NEYlDPmEX>QqHKR@9!|QHm{urz1I_N678-ni z7Lpv>F)U{&STNBY%6=(d_*7oL{bB(57^!~gV#DBxyv#gNEH7g3Z#C?HZ;;GB-+ryK z&yU}Aml!4(?#)ST&s5I4Uz;I2X@; z*O-gfX1+hp#b*e+&N&Cos*<+~UbT>$Wi5CMF!HVPtK?i=lC0vQLQvxBrj(a! z70x`w5UpZi5xltwzNi4F^UZ>Oa;F++VFkKwl;HbXmYL22qlv=fNcSOan&a3h@xtRs zr$3eZKwh~wNd0X5seY7pVAF71-crYfuQLc1Z*`p*%Gqd(7Z zXPtois>BQH|83w@?zy~j9|k^M-2PMP^N4|Zd=)h1u8A7K)3SU!bxFKI&__MyM3b19 zB`P?Nyi$LTIFQ$Gw@JM4d>K-H_<5AeNJ{;}^W`9L`i}XOYA@dtzASOJ&eHpf;NJ!A zoaVdghl=Pw1AMygq)!&ne^ugz*SFV;=)Y40uSWyxvdzhGG;cp0PQPD4@!{(&-~WO| z^!Ed=ohA-PfX@KV^QruN_MIYr9s};o)Go_BEB$0;=H8Ha_BzjxKkrKah2O6`tVaCv zzmKm6KHYciO-eui`gyU^=MggguKfcN=h|iInj-jm;LfaChP%FqKF$BvVFZKMrLh4m zA(-ws3e0|_V1lIOn8u;ewm@=hj3ymqIqNp|%3{`U?)vaLoh2%U z`D`h2EY2vUaB}AT%m%5MGuN{A6&={2X6C6V*JYg_Y6sleiQVOwBTvSF>qFy-#^|8@ zz8#;S$D{hFFA~6%px(P}W7miKdSGKxlRqvX^bOuk-CbUN)B5#W)(z+bUESVw^aZ>8 zkUsPIyPDt3{+s}Rvv2;;ohP#}tE4{YH$J{6+?aimKRsZ4P|qGsKQu7?&l#BJA#;AF z!1U_^?`OuX;3opyZu3X>@8i?`YzuOK3>bsSizGIZQ?V51;-Uhfy6Q)6W+eKWo6T c&iTOw`O6PQek%giFn(>pI5b>&^}7!L4Yi`Bi~s-t literal 0 HcmV?d00001 diff --git a/teshsuite/simdag/incomplete.c b/teshsuite/simdag/incomplete.c new file mode 100644 index 0000000000..13929b6148 --- /dev/null +++ b/teshsuite/simdag/incomplete.c @@ -0,0 +1,70 @@ +/* Copyright (c) 2007, 2008, 2009, 2010. The SimGrid Team. + * All rights reserved. */ + +/* 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. */ + +#include +#include +#include "simdag/simdag.h" +#include "xbt/log.h" + +XBT_LOG_NEW_DEFAULT_SUBCATEGORY(basic2, sd, "SimDag test basic2"); + +int main(int argc, char **argv) +{ + + SD_task_t taskInit; + SD_task_t taskA, taskB, taskC, taskD; + xbt_dynar_t ret; + + const SD_workstation_t *workstation; + + double communication_amount1 = 1000000000; + double communication_amount2 = 100000000; + double no_cost = 0.0; + + /* initialization of SD */ + SD_init(&argc, argv); + + /* creation of the environment */ + SD_create_environment(argv[1]); + + /* creation of the tasks and their dependencies */ + taskInit = SD_task_create("Init", NULL, 1.0); + taskA = SD_task_create("Task A", NULL, 1.0); + taskB = SD_task_create("Task B", NULL, 1.0); + taskC = SD_task_create("Task C", NULL, 1.0); + taskD = SD_task_create("Task D", NULL, 1.0); + + + /* scheduling parameters */ + + workstation = SD_workstation_get_list(); + + SD_task_dependency_add(NULL, NULL, taskInit, taskA); + SD_task_dependency_add(NULL, NULL, taskInit, taskB); + SD_task_dependency_add(NULL, NULL, taskC, taskD); + + /* let's launch the simulation! */ + SD_task_schedule(taskInit, 1, SD_workstation_get_list(), &no_cost, + &no_cost, -1.0); + SD_task_schedule(taskA, 1, &workstation[0], &no_cost, + &communication_amount1, -1.0); + SD_task_schedule(taskD, 1, &workstation[0], &no_cost, + &communication_amount1, -1.0); + + + ret = SD_simulate(-1.); + xbt_dynar_free(&ret); + SD_task_destroy(taskA); + SD_task_destroy(taskB); + SD_task_destroy(taskC); + SD_task_destroy(taskD); + SD_task_destroy(taskInit); + + XBT_INFO("Simulation time: %f", SD_get_clock()); + + SD_exit(); + return 0; +} diff --git a/teshsuite/simdag/simdag.tesh b/teshsuite/simdag/simdag.tesh index 47f68946be..1d6fea1bbd 100644 --- a/teshsuite/simdag/simdag.tesh +++ b/teshsuite/simdag/simdag.tesh @@ -13,3 +13,4 @@ D This tesh file contains all the tesh files relative with SimDag ! include basic4.tesh ! include basic5.tesh ! include basic6.tesh +! include incomplete.tesh -- 2.20.1