From: suter Date: Thu, 17 Jun 2010 11:34:16 +0000 (+0000) Subject: Add a new example for simdag X-Git-Tag: v3_5~920 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/ef8847329d23546826f74999f4855085f2c1a970 Add a new example for simdag Schedule a Montage DAX on an heterogeneous platform using a simple Min-Min strategy. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@7889 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- diff --git a/examples/simdag/scheduling/CMakeLists.txt b/examples/simdag/scheduling/CMakeLists.txt new file mode 100644 index 0000000000..e95afa6806 --- /dev/null +++ b/examples/simdag/scheduling/CMakeLists.txt @@ -0,0 +1,8 @@ +cmake_minimum_required(VERSION 2.6) + +set(EXECUTABLE_OUTPUT_PATH "${PROJECT_DIRECTORY}/examples/simdag/scheduling/") + +add_executable(minmin_test minmin_test.c) + +### Add definitions for compile +target_link_libraries(minmin_test simgrid pthread m) diff --git a/examples/simdag/scheduling/Makefile b/examples/simdag/scheduling/Makefile new file mode 100644 index 0000000000..d3172ec5ac --- /dev/null +++ b/examples/simdag/scheduling/Makefile @@ -0,0 +1,242 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 2.8 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canoncical targets will work. +.SUFFIXES: + +# Remove some rules from gmake that .SUFFIXES does not remove. +SUFFIXES = + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E remove -f + +# The program to use to edit the cache. +CMAKE_EDIT_COMMAND = /usr/bin/ccmake + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/suter/Devel/workspace/simgrid-trunk + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/suter/Devel/workspace/simgrid-trunk + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..." + /usr/bin/ccmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache +.PHONY : edit_cache/fast + +# Special rule for the target install +install: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install + +# Special rule for the target install +install/fast: preinstall/fast + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..." + /usr/bin/cmake -P cmake_install.cmake +.PHONY : install/fast + +# Special rule for the target install/local +install/local: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..." + /usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake +.PHONY : install/local + +# Special rule for the target install/local +install/local/fast: install/local +.PHONY : install/local/fast + +# Special rule for the target install/strip +install/strip: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..." + /usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake +.PHONY : install/strip + +# Special rule for the target install/strip +install/strip/fast: install/strip +.PHONY : install/strip/fast + +# Special rule for the target list_install_components +list_install_components: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\"" +.PHONY : list_install_components + +# Special rule for the target list_install_components +list_install_components/fast: list_install_components +.PHONY : list_install_components/fast + +# Special rule for the target package +package: preinstall + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool..." + cd /home/suter/Devel/workspace/simgrid-trunk && /usr/bin/cpack --config ./CPackConfig.cmake +.PHONY : package + +# Special rule for the target package +package/fast: package +.PHONY : package/fast + +# Special rule for the target package_source +package_source: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Run CPack packaging tool for source..." + cd /home/suter/Devel/workspace/simgrid-trunk && /usr/bin/cpack --config ./CPackSourceConfig.cmake /home/suter/Devel/workspace/simgrid-trunk/CPackSourceConfig.cmake +.PHONY : package_source + +# Special rule for the target package_source +package_source/fast: package_source +.PHONY : package_source/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." + /usr/bin/cmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache +.PHONY : rebuild_cache/fast + +# Special rule for the target test +test: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running tests..." + /usr/bin/ctest --force-new-ctest-process $(ARGS) +.PHONY : test + +# Special rule for the target test +test/fast: test +.PHONY : test/fast + +# The main all target +all: cmake_check_build_system + cd /home/suter/Devel/workspace/simgrid-trunk && $(CMAKE_COMMAND) -E cmake_progress_start /home/suter/Devel/workspace/simgrid-trunk/CMakeFiles /home/suter/Devel/workspace/simgrid-trunk/examples/simdag/scheduling/CMakeFiles/progress.marks + cd /home/suter/Devel/workspace/simgrid-trunk && $(MAKE) -f CMakeFiles/Makefile2 examples/simdag/scheduling/all + $(CMAKE_COMMAND) -E cmake_progress_start /home/suter/Devel/workspace/simgrid-trunk/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + cd /home/suter/Devel/workspace/simgrid-trunk && $(MAKE) -f CMakeFiles/Makefile2 examples/simdag/scheduling/clean +.PHONY : clean + +# The main clean target +clean/fast: clean +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + cd /home/suter/Devel/workspace/simgrid-trunk && $(MAKE) -f CMakeFiles/Makefile2 examples/simdag/scheduling/preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + cd /home/suter/Devel/workspace/simgrid-trunk && $(MAKE) -f CMakeFiles/Makefile2 examples/simdag/scheduling/preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + cd /home/suter/Devel/workspace/simgrid-trunk && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +# Convenience name for target. +examples/simdag/scheduling/CMakeFiles/minmin_test.dir/rule: + cd /home/suter/Devel/workspace/simgrid-trunk && $(MAKE) -f CMakeFiles/Makefile2 examples/simdag/scheduling/CMakeFiles/minmin_test.dir/rule +.PHONY : examples/simdag/scheduling/CMakeFiles/minmin_test.dir/rule + +# Convenience name for target. +minmin_test: examples/simdag/scheduling/CMakeFiles/minmin_test.dir/rule +.PHONY : minmin_test + +# fast build rule for target. +minmin_test/fast: + cd /home/suter/Devel/workspace/simgrid-trunk && $(MAKE) -f examples/simdag/scheduling/CMakeFiles/minmin_test.dir/build.make examples/simdag/scheduling/CMakeFiles/minmin_test.dir/build +.PHONY : minmin_test/fast + +minmin_test.o: minmin_test.c.o +.PHONY : minmin_test.o + +# target to build an object file +minmin_test.c.o: + cd /home/suter/Devel/workspace/simgrid-trunk && $(MAKE) -f examples/simdag/scheduling/CMakeFiles/minmin_test.dir/build.make examples/simdag/scheduling/CMakeFiles/minmin_test.dir/minmin_test.c.o +.PHONY : minmin_test.c.o + +minmin_test.i: minmin_test.c.i +.PHONY : minmin_test.i + +# target to preprocess a source file +minmin_test.c.i: + cd /home/suter/Devel/workspace/simgrid-trunk && $(MAKE) -f examples/simdag/scheduling/CMakeFiles/minmin_test.dir/build.make examples/simdag/scheduling/CMakeFiles/minmin_test.dir/minmin_test.c.i +.PHONY : minmin_test.c.i + +minmin_test.s: minmin_test.c.s +.PHONY : minmin_test.s + +# target to generate assembly for a file +minmin_test.c.s: + cd /home/suter/Devel/workspace/simgrid-trunk && $(MAKE) -f examples/simdag/scheduling/CMakeFiles/minmin_test.dir/build.make examples/simdag/scheduling/CMakeFiles/minmin_test.dir/minmin_test.c.s +.PHONY : minmin_test.c.s + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... edit_cache" + @echo "... install" + @echo "... install/local" + @echo "... install/strip" + @echo "... list_install_components" + @echo "... minmin_test" + @echo "... package" + @echo "... package_source" + @echo "... rebuild_cache" + @echo "... test" + @echo "... minmin_test.o" + @echo "... minmin_test.i" + @echo "... minmin_test.s" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + cd /home/suter/Devel/workspace/simgrid-trunk && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/examples/simdag/scheduling/Montage_25.jed b/examples/simdag/scheduling/Montage_25.jed new file mode 100644 index 0000000000..90df3a4ae0 --- /dev/null +++ b/examples/simdag/scheduling/Montage_25.jed @@ -0,0 +1,1952 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/simdag/scheduling/Montage_25.xml b/examples/simdag/scheduling/Montage_25.xml new file mode 100644 index 0000000000..ecf6e0f4f8 --- /dev/null +++ b/examples/simdag/scheduling/Montage_25.xml @@ -0,0 +1,277 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/simdag/scheduling/minmin_test.c b/examples/simdag/scheduling/minmin_test.c new file mode 100644 index 0000000000..2dbb5e36b4 --- /dev/null +++ b/examples/simdag/scheduling/minmin_test.c @@ -0,0 +1,374 @@ +/* simple test to schedule a DAX file with the Min-Min algorithm. */ + +/* Copyright (c) 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" +#include "xbt/ex.h" +#include + +XBT_LOG_NEW_DEFAULT_CATEGORY(test, + "Logging specific to this SimDag example"); + +typedef struct _WorkstationAttribute *WorkstationAttribute; +struct _WorkstationAttribute { + /* Earliest time at wich a workstation is ready to execute a task*/ + double available_at; +}; + +static void SD_workstation_allocate_attribute(SD_workstation_t workstation){ + void *data; + data = calloc(1,sizeof(struct _WorkstationAttribute)); + SD_workstation_set_data(workstation, data); +} + +static void SD_workstation_free_attribute(SD_workstation_t workstation){ + free(SD_workstation_get_data(workstation)); + SD_workstation_set_data(workstation, NULL); +} + +static double SD_workstation_get_available_at( SD_workstation_t workstation){ + WorkstationAttribute attr = + (WorkstationAttribute) SD_workstation_get_data(workstation); + return attr->available_at; +} + +static void SD_workstation_set_available_at(SD_workstation_t workstation, + double time){ + WorkstationAttribute attr = + (WorkstationAttribute) SD_workstation_get_data(workstation); + attr->available_at=time; + SD_workstation_set_data(workstation, attr); +} + + +static xbt_dynar_t get_ready_tasks(xbt_dynar_t dax){ + unsigned int i; + xbt_dynar_t ready_tasks; + SD_task_t task; + + ready_tasks= xbt_dynar_new(sizeof(SD_task_t), NULL); + xbt_dynar_foreach(dax, i, task){ + if (SD_task_get_kind(task) == SD_TASK_COMP_SEQ && + SD_task_get_state(task) == SD_SCHEDULABLE){ + xbt_dynar_push(ready_tasks, &task); + } + } + DEBUG1("There are %lu ready tasks", xbt_dynar_length(ready_tasks)); + + return ready_tasks; +} + +static double finish_on_at(SD_task_t task, SD_workstation_t workstation){ + unsigned int i; + double data_available=0.; + double redist_time=0; + double last_data_available; + SD_task_t parent,grand_parent; + xbt_dynar_t parents, grand_parents; + + int grand_parent_nworkstations; + SD_workstation_t *grand_parent_workstation_list; + + parents = SD_task_get_parents(task); + + if (xbt_dynar_length(parents)) { + /* compute last_data_available */ + last_data_available=-1.0; + xbt_dynar_foreach(parents, i, parent){ + + /* normal case */ + if (SD_task_get_kind(parent) == SD_TASK_COMM_E2E) { + grand_parents = SD_task_get_parents(parent); + + if (xbt_dynar_length(grand_parents) > 1) { + ERROR1("Warning: transfer %s has 2 parents", + SD_task_get_name(parent)); + } + xbt_dynar_get_cpy(grand_parents, 0, &grand_parent); + + grand_parent_nworkstations = + SD_task_get_workstation_count(grand_parent); + grand_parent_workstation_list = + SD_task_get_workstation_list(grand_parent); + /* Estimate the redistribution time from this parent */ + redist_time = + SD_route_get_communication_time(grand_parent_workstation_list[0], + workstation, + SD_task_get_amount(parent)); + data_available = + SD_task_get_finish_time(grand_parent) + redist_time; + + xbt_dynar_free_container(&grand_parents); + } + + /* no transfer, control dependency */ + if (SD_task_get_kind(parent) == SD_TASK_COMP_SEQ) { + data_available = SD_task_get_finish_time(parent); + } + + if (last_data_available < data_available) + last_data_available = data_available; + + } + + xbt_dynar_free_container(&parents); + + return MAX(SD_workstation_get_available_at(workstation), + last_data_available) + + SD_workstation_get_computation_time(workstation, + SD_task_get_amount(task)); + } else { + xbt_dynar_free_container(&parents); + + return SD_workstation_get_available_at(workstation)+ + SD_workstation_get_computation_time(workstation, + SD_task_get_amount(task)); + } +} + +static SD_workstation_t SD_task_get_best_workstation (SD_task_t task){ + int i; + double EFT, min_EFT=-1.0; + const SD_workstation_t *workstations = SD_workstation_get_list (); + int nworkstations = SD_workstation_get_number (); + SD_workstation_t best_workstation; + + best_workstation = workstations[0]; + min_EFT = finish_on_at(task, workstations[0]); + + for (i=1; i\n"); + fprintf(out,"\n"); + fprintf(out," \n"); + fprintf(out," \n"); + fprintf(out," \n"); + fprintf(out," \n", + nworkstations); + fprintf(out," \n"); + fprintf(out," \n"); + fprintf(out," \n"); + + xbt_dynar_foreach(dax, i, task){ + fprintf(out," \n"); + fprintf(out," \n", + SD_task_get_name(task)); + fprintf(out," \n"); + if (SD_task_get_kind(task) == SD_TASK_COMM_E2E) + fprintf(out,"transfer\"/>\n"); + + fprintf(out," \n", + SD_task_get_start_time(task)); + fprintf(out," \n", + SD_task_get_finish_time(task)); + fprintf(out," \n"); + + current_nworkstations = SD_task_get_workstation_count(task); + + fprintf(out," \n", + current_nworkstations); + + fprintf(out," \n"); + list = SD_task_get_workstation_list(task); + for (j=0;j\n",k); + fprintf(out, + " \n"); + break; + } + } + } + fprintf(out," \n"); + fprintf(out," \n"); + fprintf(out," \n"); + } + fprintf(out," \n"); + fprintf(out,"\n"); +} + +int main(int argc, char **argv) { + unsigned int cursor, selected_idx=0; + double finish_time, min_finish_time = -1.0; + SD_task_t task, selected_task=NULL; + xbt_dynar_t ready_tasks; + SD_workstation_t workstation, selected_workstation=NULL; + int total_nworkstations=0; + const SD_workstation_t *workstations=NULL; + xbt_dynar_t dax, changed; + FILE *out=NULL; + + /* initialisation of SD */ + SD_init(&argc, argv); + + /* Check our arguments */ + if (argc < 3) { + INFO1("Usage: %s platform_file dax_file [jedule_file]", argv[0]); + INFO1("example: %s simulacrum_7_hosts.xml Montage_25.xml Montage_25.jed", + argv[0]); + exit(1); + } + char *tracefilename; + if (argc == 3) { + char *last=strrchr(argv[2],'.'); + + tracefilename=bprintf("%.*s.jed", + (int)(last==NULL?strlen(argv[2]):last-argv[2]), + argv[2]); + } else { + tracefilename = xbt_strdup(argv[3]); + } + + /* creation of the environment */ + SD_create_environment(argv[1]); + + /* Allocating the workstation attribute */ + total_nworkstations = SD_workstation_get_number(); + workstations = SD_workstation_get_list(); + + for(cursor=0; cursor + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/simdag/scheduling/test_minmin.tesh b/examples/simdag/scheduling/test_minmin.tesh new file mode 100644 index 0000000000..3e9f11c0bb --- /dev/null +++ b/examples/simdag/scheduling/test_minmin.tesh @@ -0,0 +1,34 @@ +#! ./tesh + +p Simple test of simdag + +$ $SG_TEST_EXENV ./minmin_test --log=sd_daxparse.thresh:critical ${srcdir:=.}/simulacrum_7_hosts.xml ${srcdir:=.}/Montage_25.xml +> [0.000000] [test/INFO] Schedule ID00002@mProjectPP on Host 27 +> [0.000105] [test/INFO] Schedule ID00000@mProjectPP on Host 26 +> [0.000120] [test/INFO] Schedule ID00003@mProjectPP on Host 30 +> [0.000325] [test/INFO] Schedule ID00004@mProjectPP on Host 27 +> [0.000433] [test/INFO] Schedule ID00001@mProjectPP on Host 32 +> [29.084966] [test/INFO] Schedule ID00010@mDiffFit on Host 27 +> [29.085068] [test/INFO] Schedule ID00008@mDiffFit on Host 26 +> [29.989490] [test/INFO] Schedule ID00013@mDiffFit on Host 30 +> [32.620710] [test/INFO] Schedule ID00009@mDiffFit on Host 27 +> [32.620812] [test/INFO] Schedule ID00011@mDiffFit on Host 26 +> [32.620828] [test/INFO] Schedule ID00005@mDiffFit on Host 32 +> [32.621045] [test/INFO] Schedule ID00006@mDiffFit on Host 31 +> [32.621152] [test/INFO] Schedule ID00012@mDiffFit on Host 28 +> [32.621464] [test/INFO] Schedule ID00007@mDiffFit on Host 27 +> [64.163129] [test/INFO] Schedule ID00014@mConcatFit on Host 27 +> [64.951788] [test/INFO] Schedule ID00015@mBgModel on Host 27 +> [66.494017] [test/INFO] Schedule ID00016@mBackground on Host 27 +> [66.494032] [test/INFO] Schedule ID00017@mBackground on Host 26 +> [66.494139] [test/INFO] Schedule ID00020@mBackground on Host 30 +> [66.494239] [test/INFO] Schedule ID00018@mBackground on Host 27 +> [66.494254] [test/INFO] Schedule ID00019@mBackground on Host 32 +> [92.287996] [test/INFO] Schedule ID00021@mImgTbl on Host 27 +> [93.864472] [test/INFO] Schedule ID00022@mAdd on Host 27 +> [97.155158] [test/INFO] Schedule ID00023@mShrink on Host 27 +> [101.440531] [test/INFO] Schedule ID00024@mJPEG on Host 27 +> [101.932984] [test/INFO] Schedule end on Host 27 +> [101.933410] [test/INFO] Simulation Time: 101.933410 +> [101.933410] [test/INFO] ------------------- Produce the trace file--------------------------- +> [101.933410] [test/INFO] Producing the trace of the run into ./Montage_25.jed