--- /dev/null
+<?xml version='1.0'?>
+<!DOCTYPE platform_description SYSTEM "surfxml.dtd">
+<platform_description version="1">
+ <cpu name="C2-06" power="5000000000"/>
+ <cpu name="C1-03" power="1000000000"/>
+ <cpu name="C2-07" power="5000000000"/>
+ <cpu name="C2-09" power="5000000000"/>
+ <cpu name="C1-02" power="1000000000"/>
+ <cpu name="C2-08" power="5000000000"/>
+ <cpu name="C1-01" power="1000000000"/>
+ <cpu name="C1-04" power="1000000000"/>
+ <cpu name="C1-00" power="1000000000"/>
+ <cpu name="C2-05" power="5000000000"/>
+ <network_link name="6" bandwidth="125000000" latency="0.000100"/>
+ <network_link name="11" bandwidth="125000000" latency="0.000100" sharing_policy="FATPIPE" />
+ <network_link name="3" bandwidth="125000000" latency="0.000100"/>
+ <network_link name="7" bandwidth="125000000" latency="0.000100"/>
+ <network_link name="9" bandwidth="125000000" latency="0.000100"/>
+ <network_link name="12" bandwidth="1250000000" latency="0.000100"/>
+ <network_link name="2" bandwidth="125000000" latency="0.000100"/>
+ <network_link name="14" bandwidth="1250000000" latency="0.050000"/>
+ <network_link name="8" bandwidth="125000000" latency="0.000100"/>
+ <network_link name="1" bandwidth="125000000" latency="0.000100"/>
+ <network_link name="4" bandwidth="125000000" latency="0.000100"/>
+ <network_link name="0" bandwidth="125000000" latency="0.000100"/>
+ <network_link name="13" bandwidth="1250000000" latency="0.000100"/>
+ <network_link name="10" bandwidth="125000000" latency="0.000100" sharing_policy="FATPIPE" />
+ <network_link name="5" bandwidth="125000000" latency="0.000100"/>
+ <route src="C2-06" dst="C1-03"><route_element name="6"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="3"/> </route>
+ <route src="C2-06" dst="C2-07"><route_element name="6"/><route_element name="11"/><route_element name="7"/> </route>
+ <route src="C2-06" dst="C2-09"><route_element name="6"/><route_element name="11"/><route_element name="9"/> </route>
+ <route src="C2-06" dst="C1-02"><route_element name="6"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="2"/> </route>
+ <route src="C2-06" dst="C2-08"><route_element name="6"/><route_element name="11"/><route_element name="8"/> </route>
+ <route src="C2-06" dst="C1-01"><route_element name="6"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="1"/> </route>
+ <route src="C2-06" dst="C1-04"><route_element name="6"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="4"/> </route>
+ <route src="C2-06" dst="C1-00"><route_element name="6"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="0"/> </route>
+ <route src="C2-06" dst="C2-05"><route_element name="6"/><route_element name="11"/><route_element name="5"/> </route>
+ <route src="C1-03" dst="C2-06"><route_element name="3"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="6"/> </route>
+ <route src="C1-03" dst="C2-07"><route_element name="3"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="7"/> </route>
+ <route src="C1-03" dst="C2-09"><route_element name="3"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="9"/> </route>
+ <route src="C1-03" dst="C1-02"><route_element name="3"/><route_element name="10"/><route_element name="2"/> </route>
+ <route src="C1-03" dst="C2-08"><route_element name="3"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="8"/> </route>
+ <route src="C1-03" dst="C1-01"><route_element name="3"/><route_element name="10"/><route_element name="1"/> </route>
+ <route src="C1-03" dst="C1-04"><route_element name="3"/><route_element name="10"/><route_element name="4"/> </route>
+ <route src="C1-03" dst="C1-00"><route_element name="3"/><route_element name="10"/><route_element name="0"/> </route>
+ <route src="C1-03" dst="C2-05"><route_element name="3"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="5"/> </route>
+ <route src="C2-07" dst="C2-06"><route_element name="7"/><route_element name="11"/><route_element name="6"/> </route>
+ <route src="C2-07" dst="C1-03"><route_element name="7"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="3"/> </route>
+ <route src="C2-07" dst="C2-09"><route_element name="7"/><route_element name="11"/><route_element name="9"/> </route>
+ <route src="C2-07" dst="C1-02"><route_element name="7"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="2"/> </route>
+ <route src="C2-07" dst="C2-08"><route_element name="7"/><route_element name="11"/><route_element name="8"/> </route>
+ <route src="C2-07" dst="C1-01"><route_element name="7"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="1"/> </route>
+ <route src="C2-07" dst="C1-04"><route_element name="7"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="4"/> </route>
+ <route src="C2-07" dst="C1-00"><route_element name="7"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="0"/> </route>
+ <route src="C2-07" dst="C2-05"><route_element name="7"/><route_element name="11"/><route_element name="5"/> </route>
+ <route src="C2-09" dst="C2-06"><route_element name="9"/><route_element name="11"/><route_element name="6"/> </route>
+ <route src="C2-09" dst="C1-03"><route_element name="9"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="3"/> </route>
+ <route src="C2-09" dst="C2-07"><route_element name="9"/><route_element name="11"/><route_element name="7"/> </route>
+ <route src="C2-09" dst="C1-02"><route_element name="9"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="2"/> </route>
+ <route src="C2-09" dst="C2-08"><route_element name="9"/><route_element name="11"/><route_element name="8"/> </route>
+ <route src="C2-09" dst="C1-01"><route_element name="9"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="1"/> </route>
+ <route src="C2-09" dst="C1-04"><route_element name="9"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="4"/> </route>
+ <route src="C2-09" dst="C1-00"><route_element name="9"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="0"/> </route>
+ <route src="C2-09" dst="C2-05"><route_element name="9"/><route_element name="11"/><route_element name="5"/> </route>
+ <route src="C1-02" dst="C2-06"><route_element name="2"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="6"/> </route>
+ <route src="C1-02" dst="C1-03"><route_element name="2"/><route_element name="10"/><route_element name="3"/> </route>
+ <route src="C1-02" dst="C2-07"><route_element name="2"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="7"/> </route>
+ <route src="C1-02" dst="C2-09"><route_element name="2"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="9"/> </route>
+ <route src="C1-02" dst="C2-08"><route_element name="2"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="8"/> </route>
+ <route src="C1-02" dst="C1-01"><route_element name="2"/><route_element name="10"/><route_element name="1"/> </route>
+ <route src="C1-02" dst="C1-04"><route_element name="2"/><route_element name="10"/><route_element name="4"/> </route>
+ <route src="C1-02" dst="C1-00"><route_element name="2"/><route_element name="10"/><route_element name="0"/> </route>
+ <route src="C1-02" dst="C2-05"><route_element name="2"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="5"/> </route>
+ <route src="C2-08" dst="C2-06"><route_element name="8"/><route_element name="11"/><route_element name="6"/> </route>
+ <route src="C2-08" dst="C1-03"><route_element name="8"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="3"/> </route>
+ <route src="C2-08" dst="C2-07"><route_element name="8"/><route_element name="11"/><route_element name="7"/> </route>
+ <route src="C2-08" dst="C2-09"><route_element name="8"/><route_element name="11"/><route_element name="9"/> </route>
+ <route src="C2-08" dst="C1-02"><route_element name="8"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="2"/> </route>
+ <route src="C2-08" dst="C1-01"><route_element name="8"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="1"/> </route>
+ <route src="C2-08" dst="C1-04"><route_element name="8"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="4"/> </route>
+ <route src="C2-08" dst="C1-00"><route_element name="8"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="0"/> </route>
+ <route src="C2-08" dst="C2-05"><route_element name="8"/><route_element name="11"/><route_element name="5"/> </route>
+ <route src="C1-01" dst="C2-06"><route_element name="1"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="6"/> </route>
+ <route src="C1-01" dst="C1-03"><route_element name="1"/><route_element name="10"/><route_element name="3"/> </route>
+ <route src="C1-01" dst="C2-07"><route_element name="1"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="7"/> </route>
+ <route src="C1-01" dst="C2-09"><route_element name="1"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="9"/> </route>
+ <route src="C1-01" dst="C1-02"><route_element name="1"/><route_element name="10"/><route_element name="2"/> </route>
+ <route src="C1-01" dst="C2-08"><route_element name="1"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="8"/> </route>
+ <route src="C1-01" dst="C1-04"><route_element name="1"/><route_element name="10"/><route_element name="4"/> </route>
+ <route src="C1-01" dst="C1-00"><route_element name="1"/><route_element name="10"/><route_element name="0"/> </route>
+ <route src="C1-01" dst="C2-05"><route_element name="1"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="5"/> </route>
+ <route src="C1-04" dst="C2-06"><route_element name="4"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="6"/> </route>
+ <route src="C1-04" dst="C1-03"><route_element name="4"/><route_element name="10"/><route_element name="3"/> </route>
+ <route src="C1-04" dst="C2-07"><route_element name="4"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="7"/> </route>
+ <route src="C1-04" dst="C2-09"><route_element name="4"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="9"/> </route>
+ <route src="C1-04" dst="C1-02"><route_element name="4"/><route_element name="10"/><route_element name="2"/> </route>
+ <route src="C1-04" dst="C2-08"><route_element name="4"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="8"/> </route>
+ <route src="C1-04" dst="C1-01"><route_element name="4"/><route_element name="10"/><route_element name="1"/> </route>
+ <route src="C1-04" dst="C1-00"><route_element name="4"/><route_element name="10"/><route_element name="0"/> </route>
+ <route src="C1-04" dst="C2-05"><route_element name="4"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="5"/> </route>
+ <route src="C1-00" dst="C2-06"><route_element name="0"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="6"/> </route>
+ <route src="C1-00" dst="C1-03"><route_element name="0"/><route_element name="10"/><route_element name="3"/> </route>
+ <route src="C1-00" dst="C2-07"><route_element name="0"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="7"/> </route>
+ <route src="C1-00" dst="C2-09"><route_element name="0"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="9"/> </route>
+ <route src="C1-00" dst="C1-02"><route_element name="0"/><route_element name="10"/><route_element name="2"/> </route>
+ <route src="C1-00" dst="C2-08"><route_element name="0"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="8"/> </route>
+ <route src="C1-00" dst="C1-01"><route_element name="0"/><route_element name="10"/><route_element name="1"/> </route>
+ <route src="C1-00" dst="C1-04"><route_element name="0"/><route_element name="10"/><route_element name="4"/> </route>
+ <route src="C1-00" dst="C2-05"><route_element name="0"/><route_element name="10"/><route_element name="12"/><route_element name="14"/><route_element name="13"/><route_element name="11"/><route_element name="5"/> </route>
+ <route src="C2-05" dst="C2-06"><route_element name="5"/><route_element name="11"/><route_element name="6"/> </route>
+ <route src="C2-05" dst="C1-03"><route_element name="5"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="3"/> </route>
+ <route src="C2-05" dst="C2-07"><route_element name="5"/><route_element name="11"/><route_element name="7"/> </route>
+ <route src="C2-05" dst="C2-09"><route_element name="5"/><route_element name="11"/><route_element name="9"/> </route>
+ <route src="C2-05" dst="C1-02"><route_element name="5"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="2"/> </route>
+ <route src="C2-05" dst="C2-08"><route_element name="5"/><route_element name="11"/><route_element name="8"/> </route>
+ <route src="C2-05" dst="C1-01"><route_element name="5"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="1"/> </route>
+ <route src="C2-05" dst="C1-04"><route_element name="5"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="4"/> </route>
+ <route src="C2-05" dst="C1-00"><route_element name="5"/><route_element name="11"/><route_element name="13"/><route_element name="14"/><route_element name="12"/><route_element name="10"/><route_element name="0"/> </route>
+</platform_description>
-INCLUDES= -I$(top_srcdir)/include
-AM_CFLAGS=-g
-EXTRA_DIST= small_platform.xml
+INCLUDES = -I$(top_srcdir)/include
+AM_CFLAGS = -g
+EXTRA_DIST = 2clusters.xml
-CLEANFILES=sd_test.trace
+CLEANFILES = sd_test.trace
-TESTS=test_simdag
-check_PROGRAMS=sd_test
+TESTS_ENVIRONMENT = $(top_builddir)/tools/tesh/tesh
-sd_test_SOURCES= sd_test.c
-sd_test_LDADD= $(top_builddir)/src/libsimgrid.la
+TESTS = test_simdag.tesh test_simdag2.tesh
+check_PROGRAMS = sd_test sd_test2
+
+bin_PROGRAMS =
+
+sd_test_SOURCES = sd_test.c
+sd_test_LDADD = $(top_builddir)/src/libsimgrid.la
+
+sd_test2_SOURCES = sd_test2.c
+sd_test2_LDADD = $(top_builddir)/src/libsimgrid.la
include $(top_srcdir)/acmacro/dist-files.mk
# into the distribution.
# It is intended to be included in all Makefile.am
+
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
-check_PROGRAMS = sd_test$(EXEEXT)
+check_PROGRAMS = sd_test$(EXEEXT) sd_test2$(EXEEXT)
+bin_PROGRAMS =
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
$(srcdir)/test_simdag.in $(top_srcdir)/acmacro/dist-files.mk
subdir = examples/simdag
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/src/gras_config.h
CONFIG_CLEAN_FILES = test_simdag
+am__installdirs = "$(DESTDIR)$(bindir)"
+binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
+PROGRAMS = $(bin_PROGRAMS)
am_sd_test_OBJECTS = sd_test.$(OBJEXT)
sd_test_OBJECTS = $(am_sd_test_OBJECTS)
sd_test_DEPENDENCIES = $(top_builddir)/src/libsimgrid.la
+am_sd_test2_OBJECTS = sd_test2.$(OBJEXT)
+sd_test2_OBJECTS = $(am_sd_test2_OBJECTS)
+sd_test2_DEPENDENCIES = $(top_builddir)/src/libsimgrid.la
DEFAULT_INCLUDES = -I. -I$(top_builddir)/src@am__isrc@
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
$(LDFLAGS) -o $@
-SOURCES = $(sd_test_SOURCES)
-DIST_SOURCES = $(sd_test_SOURCES)
+SOURCES = $(sd_test_SOURCES) $(sd_test2_SOURCES)
+DIST_SOURCES = $(sd_test_SOURCES) $(sd_test2_SOURCES)
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
top_srcdir = @top_srcdir@
INCLUDES = -I$(top_srcdir)/include
AM_CFLAGS = -g
-EXTRA_DIST = small_platform.xml
+EXTRA_DIST = 2clusters.xml
CLEANFILES = sd_test.trace
-TESTS = test_simdag
+TESTS_ENVIRONMENT = $(top_builddir)/tools/tesh/tesh
+TESTS = test_simdag.tesh test_simdag2.tesh
sd_test_SOURCES = sd_test.c
sd_test_LDADD = $(top_builddir)/src/libsimgrid.la
+sd_test2_SOURCES = sd_test2.c
+sd_test2_LDADD = $(top_builddir)/src/libsimgrid.la
all: all-am
.SUFFIXES:
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
test_simdag: $(top_builddir)/config.status $(srcdir)/test_simdag.in
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+install-binPROGRAMS: $(bin_PROGRAMS)
+ @$(NORMAL_INSTALL)
+ test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
+ @list='$(bin_PROGRAMS)'; for p in $$list; do \
+ p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
+ if test -f $$p \
+ || test -f $$p1 \
+ ; then \
+ f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
+ echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \
+ $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \
+ else :; fi; \
+ done
+
+uninstall-binPROGRAMS:
+ @$(NORMAL_UNINSTALL)
+ @list='$(bin_PROGRAMS)'; for p in $$list; do \
+ f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
+ echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
+ rm -f "$(DESTDIR)$(bindir)/$$f"; \
+ done
+
+clean-binPROGRAMS:
+ @list='$(bin_PROGRAMS)'; for p in $$list; do \
+ f=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
+ echo " rm -f $$p $$f"; \
+ rm -f $$p $$f ; \
+ done
clean-checkPROGRAMS:
@list='$(check_PROGRAMS)'; for p in $$list; do \
sd_test$(EXEEXT): $(sd_test_OBJECTS) $(sd_test_DEPENDENCIES)
@rm -f sd_test$(EXEEXT)
$(LINK) $(sd_test_OBJECTS) $(sd_test_LDADD) $(LIBS)
+sd_test2$(EXEEXT): $(sd_test2_OBJECTS) $(sd_test2_DEPENDENCIES)
+ @rm -f sd_test2$(EXEEXT)
+ $(LINK) $(sd_test2_OBJECTS) $(sd_test2_LDADD) $(LIBS)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
-rm -f *.tab.c
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sd_test.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sd_test2.Po@am__quote@
.c.o:
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
$(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS)
$(MAKE) $(AM_MAKEFLAGS) check-TESTS
check: check-am
-all-am: Makefile
+all-am: Makefile $(PROGRAMS)
installdirs:
+ for dir in "$(DESTDIR)$(bindir)"; do \
+ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
+ done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
-clean-am: clean-checkPROGRAMS clean-generic clean-libtool \
- mostlyclean-am
+clean-am: clean-binPROGRAMS clean-checkPROGRAMS clean-generic \
+ clean-libtool mostlyclean-am
distclean: distclean-am
-rm -rf ./$(DEPDIR)
install-dvi: install-dvi-am
-install-exec-am:
+install-exec-am: install-binPROGRAMS
install-html: install-html-am
ps-am:
-uninstall-am:
+uninstall-am: uninstall-binPROGRAMS
.MAKE: install-am install-strip
.PHONY: CTAGS GTAGS all all-am check check-TESTS check-am clean \
- clean-checkPROGRAMS clean-generic clean-libtool ctags \
- distclean distclean-compile distclean-generic \
- distclean-libtool distclean-tags distdir dvi dvi-am html \
- html-am info info-am install install-am install-data \
- install-data-am install-dvi install-dvi-am install-exec \
- install-exec-am install-html install-html-am install-info \
- install-info-am install-man install-pdf install-pdf-am \
- install-ps install-ps-am install-strip installcheck \
- installcheck-am installdirs maintainer-clean \
- maintainer-clean-generic mostlyclean mostlyclean-compile \
- mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
- tags uninstall uninstall-am
+ clean-binPROGRAMS clean-checkPROGRAMS clean-generic \
+ clean-libtool ctags distclean distclean-compile \
+ distclean-generic distclean-libtool distclean-tags distdir dvi \
+ dvi-am html html-am info info-am install install-am \
+ install-binPROGRAMS install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
+ pdf pdf-am ps ps-am tags uninstall uninstall-am \
+ uninstall-binPROGRAMS
dist-files:
--- /dev/null
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "simdag/simdag.h"
+#include "xbt/log.h"
+
+XBT_LOG_NEW_DEFAULT_CATEGORY(sd_test,
+ "Logging specific to this SimDag example");
+
+static int nameCompareHosts(const void *n1, const void *n2)
+{
+ return strcmp(SD_workstation_get_name(*((SD_workstation_t *)n1)),
+ SD_workstation_get_name(*((SD_workstation_t *)n2)));
+}
+
+int main(int argc, char **argv) {
+ int i,j;
+ SD_task_t *changed_tasks;
+
+ /* initialisation of SD */
+ SD_init(&argc, argv);
+
+ /* creation of the environment */
+ SD_create_environment(argv[1]);
+
+ /* getting platform infos */
+ int n_hosts = SD_workstation_get_number();
+ const SD_workstation_t * hosts= SD_workstation_get_list();
+
+ /* sorting hosts by hostname */
+ qsort((void *)hosts,n_hosts,
+ sizeof(SD_workstation_t),nameCompareHosts);
+
+ /* creation of the tasks */
+ SD_task_t taskInit = SD_task_create("Initial",NULL,1.0);
+ SD_task_t PtoPComm1 = SD_task_create("PtoP Comm 1", NULL, 1.0);
+ SD_task_t PtoPComm2 = SD_task_create("PtoP Comm 2", NULL, 1.0);
+ SD_task_t ParComp_wocomm = SD_task_create("Par Comp without comm", NULL, 1.0);
+ SD_task_t IntraRedist = SD_task_create("intra redist", NULL, 1.0);
+ SD_task_t ParComp_wcomm1 = SD_task_create("Par Comp with comm 1", NULL, 1.0);
+ SD_task_t InterRedist = SD_task_create("inter redist", NULL, 1.0);
+ SD_task_t taskFinal = SD_task_create("Final",NULL,1.0);
+ SD_task_t ParComp_wcomm2 = SD_task_create("Par Comp with comm 2", NULL, 1.0);
+
+ /* creation of the dependencies */
+ SD_task_dependency_add(NULL, NULL, taskInit, PtoPComm1);
+ SD_task_dependency_add(NULL, NULL, taskInit, PtoPComm2);
+ SD_task_dependency_add(NULL, NULL, PtoPComm1, ParComp_wocomm);
+ SD_task_dependency_add(NULL, NULL, ParComp_wocomm, IntraRedist);
+ SD_task_dependency_add(NULL, NULL, IntraRedist, ParComp_wcomm1);
+ SD_task_dependency_add(NULL, NULL, ParComp_wcomm1, InterRedist);
+ SD_task_dependency_add(NULL, NULL, InterRedist, ParComp_wcomm2);
+ SD_task_dependency_add(NULL, NULL, ParComp_wcomm2, taskFinal);
+ SD_task_dependency_add(NULL, NULL, PtoPComm2, taskFinal);
+
+ /* scheduling parameters */
+
+ const double no_cost[] = {1.0, 1.0};
+
+ /* large point-to-point communication (0.1 sec duration) */
+ double PtoPcomm1_table[] = { 0, 12500000, 0, 0 }; /* 100Mb */
+ SD_workstation_t PtoPcomm1_hosts[] = {hosts[0],hosts[1]};
+
+ /* small point-to-point communication (0.01 sec duration) */
+ double PtoPcomm2_table[] = { 0, 1250000, 0, 0 }; /* 10Mb */
+ SD_workstation_t PtoPcomm2_hosts[] = {hosts[0],hosts[2]};
+
+ /* parallel task without intra communications (1 sec duration) */
+ double ParComp_wocomm_cost[] = {1e+9,1e+9,1e+9,1e+9,1e+9}; /* 1 Gflop per Proc */
+ double *ParComp_wocomm_table = (double*) calloc (25, sizeof(double));
+ SD_workstation_t ParComp_wocomm_hosts[5];
+ for (i=0; i<5;i++){
+ ParComp_wocomm_hosts[i]=hosts[i];
+ }
+
+ /* redistribution within a cluster (small latencies) */
+ /* each host send (4*2.5Mb =) 10Mb */
+ /* bandwidth is shared between 5 flows (0.05sec duration) */
+ double *IntraRedist_cost = (double*) calloc (5, sizeof(double));
+ double *IntraRedist_table = (double*) calloc (25, sizeof(double));
+ for (i=0;i<5;i++){
+ for (j=0;j<5;j++){
+ if (i==j)
+ IntraRedist_table[i*5+j] = 0.;
+ else
+ IntraRedist_table[i*5+j] = 312500.; /* 2.5Mb */
+ }
+ }
+
+ SD_workstation_t IntraRedist_hosts[5];
+ for (i=0; i<5;i++){
+ IntraRedist_hosts[i]=hosts[i];
+ }
+
+ /* parallel task with intra communications */
+ /* Computation domination (1 sec duration) */
+ double ParComp_wcomm1_cost[] = {1e+9,1e+9,1e+9,1e+9,1e+9}; /* 1 Gflop per Proc */
+ double *ParComp_wcomm1_table = (double*) calloc (25, sizeof(double));
+ SD_workstation_t ParComp_wcomm1_hosts[5];
+ for (i=0; i<5;i++){
+ ParComp_wcomm1_hosts[i]=hosts[i];
+ }
+
+ for (i=0;i<5;i++){
+ for (j=0;j<5;j++){
+ if (i==j)
+ ParComp_wcomm1_table[i*5+j] = 0.;
+ else
+ ParComp_wcomm1_table[i*5+j] = 312500.; /* 2.5Mb */
+ }
+ }
+
+ /* inter cluster redistribution (big latency on the backbone) */
+ /* (0.5sec duration without latency impact)*/
+ double *InterRedist_cost = (double*) calloc (10, sizeof(double));
+ double *InterRedist_table = (double*) calloc (100, sizeof(double));
+ for (i=0;i<5;i++){
+ InterRedist_table[i*10+i+5] = 1250000.; /* 10Mb */
+ }
+
+ /* parallel task with intra communications */
+ /* Communication domination (0.1 sec duration) */
+ double ParComp_wcomm2_cost[] = {1e+8,1e+8,1e+8,1e+8,1e+8}; /* 1 Gflop per Proc (0.02sec duration) */
+ double *ParComp_wcomm2_table = (double*) calloc (25, sizeof(double));
+ SD_workstation_t ParComp_wcomm2_hosts[5];
+ for (i=0; i<5;i++){
+ ParComp_wcomm2_hosts[i]=hosts[i+5];
+ }
+
+ for (i=0;i<5;i++){
+ for (j=0;j<5;j++){
+ if (i==j)
+ ParComp_wcomm2_table[i*5+j] = 0.;
+ else
+ ParComp_wcomm2_table[i*5+j] = 625000.; /* 5Mb */
+ }
+ }
+
+ /* Sequential task */
+ double final_cost = 5e+9;
+
+ /* scheduling the tasks */
+ SD_task_schedule(taskInit, 1, hosts, no_cost, no_cost, -1.0);
+ SD_task_schedule(PtoPComm1, 2, PtoPcomm1_hosts, no_cost, PtoPcomm1_table, -1.0);
+ SD_task_schedule(PtoPComm2, 2, PtoPcomm2_hosts, no_cost, PtoPcomm2_table, -1.0);
+ SD_task_schedule(ParComp_wocomm, 5, ParComp_wocomm_hosts, ParComp_wocomm_cost, ParComp_wocomm_table, -1.0);
+ SD_task_schedule(IntraRedist, 5, IntraRedist_hosts, IntraRedist_cost, IntraRedist_table, -1.0);
+ SD_task_schedule(ParComp_wcomm1, 5, ParComp_wcomm1_hosts, ParComp_wcomm1_cost, ParComp_wcomm1_table, -1.0);
+ SD_task_schedule(InterRedist, 10, hosts, InterRedist_cost, InterRedist_table, -1.0);
+ SD_task_schedule(ParComp_wcomm2, 5, ParComp_wcomm2_hosts, ParComp_wcomm2_cost, ParComp_wcomm2_table, -1.0);
+ SD_task_schedule(taskFinal, 1, &(hosts[9]), &final_cost, no_cost, -1.0);
+
+ /* let's launch the simulation! */
+ changed_tasks = SD_simulate(-1.0);
+
+ free(changed_tasks);
+
+ free(ParComp_wocomm_table);
+ free(IntraRedist_cost);
+ free(IntraRedist_table);
+ free(ParComp_wcomm1_table);
+ free(InterRedist_cost);
+ free(InterRedist_table);
+ free(ParComp_wcomm2_table);
+
+ SD_task_destroy(taskInit);
+ SD_task_destroy(PtoPComm1);
+ SD_task_destroy(PtoPComm2);
+ SD_task_destroy(ParComp_wocomm);
+ SD_task_destroy(IntraRedist);
+ SD_task_destroy(ParComp_wcomm1);
+ SD_task_destroy(InterRedist);
+ SD_task_destroy(ParComp_wcomm2);
+ SD_task_destroy(taskFinal);
+
+ SD_exit();
+ return 0;
+}
+
--- /dev/null
+#! ./tesh
+
+p Simple test of simdag
+
+$ $SG_TEST_EXENV sd_test ${srcdir:=.}/../msg/msg_platform.xml
+> [0.000000] surf/workstation_ptask_L07.c:917: [surf_workstation/WARNING] This model does not take latency into account.
+> [0.000000] [sd_test/INFO] Computation time for 2000000.000000 flops on Fernand: 0.090289
+> [0.000000] [sd_test/INFO] Computation time for 1000000.000000 flops on Ethernet: 0.010194
+> [0.000000] [sd_test/INFO] Route between Fernand and Ethernet:
+> [0.000000] surf/workstation_ptask_L07.c:553: [surf_workstation/WARNING] This model does not take latency into account.
+> [0.000000] [sd_test/INFO] Link 109: latency = 0.000000, bandwidth = 1858000.000000
+> [0.000000] [sd_test/INFO] Link 33: latency = 0.000000, bandwidth = 34285625.000000
+> [0.000000] [sd_test/INFO] Link 32: latency = 0.000000, bandwidth = 11618875.000000
+> [0.000000] [sd_test/INFO] Link 30: latency = 0.000000, bandwidth = 10099625.000000
+> [0.000000] [sd_test/INFO] Link 27: latency = 0.000000, bandwidth = 8015125.000000
+> [0.000000] [sd_test/INFO] Link 28: latency = 0.000000, bandwidth = 15376875.000000
+> [0.000000] [sd_test/INFO] Link 19: latency = 0.000000, bandwidth = 34285625.000000
+> [0.000000] [sd_test/INFO] Link 7: latency = 0.000000, bandwidth = 34285625.000000
+> [0.000000] [sd_test/INFO] Link 6: latency = 0.000000, bandwidth = 34285625.000000
+> [0.000000] [sd_test/INFO] Link 11: latency = 0.000000, bandwidth = 118682500.000000
+> [0.000000] [sd_test/INFO] Link 44: latency = 0.000000, bandwidth = 10314625.000000
+> [0.000000] [sd_test/INFO] Link 47: latency = 0.000000, bandwidth = 10314625.000000
+> [0.000000] [sd_test/INFO] Link 118: latency = 0.000000, bandwidth = 1467625.000000
+> [0.000000] [sd_test/INFO] Route latency = 0.000000, route bandwidth = 1467625.000000
+> [0.000000] [sd_test/INFO] Communication time for 2000000.000000 bytes between Fernand and Ethernet: 1.362746
+> [0.000000] [sd_test/INFO] Communication time for 3000000.000000 bytes between Ethernet and Fernand: 2.044119
+> [0.000000] [sd_test/INFO] Estimated time for 'Task D': 123.258786
+> [0.000000] [sd_kernel/INFO] Starting simulation...
+> [0.000000] [sd_kernel/INFO] Executing task 'Task D'
+> [204.411890] [sd_kernel/INFO] Task 'Task D' done
+> [204.411890] [sd_kernel/INFO] Executing task 'Task B'
+> [204.411890] [sd_kernel/INFO] Executing task 'Task C'
+> [340.686483] [sd_kernel/INFO] Task 'Task B' done
+> [340.686483] [sd_task/INFO] Watch point reached with task 'Task B'!
+> [340.686483] [sd_kernel/INFO] Simulation finished
+> [340.686483] [sd_test/INFO] Task 'Task D' start time: -1.000000, finish time: 204.411890
+> [340.686483] [sd_test/INFO] Task 'Task B' start time: -1.000000, finish time: 340.686483
--- /dev/null
+#! ./tesh
+
+p Simple test of simdag
+
+$ $SG_TEST_EXENV sd_test2 ${srcdir:=.}/2clusters.xml
+> [0.000000] surf/workstation_ptask_L07.c:917: [surf_workstation/WARNING] This model does not take latency into account.
+> [0.000000] [sd_kernel/INFO] Starting simulation...
+> [0.000000] [sd_kernel/INFO] Executing task 'Initial'
+> [0.000000] [sd_kernel/INFO] Task 'Initial' done
+> [0.000000] [sd_kernel/INFO] Executing task 'PtoP Comm 1'
+> [0.000000] [sd_kernel/INFO] Executing task 'PtoP Comm 2'
+> [0.020000] [sd_kernel/INFO] Task 'PtoP Comm 2' done
+> [0.115000] [sd_kernel/INFO] Task 'PtoP Comm 1' done
+> [0.115000] [sd_kernel/INFO] Executing task 'Par Comp without comm'
+> [1.115000] [sd_kernel/INFO] Task 'Par Comp without comm' done
+> [1.115000] [sd_kernel/INFO] Executing task 'intra redist'
+> [1.165000] [sd_kernel/INFO] Task 'intra redist' done
+> [1.165000] [sd_kernel/INFO] Executing task 'Par Comp with comm 1'
+> [2.165000] [sd_kernel/INFO] Task 'Par Comp with comm 1' done
+> [2.165000] [sd_kernel/INFO] Executing task 'inter redist'
+> [2.215000] [sd_kernel/INFO] Task 'inter redist' done
+> [2.215000] [sd_kernel/INFO] Executing task 'Par Comp with comm 2'
+> [2.315000] [sd_kernel/INFO] Task 'Par Comp with comm 2' done
+> [2.315000] [sd_kernel/INFO] Executing task 'Final'
+> [3.315000] [sd_kernel/INFO] Task 'Final' done
+> [3.315000] [sd_kernel/INFO] Simulation finished
+