From c281d400a7c848c061c23bd01300073bac759e04 Mon Sep 17 00:00:00 2001 From: mquinson Date: Fri, 8 Jun 2007 13:52:22 +0000 Subject: [PATCH] Do not use configure to generate the test script, factorize some Makefile.am stuff in examples/gras/tests.mk, use full precision in simulation timestamping and use two simulation tests for 32bits and 64bits since messages will be different in both cases, leading to different timestampings git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@3592 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- examples/gras/Makefile.am | 3 +- examples/gras/Makefile.in | 5 +- examples/gras/all2all/.cvsignore | 1 - examples/gras/all2all/Makefile.am | 5 +- examples/gras/all2all/Makefile.in | 45 ++-- examples/gras/all2all/{test_rl.in => test_rl} | 20 +- examples/gras/all2all/test_sg.in | 61 ------ examples/gras/all2all/test_sg_32 | 61 ++++++ examples/gras/all2all/test_sg_64 | 61 ++++++ examples/gras/chrono/.cvsignore | 2 - examples/gras/chrono/Makefile.am | 3 +- examples/gras/chrono/Makefile.in | 43 ++-- examples/gras/chrono/test_rl | 3 + examples/gras/chrono/test_rl.in | 3 - examples/gras/chrono/test_sg.in | 3 - examples/gras/chrono/test_sg_32 | 3 + examples/gras/chrono/test_sg_64 | 3 + examples/gras/mmrpc/.cvsignore | 2 - examples/gras/mmrpc/Makefile.am | 5 +- examples/gras/mmrpc/Makefile.in | 45 ++-- examples/gras/mmrpc/{test_rl.in => test_rl} | 4 +- examples/gras/mmrpc/test_sg.in | 10 - examples/gras/mmrpc/test_sg_32 | 9 + examples/gras/mmrpc/test_sg_64 | 9 + .../mutual_exclusion/simple_token/.cvsignore | 2 - .../mutual_exclusion/simple_token/Makefile.am | 5 +- .../mutual_exclusion/simple_token/Makefile.in | 45 ++-- .../mutual_exclusion/simple_token/test_rl | 22 ++ .../mutual_exclusion/simple_token/test_rl.in | 22 -- .../simple_token/{test_sg.in => test_sg_32} | 2 +- .../mutual_exclusion/simple_token/test_sg_64 | 12 ++ examples/gras/p2p/Makefile.in | 2 + examples/gras/p2p/can/Makefile.in | 2 + examples/gras/p2p/chord/Makefile.in | 2 + examples/gras/ping/.cvsignore | 2 - examples/gras/ping/Makefile.am | 5 +- examples/gras/ping/Makefile.in | 45 ++-- examples/gras/ping/{test_rl.in => test_rl} | 4 +- examples/gras/ping/test_sg.in | 21 -- examples/gras/ping/test_sg_32 | 19 ++ examples/gras/ping/test_sg_64 | 19 ++ examples/gras/pmm/.cvsignore | 1 - examples/gras/pmm/Makefile.am | 5 +- examples/gras/pmm/Makefile.in | 45 ++-- examples/gras/pmm/{test_rl.in => test_rl} | 20 +- examples/gras/pmm/test_sg.in | 200 ------------------ examples/gras/pmm/test_sg_32 | 200 ++++++++++++++++++ examples/gras/pmm/test_sg_64 | 200 ++++++++++++++++++ examples/gras/rpc/.cvsignore | 2 - examples/gras/rpc/Makefile.am | 6 +- examples/gras/rpc/Makefile.in | 45 ++-- examples/gras/rpc/{test_rl.in => test_rl} | 6 +- examples/gras/rpc/{test_sg.in => test_sg_32} | 2 +- examples/gras/rpc/test_sg_64 | 43 ++++ examples/gras/tests.mk | 29 +++ examples/gras/timer/.cvsignore | 2 - examples/gras/timer/Makefile.am | 3 +- examples/gras/timer/Makefile.in | 43 ++-- examples/gras/timer/{test_rl.in => test_rl} | 2 +- .../gras/timer/{test_sg.in => test_sg_32} | 2 +- examples/gras/timer/test_sg_64 | 16 ++ 61 files changed, 1020 insertions(+), 492 deletions(-) rename examples/gras/all2all/{test_rl.in => test_rl} (66%) delete mode 100755 examples/gras/all2all/test_sg.in create mode 100755 examples/gras/all2all/test_sg_32 create mode 100755 examples/gras/all2all/test_sg_64 create mode 100755 examples/gras/chrono/test_rl delete mode 100755 examples/gras/chrono/test_rl.in delete mode 100755 examples/gras/chrono/test_sg.in create mode 100755 examples/gras/chrono/test_sg_32 create mode 100755 examples/gras/chrono/test_sg_64 rename examples/gras/mmrpc/{test_rl.in => test_rl} (70%) delete mode 100755 examples/gras/mmrpc/test_sg.in create mode 100755 examples/gras/mmrpc/test_sg_32 create mode 100755 examples/gras/mmrpc/test_sg_64 create mode 100755 examples/gras/mutual_exclusion/simple_token/test_rl delete mode 100755 examples/gras/mutual_exclusion/simple_token/test_rl.in rename examples/gras/mutual_exclusion/simple_token/{test_sg.in => test_sg_32} (85%) create mode 100755 examples/gras/mutual_exclusion/simple_token/test_sg_64 rename examples/gras/ping/{test_rl.in => test_rl} (81%) delete mode 100755 examples/gras/ping/test_sg.in create mode 100755 examples/gras/ping/test_sg_32 create mode 100755 examples/gras/ping/test_sg_64 rename examples/gras/pmm/{test_rl.in => test_rl} (82%) delete mode 100755 examples/gras/pmm/test_sg.in create mode 100755 examples/gras/pmm/test_sg_32 create mode 100755 examples/gras/pmm/test_sg_64 rename examples/gras/rpc/{test_rl.in => test_rl} (86%) rename examples/gras/rpc/{test_sg.in => test_sg_32} (95%) create mode 100755 examples/gras/rpc/test_sg_64 create mode 100644 examples/gras/tests.mk rename examples/gras/timer/{test_rl.in => test_rl} (92%) rename examples/gras/timer/{test_sg.in => test_sg_32} (92%) create mode 100755 examples/gras/timer/test_sg_64 diff --git a/examples/gras/Makefile.am b/examples/gras/Makefile.am index e5ffe5fff0..8f6267904f 100644 --- a/examples/gras/Makefile.am +++ b/examples/gras/Makefile.am @@ -1,3 +1,4 @@ -SUBDIRS= ping rpc timer chrono mutual_exclusion/simple_token mmrpc p2p all2all pmm +SUBDIRS= ping rpc timer chrono mutual_exclusion/simple_token mmrpc all2all pmm +# p2p include $(top_srcdir)/acmacro/dist-files.mk diff --git a/examples/gras/Makefile.in b/examples/gras/Makefile.in index 8e16fdb683..c6522901c9 100644 --- a/examples/gras/Makefile.in +++ b/examples/gras/Makefile.in @@ -108,6 +108,8 @@ FFLAGS = @FFLAGS@ FLEXML = @FLEXML@ GRAMINE_MODE_FALSE = @GRAMINE_MODE_FALSE@ GRAMINE_MODE_TRUE = @GRAMINE_MODE_TRUE@ +GRAS_ARCH_32_BITS_FALSE = @GRAS_ARCH_32_BITS_FALSE@ +GRAS_ARCH_32_BITS_TRUE = @GRAS_ARCH_32_BITS_TRUE@ GRAS_DEP = @GRAS_DEP@ GREP = @GREP@ GTNETS_CFLAGS = @GTNETS_CFLAGS@ @@ -215,7 +217,7 @@ target_alias = @target_alias@ target_cpu = @target_cpu@ target_os = @target_os@ target_vendor = @target_vendor@ -SUBDIRS = ping rpc timer chrono mutual_exclusion/simple_token mmrpc p2p all2all pmm +SUBDIRS = ping rpc timer chrono mutual_exclusion/simple_token mmrpc all2all pmm all: all-recursive .SUFFIXES: @@ -530,6 +532,7 @@ dist-files: @for n in $(DISTFILES) ; do echo $(SRCFILE)$$n; done @echo @for n in $(DIST_SUBDIRS) ; do if [ x$$n != x. ] ; then $(MAKE) -C $$n dist-files SRCFILE=$(SRCFILE)$$n/ ; fi; done +# p2p # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: diff --git a/examples/gras/all2all/.cvsignore b/examples/gras/all2all/.cvsignore index 1c36863a16..22311b0b26 100644 --- a/examples/gras/all2all/.cvsignore +++ b/examples/gras/all2all/.cvsignore @@ -1,6 +1,5 @@ all2all_sender all2all_receiver *_simulator .deps .libs Makefile _*.c -test_sg test_rl *.mk *.trace *.log diff --git a/examples/gras/all2all/Makefile.am b/examples/gras/all2all/Makefile.am index 846340b61d..846ff54111 100644 --- a/examples/gras/all2all/Makefile.am +++ b/examples/gras/all2all/Makefile.am @@ -1,7 +1,6 @@ INCLUDES= -I$(top_srcdir)/include -TESTS= test_rl test_sg -TESTS_ENVIRONMENT=../../../tools/tesh/tesh -EXTRA_DIST=all2all.xml test_sg.in test_rl.in +EXTRA_DIST=all2all.xml +include $(top_srcdir)/examples/gras/tests.mk # AUTOMAKE variable definition noinst_PROGRAMS=all2all_sender all2all_receiver all2all_simulator diff --git a/examples/gras/all2all/Makefile.in b/examples/gras/all2all/Makefile.in index dbd0992997..e886ab0e27 100644 --- a/examples/gras/all2all/Makefile.in +++ b/examples/gras/all2all/Makefile.in @@ -14,6 +14,19 @@ @SET_MAKE@ +# This file factorize all the testing infrastructure for the GRAS examples +# +# it's made complicated by the facts that: +# - we use tesh, we need to find it back +# - we don't want to generate the test_* files with configure, so we +# have to declare some variables in front of the shell command +# running the test +# - we want to fully test the surf on the way. So, we have to ask for +# full precision timestamps in the tests. On the other hand, +# message size differ when we are on 32bits and when we are on +# 64bits (obviously), so we have to maintain 2 tests per directory +# and pick the right one here. + # Makefile chunk which allows to display the files which should be included # into the distribution. @@ -42,12 +55,12 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ -noinst_PROGRAMS = all2all_sender$(EXEEXT) all2all_receiver$(EXEEXT) \ - all2all_simulator$(EXEEXT) DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ - $(srcdir)/test_rl.in $(srcdir)/test_sg.in \ $(top_srcdir)/acmacro/dist-files.mk \ + $(top_srcdir)/examples/gras/tests.mk \ $(top_srcdir)/examples/temps-gras-stub.mk +noinst_PROGRAMS = all2all_sender$(EXEEXT) all2all_receiver$(EXEEXT) \ + all2all_simulator$(EXEEXT) subdir = examples/gras/all2all ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acmacro/ac_func_snprintf.m4 \ @@ -62,7 +75,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/src/gras_config.h -CONFIG_CLEAN_FILES = test_sg test_rl +CONFIG_CLEAN_FILES = PROGRAMS = $(noinst_PROGRAMS) am_all2all_receiver_OBJECTS = _all2all_receiver.$(OBJEXT) \ all2all.$(OBJEXT) @@ -132,6 +145,8 @@ FFLAGS = @FFLAGS@ FLEXML = @FLEXML@ GRAMINE_MODE_FALSE = @GRAMINE_MODE_FALSE@ GRAMINE_MODE_TRUE = @GRAMINE_MODE_TRUE@ +GRAS_ARCH_32_BITS_FALSE = @GRAS_ARCH_32_BITS_FALSE@ +GRAS_ARCH_32_BITS_TRUE = @GRAS_ARCH_32_BITS_TRUE@ GRAS_DEP = @GRAS_DEP@ GREP = @GREP@ GTNETS_CFLAGS = @GTNETS_CFLAGS@ @@ -240,9 +255,10 @@ target_cpu = @target_cpu@ target_os = @target_os@ target_vendor = @target_vendor@ INCLUDES = -I$(top_srcdir)/include -TESTS = test_rl test_sg -TESTS_ENVIRONMENT = ../../../tools/tesh/tesh -EXTRA_DIST = all2all.xml test_sg.in test_rl.in +EXTRA_DIST = all2all.xml test_rl test_sg_32 test_sg_64 +@GRAS_ARCH_32_BITS_FALSE@TESTS = test_rl test_sg_64 +@GRAS_ARCH_32_BITS_TRUE@TESTS = test_rl test_sg_32 +TESTS_ENVIRONMENT = srcdir=$(srcdir) EXEEXT=$(EXEEXT) @top_builddir@/tools/tesh/tesh all2all_simulator_SOURCES = _all2all_simulator.c all2all.c all2all_simulator_LDADD = $(top_builddir)/src/libsimgrid.la all2all_sender_SOURCES = _all2all_sender.c all2all.c @@ -261,7 +277,7 @@ all: all-am .SUFFIXES: .SUFFIXES: .c .lo .o .obj -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/examples/temps-gras-stub.mk $(top_srcdir)/acmacro/dist-files.mk $(am__configure_deps) +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/examples/gras/tests.mk $(top_srcdir)/examples/temps-gras-stub.mk $(top_srcdir)/acmacro/dist-files.mk $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ @@ -290,10 +306,6 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -test_sg: $(top_builddir)/config.status $(srcdir)/test_sg.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ -test_rl: $(top_builddir)/config.status $(srcdir)/test_rl.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ clean-noinstPROGRAMS: @list='$(noinst_PROGRAMS)'; for p in $$list; do \ @@ -475,7 +487,7 @@ check-TESTS: $(TESTS) else :; fi distdir: $(DISTFILES) - $(mkdir_p) $(distdir)/../../../acmacro $(distdir)/../../../examples + $(mkdir_p) $(distdir)/../../../acmacro $(distdir)/../../../examples $(distdir)/../../../examples/gras @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ @@ -596,6 +608,13 @@ uninstall-am: uninstall-info-am mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags uninstall uninstall-am uninstall-info-am +@GRAS_ARCH_32_BITS_TRUE@test-sg: +@GRAS_ARCH_32_BITS_TRUE@ $(TESTS_ENVIRONMENT) test_sg_32 +@GRAS_ARCH_32_BITS_FALSE@test-sg: +@GRAS_ARCH_32_BITS_FALSE@ $(TESTS_ENVIRONMENT) test_sg_32 + +test-rl: + $(TESTS_ENVIRONMENT) test_rl $(foreach proc, $(PROCESSES), _$(NAME)_$(proc).c) _$(NAME)_simulator.c: $(srcdir)/$(NAME).xml $(top_builddir)/tools/gras/gras_stub_generator@EXEEXT@ [ x@EXEEXT@ = x ] || exenv=wine; $$exenv $(top_builddir)/tools/gras/gras_stub_generator@EXEEXT@ $(NAME) $(srcdir)/$(NAME).xml diff --git a/examples/gras/all2all/test_rl.in b/examples/gras/all2all/test_rl similarity index 66% rename from examples/gras/all2all/test_rl.in rename to examples/gras/all2all/test_rl index d2e49005c5..43ee8611cd 100755 --- a/examples/gras/all2all/test_rl.in +++ b/examples/gras/all2all/test_rl @@ -1,6 +1,6 @@ # The receivers, waiting for 5 messages ! set timeout 20 -& $SG_TEST_EXENV ./all2all_receiver 4000 5 --log=root.fmt:%m%n +& $SG_TEST_EXENV ./all2all_receiver$EXEEXT 4000 5 --log=root.fmt:%m%n > Listening on port 4000 (expecting 5 messages) > Got Data from 127.0.0.1:0 (still 4 to go) > Got Data from 127.0.0.1:0 (still 3 to go) @@ -10,7 +10,7 @@ > Exiting GRAS ! set timeout 20 -& $SG_TEST_EXENV ./all2all_receiver 4001 5 --log=root.fmt:%m%n +& $SG_TEST_EXENV ./all2all_receiver$EXEEXT 4001 5 --log=root.fmt:%m%n > Listening on port 4001 (expecting 5 messages) > Got Data from 127.0.0.1:0 (still 4 to go) > Got Data from 127.0.0.1:0 (still 3 to go) @@ -20,7 +20,7 @@ > Exiting GRAS ! set timeout 20 -& $SG_TEST_EXENV ./all2all_receiver 4002 5 --log=root.fmt:%m%n +& $SG_TEST_EXENV ./all2all_receiver$EXEEXT 4002 5 --log=root.fmt:%m%n > Listening on port 4002 (expecting 5 messages) > Got Data from 127.0.0.1:0 (still 4 to go) > Got Data from 127.0.0.1:0 (still 3 to go) @@ -30,7 +30,7 @@ > Exiting GRAS ! set timeout 20 -& $SG_TEST_EXENV ./all2all_receiver 4003 5 --log=root.fmt:%m%n +& $SG_TEST_EXENV ./all2all_receiver$EXEEXT 4003 5 --log=root.fmt:%m%n > Listening on port 4003 (expecting 5 messages) > Got Data from 127.0.0.1:0 (still 4 to go) > Got Data from 127.0.0.1:0 (still 3 to go) @@ -40,7 +40,7 @@ > Exiting GRAS ! set timeout 20 -& $SG_TEST_EXENV ./all2all_receiver 4004 5 --log=root.fmt:%m%n +& $SG_TEST_EXENV ./all2all_receiver$EXEEXT 4004 5 --log=root.fmt:%m%n > Listening on port 4004 (expecting 5 messages) > Got Data from 127.0.0.1:0 (still 4 to go) > Got Data from 127.0.0.1:0 (still 3 to go) @@ -52,7 +52,7 @@ $ sleep 1 # Five time a sender -$ $SG_TEST_EXENV ./all2all_sender 127.0.0.1:4000 127.0.0.1:4001 127.0.0.1:4002 127.0.0.1:4003 127.0.0.1:4004 512 --log=root.fmt:%m%n +$ $SG_TEST_EXENV ./all2all_sender$EXEEXT 127.0.0.1:4000 127.0.0.1:4001 127.0.0.1:4002 127.0.0.1:4003 127.0.0.1:4004 512 --log=root.fmt:%m%n > Launch current node > Sent Data > Sent Data @@ -61,7 +61,7 @@ $ $SG_TEST_EXENV ./all2all_sender 127.0.0.1:4000 127.0.0.1:4001 127.0.0.1:4002 1 > Sent Data > Exiting GRAS -$ $SG_TEST_EXENV ./all2all_sender 127.0.0.1:4000 127.0.0.1:4001 127.0.0.1:4002 127.0.0.1:4003 127.0.0.1:4004 512 --log=root.fmt:%m%n +$ $SG_TEST_EXENV ./all2all_sender$EXEEXT 127.0.0.1:4000 127.0.0.1:4001 127.0.0.1:4002 127.0.0.1:4003 127.0.0.1:4004 512 --log=root.fmt:%m%n > Launch current node > Sent Data > Sent Data @@ -70,7 +70,7 @@ $ $SG_TEST_EXENV ./all2all_sender 127.0.0.1:4000 127.0.0.1:4001 127.0.0.1:4002 1 > Sent Data > Exiting GRAS -$ $SG_TEST_EXENV ./all2all_sender 127.0.0.1:4000 127.0.0.1:4001 127.0.0.1:4002 127.0.0.1:4003 127.0.0.1:4004 512 --log=root.fmt:%m%n +$ $SG_TEST_EXENV ./all2all_sender$EXEEXT 127.0.0.1:4000 127.0.0.1:4001 127.0.0.1:4002 127.0.0.1:4003 127.0.0.1:4004 512 --log=root.fmt:%m%n > Launch current node > Sent Data > Sent Data @@ -79,7 +79,7 @@ $ $SG_TEST_EXENV ./all2all_sender 127.0.0.1:4000 127.0.0.1:4001 127.0.0.1:4002 1 > Sent Data > Exiting GRAS -$ $SG_TEST_EXENV ./all2all_sender 127.0.0.1:4000 127.0.0.1:4001 127.0.0.1:4002 127.0.0.1:4003 127.0.0.1:4004 512 --log=root.fmt:%m%n +$ $SG_TEST_EXENV ./all2all_sender$EXEEXT 127.0.0.1:4000 127.0.0.1:4001 127.0.0.1:4002 127.0.0.1:4003 127.0.0.1:4004 512 --log=root.fmt:%m%n > Launch current node > Sent Data > Sent Data @@ -88,7 +88,7 @@ $ $SG_TEST_EXENV ./all2all_sender 127.0.0.1:4000 127.0.0.1:4001 127.0.0.1:4002 1 > Sent Data > Exiting GRAS -$ $SG_TEST_EXENV ./all2all_sender 127.0.0.1:4000 127.0.0.1:4001 127.0.0.1:4002 127.0.0.1:4003 127.0.0.1:4004 512 --log=root.fmt:%m%n +$ $SG_TEST_EXENV ./all2all_sender$EXEEXT 127.0.0.1:4000 127.0.0.1:4001 127.0.0.1:4002 127.0.0.1:4003 127.0.0.1:4004 512 --log=root.fmt:%m%n > Launch current node > Sent Data > Sent Data diff --git a/examples/gras/all2all/test_sg.in b/examples/gras/all2all/test_sg.in deleted file mode 100755 index d0b863dcdd..0000000000 --- a/examples/gras/all2all/test_sg.in +++ /dev/null @@ -1,61 +0,0 @@ -$ $SG_TEST_EXENV ./all2all_simulator@EXEEXT@ @top_srcdir@/examples/msg/small_platform.xml @srcdir@/all2all.xml --log=root.fmt:"'[%h:%t:(%i) %.3r] [%c/%p] %m%n'" -> [Tremblay:sender:(1) 0.000] [all2all/INFO] Launch current node -> [Tremblay:receiver:(2) 0.000] [all2all/INFO] Listening on port 4000 (expecting 4 messages) -> [Jupiter:sender:(3) 0.000] [all2all/INFO] Launch current node -> [Jupiter:receiver:(4) 0.000] [all2all/INFO] Listening on port 4000 (expecting 4 messages) -> [Fafard:sender:(5) 0.000] [all2all/INFO] Launch current node -> [Fafard:receiver:(6) 0.000] [all2all/INFO] Listening on port 4000 (expecting 4 messages) -> [Ginette:sender:(7) 0.000] [all2all/INFO] Launch current node -> [Ginette:receiver:(8) 0.000] [all2all/INFO] Listening on port 4000 (expecting 4 messages) -> [Bourassa:sender:(9) 0.000] [all2all/INFO] Launch current node -> [Bourassa:receiver:(10) 0.000] [all2all/INFO] Listening on port 4000 (expecting 4 messages) -> [Jupiter:sender:(3) 0.012] [all2all/INFO] Sent Data from Jupiter to Tremblay -> [Tremblay:sender:(1) 0.012] [all2all/INFO] Sent Data from Tremblay to Jupiter -> [Tremblay:receiver:(2) 0.012] [all2all/INFO] Got Data from Jupiter:0 (still 3 to go) -> [Jupiter:receiver:(4) 0.012] [all2all/INFO] Got Data from Tremblay:0 (still 3 to go) -> [Fafard:sender:(5) 0.014] [all2all/INFO] Sent Data from Fafard to Tremblay -> [Tremblay:receiver:(2) 0.014] [all2all/INFO] Got Data from Fafard:0 (still 2 to go) -> [Ginette:sender:(7) 0.015] [all2all/INFO] Sent Data from Ginette to Tremblay -> [Tremblay:receiver:(2) 0.015] [all2all/INFO] Got Data from Ginette:0 (still 1 to go) -> [Jupiter:sender:(3) 0.015] [all2all/INFO] Sent Data from Jupiter to Fafard -> [Fafard:receiver:(6) 0.015] [all2all/INFO] Got Data from Jupiter:0 (still 3 to go) -> [Bourassa:sender:(9) 0.017] [all2all/INFO] Sent Data from Bourassa to Tremblay -> [Tremblay:receiver:(2) 0.017] [all2all/INFO] Got Data from Bourassa:0 (still 0 to go) -> [Tremblay:receiver:(2) 0.017] [gras/INFO] Exiting GRAS -> [Fafard:sender:(5) 0.017] [all2all/INFO] Sent Data from Fafard to Jupiter -> [Tremblay:sender:(1) 0.017] [all2all/INFO] Sent Data from Tremblay to Fafard -> [Jupiter:receiver:(4) 0.017] [all2all/INFO] Got Data from Fafard:0 (still 2 to go) -> [Fafard:receiver:(6) 0.017] [all2all/INFO] Got Data from Tremblay:0 (still 2 to go) -> [Jupiter:sender:(3) 0.018] [all2all/INFO] Sent Data from Jupiter to Ginette -> [Ginette:receiver:(8) 0.018] [all2all/INFO] Got Data from Jupiter:0 (still 3 to go) -> [Fafard:sender:(5) 0.019] [all2all/INFO] Sent Data from Fafard to Ginette -> [Ginette:receiver:(8) 0.019] [all2all/INFO] Got Data from Fafard:0 (still 2 to go) -> [Ginette:sender:(7) 0.020] [all2all/INFO] Sent Data from Ginette to Jupiter -> [Jupiter:receiver:(4) 0.020] [all2all/INFO] Got Data from Ginette:0 (still 1 to go) -> [Tremblay:sender:(1) 0.021] [all2all/INFO] Sent Data from Tremblay to Ginette -> [Ginette:receiver:(8) 0.021] [all2all/INFO] Got Data from Tremblay:0 (still 1 to go) -> [Ginette:sender:(7) 0.021] [all2all/INFO] Sent Data from Ginette to Fafard -> [Fafard:receiver:(6) 0.021] [all2all/INFO] Got Data from Ginette:0 (still 1 to go) -> [Jupiter:sender:(3) 0.022] [all2all/INFO] Sent Data from Jupiter to Bourassa -> [Jupiter:sender:(3) 0.022] [gras/INFO] Exiting GRAS -> [Bourassa:receiver:(10) 0.022] [all2all/INFO] Got Data from Jupiter:0 (still 3 to go) -> [Fafard:sender:(5) 0.022] [all2all/INFO] Sent Data from Fafard to Bourassa -> [Fafard:sender:(5) 0.022] [gras/INFO] Exiting GRAS -> [Bourassa:receiver:(10) 0.022] [all2all/INFO] Got Data from Fafard:0 (still 2 to go) -> [Bourassa:sender:(9) 0.024] [all2all/INFO] Sent Data from Bourassa to Jupiter -> [Jupiter:receiver:(4) 0.024] [all2all/INFO] Got Data from Bourassa:0 (still 0 to go) -> [Jupiter:receiver:(4) 0.024] [gras/INFO] Exiting GRAS -> [Tremblay:sender:(1) 0.024] [all2all/INFO] Sent Data from Tremblay to Bourassa -> [Tremblay:sender:(1) 0.024] [gras/INFO] Exiting GRAS -> [Bourassa:receiver:(10) 0.024] [all2all/INFO] Got Data from Tremblay:0 (still 1 to go) -> [Bourassa:sender:(9) 0.024] [all2all/INFO] Sent Data from Bourassa to Fafard -> [Fafard:receiver:(6) 0.024] [all2all/INFO] Got Data from Bourassa:0 (still 0 to go) -> [Fafard:receiver:(6) 0.024] [gras/INFO] Exiting GRAS -> [Ginette:sender:(7) 0.026] [all2all/INFO] Sent Data from Ginette to Bourassa -> [Ginette:sender:(7) 0.026] [gras/INFO] Exiting GRAS -> [Bourassa:sender:(9) 0.026] [all2all/INFO] Sent Data from Bourassa to Ginette -> [Bourassa:sender:(9) 0.026] [gras/INFO] Exiting GRAS -> [Bourassa:receiver:(10) 0.026] [all2all/INFO] Got Data from Ginette:0 (still 0 to go) -> [Bourassa:receiver:(10) 0.026] [gras/INFO] Exiting GRAS -> [Ginette:receiver:(8) 0.026] [all2all/INFO] Got Data from Bourassa:0 (still 0 to go) -> [Ginette:receiver:(8) 0.026] [gras/INFO] Exiting GRAS diff --git a/examples/gras/all2all/test_sg_32 b/examples/gras/all2all/test_sg_32 new file mode 100755 index 0000000000..5487230e67 --- /dev/null +++ b/examples/gras/all2all/test_sg_32 @@ -0,0 +1,61 @@ +$ $SG_TEST_EXENV ./all2all_simulator$EXEEXT $srcdir/../../msg/small_platform.xml $srcdir/all2all.xml +> [Tremblay:sender:(1) 0.000000] [all2all/INFO] Launch current node +> [Tremblay:receiver:(2) 0.000000] [all2all/INFO] Listening on port 4000 (expecting 4 messages) +> [Jupiter:sender:(3) 0.000000] [all2all/INFO] Launch current node +> [Jupiter:receiver:(4) 0.000000] [all2all/INFO] Listening on port 4000 (expecting 4 messages) +> [Fafard:sender:(5) 0.000000] [all2all/INFO] Launch current node +> [Fafard:receiver:(6) 0.000000] [all2all/INFO] Listening on port 4000 (expecting 4 messages) +> [Ginette:sender:(7) 0.000000] [all2all/INFO] Launch current node +> [Ginette:receiver:(8) 0.000000] [all2all/INFO] Listening on port 4000 (expecting 4 messages) +> [Bourassa:sender:(9) 0.000000] [all2all/INFO] Launch current node +> [Bourassa:receiver:(10) 0.000000] [all2all/INFO] Listening on port 4000 (expecting 4 messages) +> [Jupiter:sender:(3) 0.011604] [all2all/INFO] Sent Data from Jupiter to Tremblay +> [Tremblay:sender:(1) 0.011604] [all2all/INFO] Sent Data from Tremblay to Jupiter +> [Tremblay:receiver:(2) 0.011604] [all2all/INFO] Got Data from Jupiter:0 (still 3 to go) +> [Jupiter:receiver:(4) 0.011604] [all2all/INFO] Got Data from Tremblay:0 (still 3 to go) +> [Fafard:sender:(5) 0.013681] [all2all/INFO] Sent Data from Fafard to Tremblay +> [Tremblay:receiver:(2) 0.013681] [all2all/INFO] Got Data from Fafard:0 (still 2 to go) +> [Ginette:sender:(7) 0.015019] [all2all/INFO] Sent Data from Ginette to Tremblay +> [Tremblay:receiver:(2) 0.015019] [all2all/INFO] Got Data from Ginette:0 (still 1 to go) +> [Jupiter:sender:(3) 0.015218] [all2all/INFO] Sent Data from Jupiter to Fafard +> [Fafard:receiver:(6) 0.015218] [all2all/INFO] Got Data from Jupiter:0 (still 3 to go) +> [Bourassa:sender:(9) 0.017074] [all2all/INFO] Sent Data from Bourassa to Tremblay +> [Tremblay:receiver:(2) 0.017074] [all2all/INFO] Got Data from Bourassa:0 (still 0 to go) +> [Tremblay:receiver:(2) 0.017074] [gras/INFO] Exiting GRAS +> [Fafard:sender:(5) 0.017295] [all2all/INFO] Sent Data from Fafard to Jupiter +> [Tremblay:sender:(1) 0.017295] [all2all/INFO] Sent Data from Tremblay to Fafard +> [Jupiter:receiver:(4) 0.017295] [all2all/INFO] Got Data from Fafard:0 (still 2 to go) +> [Fafard:receiver:(6) 0.017295] [all2all/INFO] Got Data from Tremblay:0 (still 2 to go) +> [Jupiter:sender:(3) 0.018092] [all2all/INFO] Sent Data from Jupiter to Ginette +> [Ginette:receiver:(8) 0.018092] [all2all/INFO] Got Data from Jupiter:0 (still 3 to go) +> [Fafard:sender:(5) 0.019416] [all2all/INFO] Sent Data from Fafard to Ginette +> [Ginette:receiver:(8) 0.019416] [all2all/INFO] Got Data from Fafard:0 (still 2 to go) +> [Ginette:sender:(7) 0.020169] [all2all/INFO] Sent Data from Ginette to Jupiter +> [Jupiter:receiver:(4) 0.020169] [all2all/INFO] Got Data from Ginette:0 (still 1 to go) +> [Tremblay:sender:(1) 0.020754] [all2all/INFO] Sent Data from Tremblay to Ginette +> [Ginette:receiver:(8) 0.020754] [all2all/INFO] Got Data from Tremblay:0 (still 1 to go) +> [Ginette:sender:(7) 0.021494] [all2all/INFO] Sent Data from Ginette to Fafard +> [Fafard:receiver:(6) 0.021494] [all2all/INFO] Got Data from Ginette:0 (still 1 to go) +> [Jupiter:sender:(3) 0.021684] [all2all/INFO] Sent Data from Jupiter to Bourassa +> [Jupiter:sender:(3) 0.021684] [gras/INFO] Exiting GRAS +> [Bourassa:receiver:(10) 0.021684] [all2all/INFO] Got Data from Jupiter:0 (still 3 to go) +> [Fafard:sender:(5) 0.022267] [all2all/INFO] Sent Data from Fafard to Bourassa +> [Fafard:sender:(5) 0.022267] [gras/INFO] Exiting GRAS +> [Bourassa:receiver:(10) 0.022267] [all2all/INFO] Got Data from Fafard:0 (still 2 to go) +> [Bourassa:sender:(9) 0.023761] [all2all/INFO] Sent Data from Bourassa to Jupiter +> [Jupiter:receiver:(4) 0.023761] [all2all/INFO] Got Data from Bourassa:0 (still 0 to go) +> [Jupiter:receiver:(4) 0.023761] [gras/INFO] Exiting GRAS +> [Tremblay:sender:(1) 0.024343] [all2all/INFO] Sent Data from Tremblay to Bourassa +> [Tremblay:sender:(1) 0.024343] [gras/INFO] Exiting GRAS +> [Bourassa:receiver:(10) 0.024343] [all2all/INFO] Got Data from Tremblay:0 (still 1 to go) +> [Bourassa:sender:(9) 0.024345] [all2all/INFO] Sent Data from Bourassa to Fafard +> [Fafard:receiver:(6) 0.024345] [all2all/INFO] Got Data from Bourassa:0 (still 0 to go) +> [Fafard:receiver:(6) 0.024345] [gras/INFO] Exiting GRAS +> [Ginette:sender:(7) 0.025670] [all2all/INFO] Sent Data from Ginette to Bourassa +> [Ginette:sender:(7) 0.025670] [gras/INFO] Exiting GRAS +> [Bourassa:sender:(9) 0.025670] [all2all/INFO] Sent Data from Bourassa to Ginette +> [Bourassa:sender:(9) 0.025670] [gras/INFO] Exiting GRAS +> [Bourassa:receiver:(10) 0.025670] [all2all/INFO] Got Data from Ginette:0 (still 0 to go) +> [Bourassa:receiver:(10) 0.025670] [gras/INFO] Exiting GRAS +> [Ginette:receiver:(8) 0.025670] [all2all/INFO] Got Data from Bourassa:0 (still 0 to go) +> [Ginette:receiver:(8) 0.025670] [gras/INFO] Exiting GRAS diff --git a/examples/gras/all2all/test_sg_64 b/examples/gras/all2all/test_sg_64 new file mode 100755 index 0000000000..5487230e67 --- /dev/null +++ b/examples/gras/all2all/test_sg_64 @@ -0,0 +1,61 @@ +$ $SG_TEST_EXENV ./all2all_simulator$EXEEXT $srcdir/../../msg/small_platform.xml $srcdir/all2all.xml +> [Tremblay:sender:(1) 0.000000] [all2all/INFO] Launch current node +> [Tremblay:receiver:(2) 0.000000] [all2all/INFO] Listening on port 4000 (expecting 4 messages) +> [Jupiter:sender:(3) 0.000000] [all2all/INFO] Launch current node +> [Jupiter:receiver:(4) 0.000000] [all2all/INFO] Listening on port 4000 (expecting 4 messages) +> [Fafard:sender:(5) 0.000000] [all2all/INFO] Launch current node +> [Fafard:receiver:(6) 0.000000] [all2all/INFO] Listening on port 4000 (expecting 4 messages) +> [Ginette:sender:(7) 0.000000] [all2all/INFO] Launch current node +> [Ginette:receiver:(8) 0.000000] [all2all/INFO] Listening on port 4000 (expecting 4 messages) +> [Bourassa:sender:(9) 0.000000] [all2all/INFO] Launch current node +> [Bourassa:receiver:(10) 0.000000] [all2all/INFO] Listening on port 4000 (expecting 4 messages) +> [Jupiter:sender:(3) 0.011604] [all2all/INFO] Sent Data from Jupiter to Tremblay +> [Tremblay:sender:(1) 0.011604] [all2all/INFO] Sent Data from Tremblay to Jupiter +> [Tremblay:receiver:(2) 0.011604] [all2all/INFO] Got Data from Jupiter:0 (still 3 to go) +> [Jupiter:receiver:(4) 0.011604] [all2all/INFO] Got Data from Tremblay:0 (still 3 to go) +> [Fafard:sender:(5) 0.013681] [all2all/INFO] Sent Data from Fafard to Tremblay +> [Tremblay:receiver:(2) 0.013681] [all2all/INFO] Got Data from Fafard:0 (still 2 to go) +> [Ginette:sender:(7) 0.015019] [all2all/INFO] Sent Data from Ginette to Tremblay +> [Tremblay:receiver:(2) 0.015019] [all2all/INFO] Got Data from Ginette:0 (still 1 to go) +> [Jupiter:sender:(3) 0.015218] [all2all/INFO] Sent Data from Jupiter to Fafard +> [Fafard:receiver:(6) 0.015218] [all2all/INFO] Got Data from Jupiter:0 (still 3 to go) +> [Bourassa:sender:(9) 0.017074] [all2all/INFO] Sent Data from Bourassa to Tremblay +> [Tremblay:receiver:(2) 0.017074] [all2all/INFO] Got Data from Bourassa:0 (still 0 to go) +> [Tremblay:receiver:(2) 0.017074] [gras/INFO] Exiting GRAS +> [Fafard:sender:(5) 0.017295] [all2all/INFO] Sent Data from Fafard to Jupiter +> [Tremblay:sender:(1) 0.017295] [all2all/INFO] Sent Data from Tremblay to Fafard +> [Jupiter:receiver:(4) 0.017295] [all2all/INFO] Got Data from Fafard:0 (still 2 to go) +> [Fafard:receiver:(6) 0.017295] [all2all/INFO] Got Data from Tremblay:0 (still 2 to go) +> [Jupiter:sender:(3) 0.018092] [all2all/INFO] Sent Data from Jupiter to Ginette +> [Ginette:receiver:(8) 0.018092] [all2all/INFO] Got Data from Jupiter:0 (still 3 to go) +> [Fafard:sender:(5) 0.019416] [all2all/INFO] Sent Data from Fafard to Ginette +> [Ginette:receiver:(8) 0.019416] [all2all/INFO] Got Data from Fafard:0 (still 2 to go) +> [Ginette:sender:(7) 0.020169] [all2all/INFO] Sent Data from Ginette to Jupiter +> [Jupiter:receiver:(4) 0.020169] [all2all/INFO] Got Data from Ginette:0 (still 1 to go) +> [Tremblay:sender:(1) 0.020754] [all2all/INFO] Sent Data from Tremblay to Ginette +> [Ginette:receiver:(8) 0.020754] [all2all/INFO] Got Data from Tremblay:0 (still 1 to go) +> [Ginette:sender:(7) 0.021494] [all2all/INFO] Sent Data from Ginette to Fafard +> [Fafard:receiver:(6) 0.021494] [all2all/INFO] Got Data from Ginette:0 (still 1 to go) +> [Jupiter:sender:(3) 0.021684] [all2all/INFO] Sent Data from Jupiter to Bourassa +> [Jupiter:sender:(3) 0.021684] [gras/INFO] Exiting GRAS +> [Bourassa:receiver:(10) 0.021684] [all2all/INFO] Got Data from Jupiter:0 (still 3 to go) +> [Fafard:sender:(5) 0.022267] [all2all/INFO] Sent Data from Fafard to Bourassa +> [Fafard:sender:(5) 0.022267] [gras/INFO] Exiting GRAS +> [Bourassa:receiver:(10) 0.022267] [all2all/INFO] Got Data from Fafard:0 (still 2 to go) +> [Bourassa:sender:(9) 0.023761] [all2all/INFO] Sent Data from Bourassa to Jupiter +> [Jupiter:receiver:(4) 0.023761] [all2all/INFO] Got Data from Bourassa:0 (still 0 to go) +> [Jupiter:receiver:(4) 0.023761] [gras/INFO] Exiting GRAS +> [Tremblay:sender:(1) 0.024343] [all2all/INFO] Sent Data from Tremblay to Bourassa +> [Tremblay:sender:(1) 0.024343] [gras/INFO] Exiting GRAS +> [Bourassa:receiver:(10) 0.024343] [all2all/INFO] Got Data from Tremblay:0 (still 1 to go) +> [Bourassa:sender:(9) 0.024345] [all2all/INFO] Sent Data from Bourassa to Fafard +> [Fafard:receiver:(6) 0.024345] [all2all/INFO] Got Data from Bourassa:0 (still 0 to go) +> [Fafard:receiver:(6) 0.024345] [gras/INFO] Exiting GRAS +> [Ginette:sender:(7) 0.025670] [all2all/INFO] Sent Data from Ginette to Bourassa +> [Ginette:sender:(7) 0.025670] [gras/INFO] Exiting GRAS +> [Bourassa:sender:(9) 0.025670] [all2all/INFO] Sent Data from Bourassa to Ginette +> [Bourassa:sender:(9) 0.025670] [gras/INFO] Exiting GRAS +> [Bourassa:receiver:(10) 0.025670] [all2all/INFO] Got Data from Ginette:0 (still 0 to go) +> [Bourassa:receiver:(10) 0.025670] [gras/INFO] Exiting GRAS +> [Ginette:receiver:(8) 0.025670] [all2all/INFO] Got Data from Bourassa:0 (still 0 to go) +> [Ginette:receiver:(8) 0.025670] [gras/INFO] Exiting GRAS diff --git a/examples/gras/chrono/.cvsignore b/examples/gras/chrono/.cvsignore index 689bc2c559..c46003a43d 100644 --- a/examples/gras/chrono/.cvsignore +++ b/examples/gras/chrono/.cvsignore @@ -1,5 +1,3 @@ .deps .libs Makefile _*.c chrono_multiplier chrono_simulator -test_sg -test_rl chrono.mk chrono.trace diff --git a/examples/gras/chrono/Makefile.am b/examples/gras/chrono/Makefile.am index 0425e1160e..7b9b69399c 100644 --- a/examples/gras/chrono/Makefile.am +++ b/examples/gras/chrono/Makefile.am @@ -1,8 +1,7 @@ INCLUDES= -I$(top_srcdir)/include AM_CFLAGS=-g -TESTS= test_rl test_sg -TESTS_ENVIRONMENT=../../../tools/tesh/tesh EXTRA_DIST=chrono.xml +include $(top_srcdir)/examples/gras/tests.mk # AUTOMAKE variable definition noinst_PROGRAMS=chrono_simulator chrono_multiplier diff --git a/examples/gras/chrono/Makefile.in b/examples/gras/chrono/Makefile.in index fa244a564b..b093ea6342 100644 --- a/examples/gras/chrono/Makefile.in +++ b/examples/gras/chrono/Makefile.in @@ -14,6 +14,19 @@ @SET_MAKE@ +# This file factorize all the testing infrastructure for the GRAS examples +# +# it's made complicated by the facts that: +# - we use tesh, we need to find it back +# - we don't want to generate the test_* files with configure, so we +# have to declare some variables in front of the shell command +# running the test +# - we want to fully test the surf on the way. So, we have to ask for +# full precision timestamps in the tests. On the other hand, +# message size differ when we are on 32bits and when we are on +# 64bits (obviously), so we have to maintain 2 tests per directory +# and pick the right one here. + # Makefile chunk which allows to display the files which should be included # into the distribution. @@ -42,11 +55,11 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ -noinst_PROGRAMS = chrono_simulator$(EXEEXT) chrono_multiplier$(EXEEXT) DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ - $(srcdir)/test_rl.in $(srcdir)/test_sg.in \ $(top_srcdir)/acmacro/dist-files.mk \ + $(top_srcdir)/examples/gras/tests.mk \ $(top_srcdir)/examples/temps-gras-stub.mk +noinst_PROGRAMS = chrono_simulator$(EXEEXT) chrono_multiplier$(EXEEXT) subdir = examples/gras/chrono ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acmacro/ac_func_snprintf.m4 \ @@ -61,7 +74,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/src/gras_config.h -CONFIG_CLEAN_FILES = test_sg test_rl +CONFIG_CLEAN_FILES = PROGRAMS = $(noinst_PROGRAMS) am_chrono_multiplier_OBJECTS = _chrono_multiplier.$(OBJEXT) \ chrono.$(OBJEXT) @@ -126,6 +139,8 @@ FFLAGS = @FFLAGS@ FLEXML = @FLEXML@ GRAMINE_MODE_FALSE = @GRAMINE_MODE_FALSE@ GRAMINE_MODE_TRUE = @GRAMINE_MODE_TRUE@ +GRAS_ARCH_32_BITS_FALSE = @GRAS_ARCH_32_BITS_FALSE@ +GRAS_ARCH_32_BITS_TRUE = @GRAS_ARCH_32_BITS_TRUE@ GRAS_DEP = @GRAS_DEP@ GREP = @GREP@ GTNETS_CFLAGS = @GTNETS_CFLAGS@ @@ -234,9 +249,10 @@ target_cpu = @target_cpu@ target_os = @target_os@ target_vendor = @target_vendor@ INCLUDES = -I$(top_srcdir)/include -TESTS = test_rl test_sg -TESTS_ENVIRONMENT = ../../../tools/tesh/tesh -EXTRA_DIST = chrono.xml +EXTRA_DIST = chrono.xml test_rl test_sg_32 test_sg_64 +@GRAS_ARCH_32_BITS_FALSE@TESTS = test_rl test_sg_64 +@GRAS_ARCH_32_BITS_TRUE@TESTS = test_rl test_sg_32 +TESTS_ENVIRONMENT = srcdir=$(srcdir) EXEEXT=$(EXEEXT) @top_builddir@/tools/tesh/tesh chrono_simulator_SOURCES = _chrono_simulator.c chrono.c chrono_simulator_LDADD = $(top_builddir)/src/libsimgrid.la chrono_multiplier_SOURCES = _chrono_multiplier.c chrono.c @@ -253,7 +269,7 @@ all: all-am .SUFFIXES: .SUFFIXES: .c .lo .o .obj -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/examples/temps-gras-stub.mk $(top_srcdir)/acmacro/dist-files.mk $(am__configure_deps) +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/examples/gras/tests.mk $(top_srcdir)/examples/temps-gras-stub.mk $(top_srcdir)/acmacro/dist-files.mk $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ @@ -282,10 +298,6 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -test_sg: $(top_builddir)/config.status $(srcdir)/test_sg.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ -test_rl: $(top_builddir)/config.status $(srcdir)/test_rl.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ clean-noinstPROGRAMS: @list='$(noinst_PROGRAMS)'; for p in $$list; do \ @@ -463,7 +475,7 @@ check-TESTS: $(TESTS) else :; fi distdir: $(DISTFILES) - $(mkdir_p) $(distdir)/../../../acmacro $(distdir)/../../../examples + $(mkdir_p) $(distdir)/../../../acmacro $(distdir)/../../../examples $(distdir)/../../../examples/gras @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ @@ -584,6 +596,13 @@ uninstall-am: uninstall-info-am mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags uninstall uninstall-am uninstall-info-am +@GRAS_ARCH_32_BITS_TRUE@test-sg: +@GRAS_ARCH_32_BITS_TRUE@ $(TESTS_ENVIRONMENT) test_sg_32 +@GRAS_ARCH_32_BITS_FALSE@test-sg: +@GRAS_ARCH_32_BITS_FALSE@ $(TESTS_ENVIRONMENT) test_sg_32 + +test-rl: + $(TESTS_ENVIRONMENT) test_rl $(foreach proc, $(PROCESSES), _$(NAME)_$(proc).c) _$(NAME)_simulator.c: $(srcdir)/$(NAME).xml $(top_builddir)/tools/gras/gras_stub_generator@EXEEXT@ [ x@EXEEXT@ = x ] || exenv=wine; $$exenv $(top_builddir)/tools/gras/gras_stub_generator@EXEEXT@ $(NAME) $(srcdir)/$(NAME).xml diff --git a/examples/gras/chrono/test_rl b/examples/gras/chrono/test_rl new file mode 100755 index 0000000000..cc7b75eace --- /dev/null +++ b/examples/gras/chrono/test_rl @@ -0,0 +1,3 @@ + +! output display +$ $SG_TEST_EXENV ./chrono_multiplier$EXEEXT --log=root.fmt:%m%n $@ diff --git a/examples/gras/chrono/test_rl.in b/examples/gras/chrono/test_rl.in deleted file mode 100755 index 5474cd5b34..0000000000 --- a/examples/gras/chrono/test_rl.in +++ /dev/null @@ -1,3 +0,0 @@ - -! output display -$ $SG_TEST_EXENV ./chrono_multiplier@EXEEXT@ --log=root.fmt:%m%n $@ diff --git a/examples/gras/chrono/test_sg.in b/examples/gras/chrono/test_sg.in deleted file mode 100755 index 01ea14de94..0000000000 --- a/examples/gras/chrono/test_sg.in +++ /dev/null @@ -1,3 +0,0 @@ - -! output display -$ $SG_TEST_EXENV ./chrono_simulator@EXEEXT@ @top_srcdir@/examples/msg/small_platform.xml @srcdir@/chrono.xml diff --git a/examples/gras/chrono/test_sg_32 b/examples/gras/chrono/test_sg_32 new file mode 100755 index 0000000000..849f8c3baf --- /dev/null +++ b/examples/gras/chrono/test_sg_32 @@ -0,0 +1,3 @@ + +! output display +$ $SG_TEST_EXENV ./chrono_simulator$EXEEXT $srcdir/../../msg/small_platform.xml $srcdir/chrono.xml diff --git a/examples/gras/chrono/test_sg_64 b/examples/gras/chrono/test_sg_64 new file mode 100755 index 0000000000..849f8c3baf --- /dev/null +++ b/examples/gras/chrono/test_sg_64 @@ -0,0 +1,3 @@ + +! output display +$ $SG_TEST_EXENV ./chrono_simulator$EXEEXT $srcdir/../../msg/small_platform.xml $srcdir/chrono.xml diff --git a/examples/gras/mmrpc/.cvsignore b/examples/gras/mmrpc/.cvsignore index a98d30e5e8..9ab176ea31 100644 --- a/examples/gras/mmrpc/.cvsignore +++ b/examples/gras/mmrpc/.cvsignore @@ -1,5 +1,3 @@ .deps .libs Makefile _*.c mmrpc_server mmrpc_client mmrpc_simulator -test_sg -test_rl mmrpc.mk mmrpc.trace diff --git a/examples/gras/mmrpc/Makefile.am b/examples/gras/mmrpc/Makefile.am index d343f3a0fa..37b7bdf269 100644 --- a/examples/gras/mmrpc/Makefile.am +++ b/examples/gras/mmrpc/Makefile.am @@ -1,7 +1,6 @@ INCLUDES= -I$(top_srcdir)/include -TESTS= test_rl test_sg -TESTS_ENVIRONMENT=../../../tools/tesh/tesh -EXTRA_DIST=mmrpc.xml mmrpc.h $(TESTS) +EXTRA_DIST=mmrpc.xml mmrpc.h +include $(top_srcdir)/examples/gras/tests.mk # AUTOMAKE variable definition noinst_PROGRAMS=mmrpc_client mmrpc_server mmrpc_simulator diff --git a/examples/gras/mmrpc/Makefile.in b/examples/gras/mmrpc/Makefile.in index c792105de1..e8d118f001 100644 --- a/examples/gras/mmrpc/Makefile.in +++ b/examples/gras/mmrpc/Makefile.in @@ -14,6 +14,19 @@ @SET_MAKE@ +# This file factorize all the testing infrastructure for the GRAS examples +# +# it's made complicated by the facts that: +# - we use tesh, we need to find it back +# - we don't want to generate the test_* files with configure, so we +# have to declare some variables in front of the shell command +# running the test +# - we want to fully test the surf on the way. So, we have to ask for +# full precision timestamps in the tests. On the other hand, +# message size differ when we are on 32bits and when we are on +# 64bits (obviously), so we have to maintain 2 tests per directory +# and pick the right one here. + # Makefile chunk which allows to display the files which should be included # into the distribution. @@ -42,12 +55,12 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ -noinst_PROGRAMS = mmrpc_client$(EXEEXT) mmrpc_server$(EXEEXT) \ - mmrpc_simulator$(EXEEXT) DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ - $(srcdir)/test_rl.in $(srcdir)/test_sg.in \ $(top_srcdir)/acmacro/dist-files.mk \ + $(top_srcdir)/examples/gras/tests.mk \ $(top_srcdir)/examples/temps-gras-stub.mk +noinst_PROGRAMS = mmrpc_client$(EXEEXT) mmrpc_server$(EXEEXT) \ + mmrpc_simulator$(EXEEXT) subdir = examples/gras/mmrpc ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acmacro/ac_func_snprintf.m4 \ @@ -62,7 +75,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/src/gras_config.h -CONFIG_CLEAN_FILES = test_sg test_rl +CONFIG_CLEAN_FILES = PROGRAMS = $(noinst_PROGRAMS) am_mmrpc_client_OBJECTS = _mmrpc_client.$(OBJEXT) \ mmrpc_common.$(OBJEXT) mmrpc_client.$(OBJEXT) @@ -133,6 +146,8 @@ FFLAGS = @FFLAGS@ FLEXML = @FLEXML@ GRAMINE_MODE_FALSE = @GRAMINE_MODE_FALSE@ GRAMINE_MODE_TRUE = @GRAMINE_MODE_TRUE@ +GRAS_ARCH_32_BITS_FALSE = @GRAS_ARCH_32_BITS_FALSE@ +GRAS_ARCH_32_BITS_TRUE = @GRAS_ARCH_32_BITS_TRUE@ GRAS_DEP = @GRAS_DEP@ GREP = @GREP@ GTNETS_CFLAGS = @GTNETS_CFLAGS@ @@ -241,9 +256,10 @@ target_cpu = @target_cpu@ target_os = @target_os@ target_vendor = @target_vendor@ INCLUDES = -I$(top_srcdir)/include -TESTS = test_rl test_sg -TESTS_ENVIRONMENT = ../../../tools/tesh/tesh -EXTRA_DIST = mmrpc.xml mmrpc.h $(TESTS) +EXTRA_DIST = mmrpc.xml mmrpc.h test_rl test_sg_32 test_sg_64 +@GRAS_ARCH_32_BITS_FALSE@TESTS = test_rl test_sg_64 +@GRAS_ARCH_32_BITS_TRUE@TESTS = test_rl test_sg_32 +TESTS_ENVIRONMENT = srcdir=$(srcdir) EXEEXT=$(EXEEXT) @top_builddir@/tools/tesh/tesh mmrpc_simulator_SOURCES = _mmrpc_simulator.c mmrpc_common.c mmrpc_client.c mmrpc_server.c mmrpc_simulator_LDADD = $(top_builddir)/src/libsimgrid.la mmrpc_client_SOURCES = _mmrpc_client.c mmrpc_common.c mmrpc_client.c @@ -262,7 +278,7 @@ all: all-am .SUFFIXES: .SUFFIXES: .c .lo .o .obj -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/examples/temps-gras-stub.mk $(top_srcdir)/acmacro/dist-files.mk $(am__configure_deps) +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/examples/gras/tests.mk $(top_srcdir)/examples/temps-gras-stub.mk $(top_srcdir)/acmacro/dist-files.mk $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ @@ -291,10 +307,6 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -test_sg: $(top_builddir)/config.status $(srcdir)/test_sg.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ -test_rl: $(top_builddir)/config.status $(srcdir)/test_rl.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ clean-noinstPROGRAMS: @list='$(noinst_PROGRAMS)'; for p in $$list; do \ @@ -478,7 +490,7 @@ check-TESTS: $(TESTS) else :; fi distdir: $(DISTFILES) - $(mkdir_p) $(distdir)/../../../acmacro $(distdir)/../../../examples + $(mkdir_p) $(distdir)/../../../acmacro $(distdir)/../../../examples $(distdir)/../../../examples/gras @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ @@ -599,6 +611,13 @@ uninstall-am: uninstall-info-am mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags uninstall uninstall-am uninstall-info-am +@GRAS_ARCH_32_BITS_TRUE@test-sg: +@GRAS_ARCH_32_BITS_TRUE@ $(TESTS_ENVIRONMENT) test_sg_32 +@GRAS_ARCH_32_BITS_FALSE@test-sg: +@GRAS_ARCH_32_BITS_FALSE@ $(TESTS_ENVIRONMENT) test_sg_32 + +test-rl: + $(TESTS_ENVIRONMENT) test_rl $(foreach proc, $(PROCESSES), _$(NAME)_$(proc).c) _$(NAME)_simulator.c: $(srcdir)/$(NAME).xml $(top_builddir)/tools/gras/gras_stub_generator@EXEEXT@ [ x@EXEEXT@ = x ] || exenv=wine; $$exenv $(top_builddir)/tools/gras/gras_stub_generator@EXEEXT@ $(NAME) $(srcdir)/$(NAME).xml diff --git a/examples/gras/mmrpc/test_rl.in b/examples/gras/mmrpc/test_rl similarity index 70% rename from examples/gras/mmrpc/test_rl.in rename to examples/gras/mmrpc/test_rl index 537566067a..08473164ad 100755 --- a/examples/gras/mmrpc/test_rl.in +++ b/examples/gras/mmrpc/test_rl @@ -1,10 +1,10 @@ -& $SG_TEST_EXENV ./mmrpc_server@EXEEXT@ 4002 --log=root.fmt:%m%n +& $SG_TEST_EXENV ./mmrpc_server$EXEEXT 4002 --log=root.fmt:%m%n > Launch server (port=4002) > Exiting GRAS $ sleep 1 -$ $SG_TEST_EXENV ./mmrpc_client@EXEEXT@ 127.0.0.1 4002 --log=root.fmt:%m%n +$ $SG_TEST_EXENV ./mmrpc_client$EXEEXT 127.0.0.1 4002 --log=root.fmt:%m%n > Launch client (server on 127.0.0.1:4002) > Connected to 127.0.0.1:4002. > >>>>>>>> Connected to server which is on 127.0.0.1:4002 <<<<<<<< diff --git a/examples/gras/mmrpc/test_sg.in b/examples/gras/mmrpc/test_sg.in deleted file mode 100755 index 11458fc0a5..0000000000 --- a/examples/gras/mmrpc/test_sg.in +++ /dev/null @@ -1,10 +0,0 @@ -$ $SG_TEST_EXENV ./mmrpc_simulator@EXEEXT@ @top_srcdir@/examples/msg/small_platform.xml @srcdir@/mmrpc.xml --log=root.fmt:"'[%h:%t:(%i) %.2r] [%c/%p] %m%n'" -> [Tremblay:server:(1) 0.00] [MatMult/INFO] Launch server (port=4000) -> [Fafard:client:(2) 0.00] [MatMult/INFO] Launch client (server on Tremblay:4000) -> [Fafard:client:(2) 1.00] [MatMult/INFO] Connected to Tremblay:4000. -> [Fafard:client:(2) 1.00] [MatMult/INFO] >>>>>>>> Connected to server which is on Tremblay:4000 <<<<<<<< -> [Fafard:client:(2) 1.05] [MatMult/INFO] >>>>>>>> Request sent to Tremblay:4000 <<<<<<<< -> [Tremblay:server:(1) 1.08] [gras/INFO] Exiting GRAS -> [Fafard:client:(2) 1.08] [MatMult/INFO] >>>>>>>> Got answer from Tremblay:4000 (values are right) <<<<<<<< -> [Fafard:client:(2) 1.08] [gras/INFO] Exiting GRAS - diff --git a/examples/gras/mmrpc/test_sg_32 b/examples/gras/mmrpc/test_sg_32 new file mode 100755 index 0000000000..b98e0beb46 --- /dev/null +++ b/examples/gras/mmrpc/test_sg_32 @@ -0,0 +1,9 @@ +$ $SG_TEST_EXENV ./mmrpc_simulator$EXEEXT $srcdir/../../msg/small_platform.xml $srcdir/mmrpc.xml +> [Tremblay:server:(1) 0.000000] [MatMult/INFO] Launch server (port=4000) +> [Fafard:client:(2) 0.000000] [MatMult/INFO] Launch client (server on Tremblay:4000) +> [Fafard:client:(2) 1.000000] [MatMult/INFO] Connected to Tremblay:4000. +> [Fafard:client:(2) 1.000000] [MatMult/INFO] >>>>>>>> Connected to server which is on Tremblay:4000 <<<<<<<< +> [Fafard:client:(2) 1.053783] [MatMult/INFO] >>>>>>>> Request sent to Tremblay:4000 <<<<<<<< +> [Tremblay:server:(1) 1.081662] [gras/INFO] Exiting GRAS +> [Fafard:client:(2) 1.081662] [MatMult/INFO] >>>>>>>> Got answer from Tremblay:4000 (values are right) <<<<<<<< +> [Fafard:client:(2) 1.081662] [gras/INFO] Exiting GRAS diff --git a/examples/gras/mmrpc/test_sg_64 b/examples/gras/mmrpc/test_sg_64 new file mode 100755 index 0000000000..b98e0beb46 --- /dev/null +++ b/examples/gras/mmrpc/test_sg_64 @@ -0,0 +1,9 @@ +$ $SG_TEST_EXENV ./mmrpc_simulator$EXEEXT $srcdir/../../msg/small_platform.xml $srcdir/mmrpc.xml +> [Tremblay:server:(1) 0.000000] [MatMult/INFO] Launch server (port=4000) +> [Fafard:client:(2) 0.000000] [MatMult/INFO] Launch client (server on Tremblay:4000) +> [Fafard:client:(2) 1.000000] [MatMult/INFO] Connected to Tremblay:4000. +> [Fafard:client:(2) 1.000000] [MatMult/INFO] >>>>>>>> Connected to server which is on Tremblay:4000 <<<<<<<< +> [Fafard:client:(2) 1.053783] [MatMult/INFO] >>>>>>>> Request sent to Tremblay:4000 <<<<<<<< +> [Tremblay:server:(1) 1.081662] [gras/INFO] Exiting GRAS +> [Fafard:client:(2) 1.081662] [MatMult/INFO] >>>>>>>> Got answer from Tremblay:4000 (values are right) <<<<<<<< +> [Fafard:client:(2) 1.081662] [gras/INFO] Exiting GRAS diff --git a/examples/gras/mutual_exclusion/simple_token/.cvsignore b/examples/gras/mutual_exclusion/simple_token/.cvsignore index ea237e0b78..4f42c5be03 100644 --- a/examples/gras/mutual_exclusion/simple_token/.cvsignore +++ b/examples/gras/mutual_exclusion/simple_token/.cvsignore @@ -1,5 +1,3 @@ .deps .libs Makefile _*.c simple_token_node simple_token_simulator -test_sg -test_rl simple_token.mk simple_token.trace diff --git a/examples/gras/mutual_exclusion/simple_token/Makefile.am b/examples/gras/mutual_exclusion/simple_token/Makefile.am index e7061280c0..a14278b1c8 100644 --- a/examples/gras/mutual_exclusion/simple_token/Makefile.am +++ b/examples/gras/mutual_exclusion/simple_token/Makefile.am @@ -1,7 +1,6 @@ INCLUDES= -I$(top_srcdir)/include -TESTS= test_rl test_sg -TESTS_ENVIRONMENT=../../../../tools/tesh/tesh -EXTRA_DIST=simple_token.xml $(TESTS) +EXTRA_DIST=simple_token.xml +include $(top_srcdir)/examples/gras/tests.mk # AUTOMAKE variable definition noinst_PROGRAMS=simple_token_node simple_token_simulator diff --git a/examples/gras/mutual_exclusion/simple_token/Makefile.in b/examples/gras/mutual_exclusion/simple_token/Makefile.in index 319c79db8c..5145f536dd 100644 --- a/examples/gras/mutual_exclusion/simple_token/Makefile.in +++ b/examples/gras/mutual_exclusion/simple_token/Makefile.in @@ -14,6 +14,19 @@ @SET_MAKE@ +# This file factorize all the testing infrastructure for the GRAS examples +# +# it's made complicated by the facts that: +# - we use tesh, we need to find it back +# - we don't want to generate the test_* files with configure, so we +# have to declare some variables in front of the shell command +# running the test +# - we want to fully test the surf on the way. So, we have to ask for +# full precision timestamps in the tests. On the other hand, +# message size differ when we are on 32bits and when we are on +# 64bits (obviously), so we have to maintain 2 tests per directory +# and pick the right one here. + # Makefile chunk which allows to display the files which should be included # into the distribution. @@ -42,12 +55,12 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ -noinst_PROGRAMS = simple_token_node$(EXEEXT) \ - simple_token_simulator$(EXEEXT) DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ - $(srcdir)/test_rl.in $(srcdir)/test_sg.in \ $(top_srcdir)/acmacro/dist-files.mk \ + $(top_srcdir)/examples/gras/tests.mk \ $(top_srcdir)/examples/temps-gras-stub.mk +noinst_PROGRAMS = simple_token_node$(EXEEXT) \ + simple_token_simulator$(EXEEXT) subdir = examples/gras/mutual_exclusion/simple_token ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acmacro/ac_func_snprintf.m4 \ @@ -62,7 +75,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/src/gras_config.h -CONFIG_CLEAN_FILES = test_sg test_rl +CONFIG_CLEAN_FILES = PROGRAMS = $(noinst_PROGRAMS) am_simple_token_node_OBJECTS = _simple_token_node.$(OBJEXT) \ simple_token.$(OBJEXT) @@ -129,6 +142,8 @@ FFLAGS = @FFLAGS@ FLEXML = @FLEXML@ GRAMINE_MODE_FALSE = @GRAMINE_MODE_FALSE@ GRAMINE_MODE_TRUE = @GRAMINE_MODE_TRUE@ +GRAS_ARCH_32_BITS_FALSE = @GRAS_ARCH_32_BITS_FALSE@ +GRAS_ARCH_32_BITS_TRUE = @GRAS_ARCH_32_BITS_TRUE@ GRAS_DEP = @GRAS_DEP@ GREP = @GREP@ GTNETS_CFLAGS = @GTNETS_CFLAGS@ @@ -237,9 +252,10 @@ target_cpu = @target_cpu@ target_os = @target_os@ target_vendor = @target_vendor@ INCLUDES = -I$(top_srcdir)/include -TESTS = test_rl test_sg -TESTS_ENVIRONMENT = ../../../../tools/tesh/tesh -EXTRA_DIST = simple_token.xml $(TESTS) +EXTRA_DIST = simple_token.xml test_rl test_sg_32 test_sg_64 +@GRAS_ARCH_32_BITS_FALSE@TESTS = test_rl test_sg_64 +@GRAS_ARCH_32_BITS_TRUE@TESTS = test_rl test_sg_32 +TESTS_ENVIRONMENT = srcdir=$(srcdir) EXEEXT=$(EXEEXT) @top_builddir@/tools/tesh/tesh simple_token_simulator_SOURCES = _simple_token_simulator.c simple_token.c simple_token_simulator_LDADD = $(top_builddir)/src/libsimgrid.la simple_token_node_SOURCES = _simple_token_node.c simple_token.c @@ -256,7 +272,7 @@ all: all-am .SUFFIXES: .SUFFIXES: .c .lo .o .obj -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/examples/temps-gras-stub.mk $(top_srcdir)/acmacro/dist-files.mk $(am__configure_deps) +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/examples/gras/tests.mk $(top_srcdir)/examples/temps-gras-stub.mk $(top_srcdir)/acmacro/dist-files.mk $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ @@ -285,10 +301,6 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -test_sg: $(top_builddir)/config.status $(srcdir)/test_sg.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ -test_rl: $(top_builddir)/config.status $(srcdir)/test_rl.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ clean-noinstPROGRAMS: @list='$(noinst_PROGRAMS)'; for p in $$list; do \ @@ -466,7 +478,7 @@ check-TESTS: $(TESTS) else :; fi distdir: $(DISTFILES) - $(mkdir_p) $(distdir)/../../../../acmacro $(distdir)/../../../../examples + $(mkdir_p) $(distdir)/../../../../acmacro $(distdir)/../../../../examples $(distdir)/../../../../examples/gras @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ @@ -587,6 +599,13 @@ uninstall-am: uninstall-info-am mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags uninstall uninstall-am uninstall-info-am +@GRAS_ARCH_32_BITS_TRUE@test-sg: +@GRAS_ARCH_32_BITS_TRUE@ $(TESTS_ENVIRONMENT) test_sg_32 +@GRAS_ARCH_32_BITS_FALSE@test-sg: +@GRAS_ARCH_32_BITS_FALSE@ $(TESTS_ENVIRONMENT) test_sg_32 + +test-rl: + $(TESTS_ENVIRONMENT) test_rl $(foreach proc, $(PROCESSES), _$(NAME)_$(proc).c) _$(NAME)_simulator.c: $(srcdir)/$(NAME).xml $(top_builddir)/tools/gras/gras_stub_generator@EXEEXT@ [ x@EXEEXT@ = x ] || exenv=wine; $$exenv $(top_builddir)/tools/gras/gras_stub_generator@EXEEXT@ $(NAME) $(srcdir)/$(NAME).xml diff --git a/examples/gras/mutual_exclusion/simple_token/test_rl b/examples/gras/mutual_exclusion/simple_token/test_rl new file mode 100755 index 0000000000..2ce3a1cc76 --- /dev/null +++ b/examples/gras/mutual_exclusion/simple_token/test_rl @@ -0,0 +1,22 @@ +& $SG_TEST_EXENV ./simple_token_node$EXEEXT 4000 127.0.0.1 4010 --create-token --log=root.fmt:%m%n $@ +> Create the token (with value 0) and send it to 127.0.0.1:4010 +> Begin a new loop. Still to do: 2 +> Begin a new loop. Still to do: 1 +> Begin a new loop. Still to do: 0 +> Shut down the token-ring. There was 17 hops. +> Exiting GRAS + +& $SG_TEST_EXENV ./simple_token_node$EXEEXT 4010 127.0.0.1 4020 --log=root.fmt:%m%n $@ +> Exiting GRAS + +& $SG_TEST_EXENV ./simple_token_node$EXEEXT 4020 127.0.0.1 4030 --log=root.fmt:%m%n $@ +> Exiting GRAS + +& $SG_TEST_EXENV ./simple_token_node$EXEEXT 4030 127.0.0.1 4040 --log=root.fmt:%m%n $@ +> Exiting GRAS + +& $SG_TEST_EXENV ./simple_token_node$EXEEXT 4040 127.0.0.1 4050 --log=root.fmt:%m%n $@ +> Exiting GRAS + +& $SG_TEST_EXENV ./simple_token_node$EXEEXT 4050 127.0.0.1 4000 --log=root.fmt:%m%n $@ +> Exiting GRAS diff --git a/examples/gras/mutual_exclusion/simple_token/test_rl.in b/examples/gras/mutual_exclusion/simple_token/test_rl.in deleted file mode 100755 index ac22b9f990..0000000000 --- a/examples/gras/mutual_exclusion/simple_token/test_rl.in +++ /dev/null @@ -1,22 +0,0 @@ -& $SG_TEST_EXENV ./simple_token_node@EXEEXT@ 4000 127.0.0.1 4010 --create-token --log=root.fmt:%m%n $@ -> Create the token (with value 0) and send it to 127.0.0.1:4010 -> Begin a new loop. Still to do: 2 -> Begin a new loop. Still to do: 1 -> Begin a new loop. Still to do: 0 -> Shut down the token-ring. There was 17 hops. -> Exiting GRAS - -& $SG_TEST_EXENV ./simple_token_node@EXEEXT@ 4010 127.0.0.1 4020 --log=root.fmt:%m%n $@ -> Exiting GRAS - -& $SG_TEST_EXENV ./simple_token_node@EXEEXT@ 4020 127.0.0.1 4030 --log=root.fmt:%m%n $@ -> Exiting GRAS - -& $SG_TEST_EXENV ./simple_token_node@EXEEXT@ 4030 127.0.0.1 4040 --log=root.fmt:%m%n $@ -> Exiting GRAS - -& $SG_TEST_EXENV ./simple_token_node@EXEEXT@ 4040 127.0.0.1 4050 --log=root.fmt:%m%n $@ -> Exiting GRAS - -& $SG_TEST_EXENV ./simple_token_node@EXEEXT@ 4050 127.0.0.1 4000 --log=root.fmt:%m%n $@ -> Exiting GRAS diff --git a/examples/gras/mutual_exclusion/simple_token/test_sg.in b/examples/gras/mutual_exclusion/simple_token/test_sg_32 similarity index 85% rename from examples/gras/mutual_exclusion/simple_token/test_sg.in rename to examples/gras/mutual_exclusion/simple_token/test_sg_32 index 009f7b420f..2f85a827fc 100755 --- a/examples/gras/mutual_exclusion/simple_token/test_sg.in +++ b/examples/gras/mutual_exclusion/simple_token/test_sg_32 @@ -1,4 +1,4 @@ -$ $SG_TEST_EXENV ./simple_token_simulator@EXEEXT@ @top_srcdir@/examples/msg/small_platform.xml @srcdir@/simple_token.xml +$ $SG_TEST_EXENV ./simple_token_simulator$EXEEXT $srcdir/../../../msg/small_platform.xml $srcdir/simple_token.xml > [Tremblay:node:(1) 0.000000] [SimpleToken/INFO] Create the token (with value 0) and send it to Fafard:4000 > [Tremblay:node:(1) 0.011346] [SimpleToken/INFO] Begin a new loop. Still to do: 2 > [Tremblay:node:(1) 0.022693] [SimpleToken/INFO] Begin a new loop. Still to do: 1 diff --git a/examples/gras/mutual_exclusion/simple_token/test_sg_64 b/examples/gras/mutual_exclusion/simple_token/test_sg_64 new file mode 100755 index 0000000000..2f85a827fc --- /dev/null +++ b/examples/gras/mutual_exclusion/simple_token/test_sg_64 @@ -0,0 +1,12 @@ +$ $SG_TEST_EXENV ./simple_token_simulator$EXEEXT $srcdir/../../../msg/small_platform.xml $srcdir/simple_token.xml +> [Tremblay:node:(1) 0.000000] [SimpleToken/INFO] Create the token (with value 0) and send it to Fafard:4000 +> [Tremblay:node:(1) 0.011346] [SimpleToken/INFO] Begin a new loop. Still to do: 2 +> [Tremblay:node:(1) 0.022693] [SimpleToken/INFO] Begin a new loop. Still to do: 1 +> [Tremblay:node:(1) 0.034039] [SimpleToken/INFO] Begin a new loop. Still to do: 0 +> [Tremblay:node:(1) 0.034039] [SimpleToken/INFO] Shut down the token-ring. There was 14 hops. +> [Fafard:node:(2) 1.028109] [gras/INFO] Exiting GRAS +> [Jupiter:node:(3) 1.030844] [gras/INFO] Exiting GRAS +> [Ginette:node:(4) 1.032083] [gras/INFO] Exiting GRAS +> [Bourassa:node:(5) 1.034039] [gras/INFO] Exiting GRAS +> [Tremblay:node:(1) 1.034039] [gras/INFO] Exiting GRAS + diff --git a/examples/gras/p2p/Makefile.in b/examples/gras/p2p/Makefile.in index c30926262b..799a9d96c8 100644 --- a/examples/gras/p2p/Makefile.in +++ b/examples/gras/p2p/Makefile.in @@ -108,6 +108,8 @@ FFLAGS = @FFLAGS@ FLEXML = @FLEXML@ GRAMINE_MODE_FALSE = @GRAMINE_MODE_FALSE@ GRAMINE_MODE_TRUE = @GRAMINE_MODE_TRUE@ +GRAS_ARCH_32_BITS_FALSE = @GRAS_ARCH_32_BITS_FALSE@ +GRAS_ARCH_32_BITS_TRUE = @GRAS_ARCH_32_BITS_TRUE@ GRAS_DEP = @GRAS_DEP@ GREP = @GREP@ GTNETS_CFLAGS = @GTNETS_CFLAGS@ diff --git a/examples/gras/p2p/can/Makefile.in b/examples/gras/p2p/can/Makefile.in index 434859cc57..d530c7250e 100644 --- a/examples/gras/p2p/can/Makefile.in +++ b/examples/gras/p2p/can/Makefile.in @@ -129,6 +129,8 @@ FFLAGS = @FFLAGS@ FLEXML = @FLEXML@ GRAMINE_MODE_FALSE = @GRAMINE_MODE_FALSE@ GRAMINE_MODE_TRUE = @GRAMINE_MODE_TRUE@ +GRAS_ARCH_32_BITS_FALSE = @GRAS_ARCH_32_BITS_FALSE@ +GRAS_ARCH_32_BITS_TRUE = @GRAS_ARCH_32_BITS_TRUE@ GRAS_DEP = @GRAS_DEP@ GREP = @GREP@ GTNETS_CFLAGS = @GTNETS_CFLAGS@ diff --git a/examples/gras/p2p/chord/Makefile.in b/examples/gras/p2p/chord/Makefile.in index 0c7a3fec2b..57b63d1a12 100644 --- a/examples/gras/p2p/chord/Makefile.in +++ b/examples/gras/p2p/chord/Makefile.in @@ -124,6 +124,8 @@ FFLAGS = @FFLAGS@ FLEXML = @FLEXML@ GRAMINE_MODE_FALSE = @GRAMINE_MODE_FALSE@ GRAMINE_MODE_TRUE = @GRAMINE_MODE_TRUE@ +GRAS_ARCH_32_BITS_FALSE = @GRAS_ARCH_32_BITS_FALSE@ +GRAS_ARCH_32_BITS_TRUE = @GRAS_ARCH_32_BITS_TRUE@ GRAS_DEP = @GRAS_DEP@ GREP = @GREP@ GTNETS_CFLAGS = @GTNETS_CFLAGS@ diff --git a/examples/gras/ping/.cvsignore b/examples/gras/ping/.cvsignore index 46deff0e5e..2a0c21e066 100644 --- a/examples/gras/ping/.cvsignore +++ b/examples/gras/ping/.cvsignore @@ -1,5 +1,3 @@ .deps .libs Makefile _*.c ping_server ping_client ping_simulator -test_sg -test_rl ping.mk ping.trace diff --git a/examples/gras/ping/Makefile.am b/examples/gras/ping/Makefile.am index 4d8f8033da..8ee2e116b0 100644 --- a/examples/gras/ping/Makefile.am +++ b/examples/gras/ping/Makefile.am @@ -1,8 +1,7 @@ INCLUDES= -I$(top_srcdir)/include -TESTS= test_rl test_sg -TESTS_ENVIRONMENT=../../../tools/tesh/tesh -EXTRA_DIST=ping.xml ping.h $(TESTS) +EXTRA_DIST=ping.xml ping.h +include $(top_srcdir)/examples/gras/tests.mk # AUTOMAKE variable definition noinst_PROGRAMS=ping_client ping_server ping_simulator diff --git a/examples/gras/ping/Makefile.in b/examples/gras/ping/Makefile.in index 298b25a1d9..419f79b80e 100644 --- a/examples/gras/ping/Makefile.in +++ b/examples/gras/ping/Makefile.in @@ -14,6 +14,19 @@ @SET_MAKE@ +# This file factorize all the testing infrastructure for the GRAS examples +# +# it's made complicated by the facts that: +# - we use tesh, we need to find it back +# - we don't want to generate the test_* files with configure, so we +# have to declare some variables in front of the shell command +# running the test +# - we want to fully test the surf on the way. So, we have to ask for +# full precision timestamps in the tests. On the other hand, +# message size differ when we are on 32bits and when we are on +# 64bits (obviously), so we have to maintain 2 tests per directory +# and pick the right one here. + # Makefile chunk which allows to display the files which should be included # into the distribution. @@ -42,12 +55,12 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ -noinst_PROGRAMS = ping_client$(EXEEXT) ping_server$(EXEEXT) \ - ping_simulator$(EXEEXT) DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ - $(srcdir)/test_rl.in $(srcdir)/test_sg.in \ $(top_srcdir)/acmacro/dist-files.mk \ + $(top_srcdir)/examples/gras/tests.mk \ $(top_srcdir)/examples/temps-gras-stub.mk +noinst_PROGRAMS = ping_client$(EXEEXT) ping_server$(EXEEXT) \ + ping_simulator$(EXEEXT) subdir = examples/gras/ping ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acmacro/ac_func_snprintf.m4 \ @@ -62,7 +75,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/src/gras_config.h -CONFIG_CLEAN_FILES = test_sg test_rl +CONFIG_CLEAN_FILES = PROGRAMS = $(noinst_PROGRAMS) am_ping_client_OBJECTS = _ping_client.$(OBJEXT) ping_client.$(OBJEXT) \ ping_common.$(OBJEXT) @@ -133,6 +146,8 @@ FFLAGS = @FFLAGS@ FLEXML = @FLEXML@ GRAMINE_MODE_FALSE = @GRAMINE_MODE_FALSE@ GRAMINE_MODE_TRUE = @GRAMINE_MODE_TRUE@ +GRAS_ARCH_32_BITS_FALSE = @GRAS_ARCH_32_BITS_FALSE@ +GRAS_ARCH_32_BITS_TRUE = @GRAS_ARCH_32_BITS_TRUE@ GRAS_DEP = @GRAS_DEP@ GREP = @GREP@ GTNETS_CFLAGS = @GTNETS_CFLAGS@ @@ -241,9 +256,10 @@ target_cpu = @target_cpu@ target_os = @target_os@ target_vendor = @target_vendor@ INCLUDES = -I$(top_srcdir)/include -TESTS = test_rl test_sg -TESTS_ENVIRONMENT = ../../../tools/tesh/tesh -EXTRA_DIST = ping.xml ping.h $(TESTS) +EXTRA_DIST = ping.xml ping.h test_rl test_sg_32 test_sg_64 +@GRAS_ARCH_32_BITS_FALSE@TESTS = test_rl test_sg_64 +@GRAS_ARCH_32_BITS_TRUE@TESTS = test_rl test_sg_32 +TESTS_ENVIRONMENT = srcdir=$(srcdir) EXEEXT=$(EXEEXT) @top_builddir@/tools/tesh/tesh ping_simulator_SOURCES = _ping_simulator.c ping_server.c ping_client.c ping_common.c ping_simulator_LDADD = $(top_builddir)/src/libsimgrid.la ping_client_SOURCES = _ping_client.c ping_client.c ping_common.c @@ -262,7 +278,7 @@ all: all-am .SUFFIXES: .SUFFIXES: .c .lo .o .obj -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/examples/temps-gras-stub.mk $(top_srcdir)/acmacro/dist-files.mk $(am__configure_deps) +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/examples/gras/tests.mk $(top_srcdir)/examples/temps-gras-stub.mk $(top_srcdir)/acmacro/dist-files.mk $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ @@ -291,10 +307,6 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -test_sg: $(top_builddir)/config.status $(srcdir)/test_sg.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ -test_rl: $(top_builddir)/config.status $(srcdir)/test_rl.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ clean-noinstPROGRAMS: @list='$(noinst_PROGRAMS)'; for p in $$list; do \ @@ -478,7 +490,7 @@ check-TESTS: $(TESTS) else :; fi distdir: $(DISTFILES) - $(mkdir_p) $(distdir)/../../../acmacro $(distdir)/../../../examples + $(mkdir_p) $(distdir)/../../../acmacro $(distdir)/../../../examples $(distdir)/../../../examples/gras @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ @@ -599,6 +611,13 @@ uninstall-am: uninstall-info-am mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags uninstall uninstall-am uninstall-info-am +@GRAS_ARCH_32_BITS_TRUE@test-sg: +@GRAS_ARCH_32_BITS_TRUE@ $(TESTS_ENVIRONMENT) test_sg_32 +@GRAS_ARCH_32_BITS_FALSE@test-sg: +@GRAS_ARCH_32_BITS_FALSE@ $(TESTS_ENVIRONMENT) test_sg_32 + +test-rl: + $(TESTS_ENVIRONMENT) test_rl $(foreach proc, $(PROCESSES), _$(NAME)_$(proc).c) _$(NAME)_simulator.c: $(srcdir)/$(NAME).xml $(top_builddir)/tools/gras/gras_stub_generator@EXEEXT@ [ x@EXEEXT@ = x ] || exenv=wine; $$exenv $(top_builddir)/tools/gras/gras_stub_generator@EXEEXT@ $(NAME) $(srcdir)/$(NAME).xml diff --git a/examples/gras/ping/test_rl.in b/examples/gras/ping/test_rl similarity index 81% rename from examples/gras/ping/test_rl.in rename to examples/gras/ping/test_rl index 268dfd87a2..41f467939a 100755 --- a/examples/gras/ping/test_rl.in +++ b/examples/gras/ping/test_rl @@ -1,6 +1,6 @@ #! set timeout 20 -& $SG_TEST_ENV ./ping_server@EXEEXT@ 4002 --log=root.fmt=%m%n +& $SG_TEST_ENV ./ping_server$EXEEXT 4002 --log=root.fmt=%m%n > Launch server (port=4002) > Messages registered > Messages registered @@ -13,7 +13,7 @@ $ sleep 1 #! set timeout 20 -& $SG_TEST_ENV ./ping_client@EXEEXT@ 127.0.0.1 4002 --log=root.fmt=%m%n +& $SG_TEST_ENV ./ping_client$EXEEXT 127.0.0.1 4002 --log=root.fmt=%m%n > Launch client (server on 127.0.0.1:4002) > Connected to 127.0.0.1:4002. > Messages registered diff --git a/examples/gras/ping/test_sg.in b/examples/gras/ping/test_sg.in deleted file mode 100755 index c31acbe7ae..0000000000 --- a/examples/gras/ping/test_sg.in +++ /dev/null @@ -1,21 +0,0 @@ - -p Runs the 'ping' test within the simulator - -$ ./ping_simulator@EXEEXT@ @top_srcdir@/examples/msg/small_platform.xml @srcdir@/ping.xml --log=root.fmt:"'[%h:%t:(%i) %.2r] [%c/%p] %m%n'" -> [Tremblay:server:(1) 0.00] [Ping/INFO] Launch server (port=4000) -> [Tremblay:server:(1) 0.00] [Ping/INFO] Messages registered -> [Tremblay:server:(1) 0.00] [Ping/INFO] Messages registered -> [Tremblay:server:(1) 0.00] [Ping/INFO] >>>>>>>> Listening on port 4000 <<<<<<<< -> [Fafard:client:(2) 0.00] [Ping/INFO] Launch client (server on Tremblay:4000) -> [Fafard:client:(2) 1.00] [Ping/INFO] Connected to Tremblay:4000. -> [Fafard:client:(2) 1.00] [Ping/INFO] Messages registered -> [Fafard:client:(2) 1.00] [Ping/INFO] >>>>>>>> Connected to server which is on Tremblay:4000 <<<<<<<< -> [Fafard:client:(2) 1.00] [Ping/INFO] >>>>>>>> Message PING(1234) sent to Tremblay:4000 <<<<<<<< -> [Tremblay:server:(1) 1.00] [Ping/INFO] >>>>>>>> Got message PING(1234) from Fafard:0 <<<<<<<< -> [Tremblay:server:(1) 1.00] [Ping/INFO] >>>>>>>> Answered with PONG(4321) <<<<<<<< -> [Tremblay:server:(1) 1.00] [Ping/INFO] Done. -> [Tremblay:server:(1) 1.00] [gras/INFO] Exiting GRAS -> [Fafard:client:(2) 1.00] [Ping/INFO] >>>>>>>> Got PONG(4321) from Tremblay:4000 <<<<<<<< -> [Fafard:client:(2) 1.00] [Ping/INFO] Done. -> [Fafard:client:(2) 1.00] [gras/INFO] Exiting GRAS - diff --git a/examples/gras/ping/test_sg_32 b/examples/gras/ping/test_sg_32 new file mode 100755 index 0000000000..71b325731b --- /dev/null +++ b/examples/gras/ping/test_sg_32 @@ -0,0 +1,19 @@ +p Runs the 'ping' test within the simulator (simulation times valid for 32bits architectures) + +$ ./ping_simulator$EXEEXT $srcdir/../../msg/small_platform.xml $srcdir/ping.xml +> [Tremblay:server:(1) 0.000000] [Ping/INFO] Launch server (port=4000) +> [Tremblay:server:(1) 0.000000] [Ping/INFO] Messages registered +> [Tremblay:server:(1) 0.000000] [Ping/INFO] Messages registered +> [Tremblay:server:(1) 0.000000] [Ping/INFO] >>>>>>>> Listening on port 4000 <<<<<<<< +> [Fafard:client:(2) 0.000000] [Ping/INFO] Launch client (server on Tremblay:4000) +> [Fafard:client:(2) 1.000000] [Ping/INFO] Connected to Tremblay:4000. +> [Fafard:client:(2) 1.000000] [Ping/INFO] Messages registered +> [Fafard:client:(2) 1.000000] [Ping/INFO] >>>>>>>> Connected to server which is on Tremblay:4000 <<<<<<<< +> [Fafard:client:(2) 1.001977] [Ping/INFO] >>>>>>>> Message PING(1234) sent to Tremblay:4000 <<<<<<<< +> [Tremblay:server:(1) 1.001977] [Ping/INFO] >>>>>>>> Got message PING(1234) from Fafard:0 <<<<<<<< +> [Tremblay:server:(1) 1.003954] [Ping/INFO] >>>>>>>> Answered with PONG(4321) <<<<<<<< +> [Tremblay:server:(1) 1.003954] [Ping/INFO] Done. +> [Tremblay:server:(1) 1.003954] [gras/INFO] Exiting GRAS +> [Fafard:client:(2) 1.003954] [Ping/INFO] >>>>>>>> Got PONG(4321) from Tremblay:4000 <<<<<<<< +> [Fafard:client:(2) 1.003954] [Ping/INFO] Done. +> [Fafard:client:(2) 1.003954] [gras/INFO] Exiting GRAS diff --git a/examples/gras/ping/test_sg_64 b/examples/gras/ping/test_sg_64 new file mode 100755 index 0000000000..71b325731b --- /dev/null +++ b/examples/gras/ping/test_sg_64 @@ -0,0 +1,19 @@ +p Runs the 'ping' test within the simulator (simulation times valid for 32bits architectures) + +$ ./ping_simulator$EXEEXT $srcdir/../../msg/small_platform.xml $srcdir/ping.xml +> [Tremblay:server:(1) 0.000000] [Ping/INFO] Launch server (port=4000) +> [Tremblay:server:(1) 0.000000] [Ping/INFO] Messages registered +> [Tremblay:server:(1) 0.000000] [Ping/INFO] Messages registered +> [Tremblay:server:(1) 0.000000] [Ping/INFO] >>>>>>>> Listening on port 4000 <<<<<<<< +> [Fafard:client:(2) 0.000000] [Ping/INFO] Launch client (server on Tremblay:4000) +> [Fafard:client:(2) 1.000000] [Ping/INFO] Connected to Tremblay:4000. +> [Fafard:client:(2) 1.000000] [Ping/INFO] Messages registered +> [Fafard:client:(2) 1.000000] [Ping/INFO] >>>>>>>> Connected to server which is on Tremblay:4000 <<<<<<<< +> [Fafard:client:(2) 1.001977] [Ping/INFO] >>>>>>>> Message PING(1234) sent to Tremblay:4000 <<<<<<<< +> [Tremblay:server:(1) 1.001977] [Ping/INFO] >>>>>>>> Got message PING(1234) from Fafard:0 <<<<<<<< +> [Tremblay:server:(1) 1.003954] [Ping/INFO] >>>>>>>> Answered with PONG(4321) <<<<<<<< +> [Tremblay:server:(1) 1.003954] [Ping/INFO] Done. +> [Tremblay:server:(1) 1.003954] [gras/INFO] Exiting GRAS +> [Fafard:client:(2) 1.003954] [Ping/INFO] >>>>>>>> Got PONG(4321) from Tremblay:4000 <<<<<<<< +> [Fafard:client:(2) 1.003954] [Ping/INFO] Done. +> [Fafard:client:(2) 1.003954] [gras/INFO] Exiting GRAS diff --git a/examples/gras/pmm/.cvsignore b/examples/gras/pmm/.cvsignore index 20221f9dd9..2b584cfaff 100644 --- a/examples/gras/pmm/.cvsignore +++ b/examples/gras/pmm/.cvsignore @@ -1,5 +1,4 @@ pmm_master pmm_slave *_simulator .deps .libs Makefile _*.c -test_sg test_rl *.mk *.trace *.log diff --git a/examples/gras/pmm/Makefile.am b/examples/gras/pmm/Makefile.am index 76e824d404..b9d2166378 100644 --- a/examples/gras/pmm/Makefile.am +++ b/examples/gras/pmm/Makefile.am @@ -1,7 +1,6 @@ INCLUDES= -I$(top_srcdir)/include -TESTS= test_rl test_sg -TESTS_ENVIRONMENT=../../../tools/tesh/tesh -EXTRA_DIST=pmm.xml test_sg.in test_rl.in $(TESTS) +EXTRA_DIST=pmm.xml +include $(top_srcdir)/examples/gras/tests.mk # AUTOMAKE variable definition noinst_PROGRAMS=pmm_slave pmm_master pmm_simulator diff --git a/examples/gras/pmm/Makefile.in b/examples/gras/pmm/Makefile.in index 973ca03eab..39731ad6d0 100644 --- a/examples/gras/pmm/Makefile.in +++ b/examples/gras/pmm/Makefile.in @@ -14,6 +14,19 @@ @SET_MAKE@ +# This file factorize all the testing infrastructure for the GRAS examples +# +# it's made complicated by the facts that: +# - we use tesh, we need to find it back +# - we don't want to generate the test_* files with configure, so we +# have to declare some variables in front of the shell command +# running the test +# - we want to fully test the surf on the way. So, we have to ask for +# full precision timestamps in the tests. On the other hand, +# message size differ when we are on 32bits and when we are on +# 64bits (obviously), so we have to maintain 2 tests per directory +# and pick the right one here. + # Makefile chunk which allows to display the files which should be included # into the distribution. @@ -42,12 +55,12 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ -noinst_PROGRAMS = pmm_slave$(EXEEXT) pmm_master$(EXEEXT) \ - pmm_simulator$(EXEEXT) DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ - $(srcdir)/test_rl.in $(srcdir)/test_sg.in \ $(top_srcdir)/acmacro/dist-files.mk \ + $(top_srcdir)/examples/gras/tests.mk \ $(top_srcdir)/examples/temps-gras-stub.mk +noinst_PROGRAMS = pmm_slave$(EXEEXT) pmm_master$(EXEEXT) \ + pmm_simulator$(EXEEXT) subdir = examples/gras/pmm ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acmacro/ac_func_snprintf.m4 \ @@ -62,7 +75,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/src/gras_config.h -CONFIG_CLEAN_FILES = test_sg test_rl +CONFIG_CLEAN_FILES = PROGRAMS = $(noinst_PROGRAMS) am_pmm_master_OBJECTS = _pmm_master.$(OBJEXT) pmm.$(OBJEXT) pmm_master_OBJECTS = $(am_pmm_master_OBJECTS) @@ -129,6 +142,8 @@ FFLAGS = @FFLAGS@ FLEXML = @FLEXML@ GRAMINE_MODE_FALSE = @GRAMINE_MODE_FALSE@ GRAMINE_MODE_TRUE = @GRAMINE_MODE_TRUE@ +GRAS_ARCH_32_BITS_FALSE = @GRAS_ARCH_32_BITS_FALSE@ +GRAS_ARCH_32_BITS_TRUE = @GRAS_ARCH_32_BITS_TRUE@ GRAS_DEP = @GRAS_DEP@ GREP = @GREP@ GTNETS_CFLAGS = @GTNETS_CFLAGS@ @@ -237,9 +252,10 @@ target_cpu = @target_cpu@ target_os = @target_os@ target_vendor = @target_vendor@ INCLUDES = -I$(top_srcdir)/include -TESTS = test_rl test_sg -TESTS_ENVIRONMENT = ../../../tools/tesh/tesh -EXTRA_DIST = pmm.xml test_sg.in test_rl.in $(TESTS) +EXTRA_DIST = pmm.xml test_rl test_sg_32 test_sg_64 +@GRAS_ARCH_32_BITS_FALSE@TESTS = test_rl test_sg_64 +@GRAS_ARCH_32_BITS_TRUE@TESTS = test_rl test_sg_32 +TESTS_ENVIRONMENT = srcdir=$(srcdir) EXEEXT=$(EXEEXT) @top_builddir@/tools/tesh/tesh pmm_simulator_SOURCES = _pmm_simulator.c pmm.c pmm_simulator_LDADD = $(top_builddir)/src/libsimgrid.la pmm_slave_SOURCES = _pmm_slave.c pmm.c @@ -258,7 +274,7 @@ all: all-am .SUFFIXES: .SUFFIXES: .c .lo .o .obj -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/examples/temps-gras-stub.mk $(top_srcdir)/acmacro/dist-files.mk $(am__configure_deps) +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/examples/gras/tests.mk $(top_srcdir)/examples/temps-gras-stub.mk $(top_srcdir)/acmacro/dist-files.mk $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ @@ -287,10 +303,6 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -test_sg: $(top_builddir)/config.status $(srcdir)/test_sg.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ -test_rl: $(top_builddir)/config.status $(srcdir)/test_rl.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ clean-noinstPROGRAMS: @list='$(noinst_PROGRAMS)'; for p in $$list; do \ @@ -472,7 +484,7 @@ check-TESTS: $(TESTS) else :; fi distdir: $(DISTFILES) - $(mkdir_p) $(distdir)/../../../acmacro $(distdir)/../../../examples + $(mkdir_p) $(distdir)/../../../acmacro $(distdir)/../../../examples $(distdir)/../../../examples/gras @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ @@ -593,6 +605,13 @@ uninstall-am: uninstall-info-am mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags uninstall uninstall-am uninstall-info-am +@GRAS_ARCH_32_BITS_TRUE@test-sg: +@GRAS_ARCH_32_BITS_TRUE@ $(TESTS_ENVIRONMENT) test_sg_32 +@GRAS_ARCH_32_BITS_FALSE@test-sg: +@GRAS_ARCH_32_BITS_FALSE@ $(TESTS_ENVIRONMENT) test_sg_32 + +test-rl: + $(TESTS_ENVIRONMENT) test_rl $(foreach proc, $(PROCESSES), _$(NAME)_$(proc).c) _$(NAME)_simulator.c: $(srcdir)/$(NAME).xml $(top_builddir)/tools/gras/gras_stub_generator@EXEEXT@ [ x@EXEEXT@ = x ] || exenv=wine; $$exenv $(top_builddir)/tools/gras/gras_stub_generator@EXEEXT@ $(NAME) $(srcdir)/$(NAME).xml diff --git a/examples/gras/pmm/test_rl.in b/examples/gras/pmm/test_rl similarity index 82% rename from examples/gras/pmm/test_rl.in rename to examples/gras/pmm/test_rl index 6b95de1f0e..33e9cdbe43 100755 --- a/examples/gras/pmm/test_rl.in +++ b/examples/gras/pmm/test_rl @@ -2,42 +2,42 @@ ! set timeout 20 ! output ignore -& $SG_TEST_EXENV ./pmm_slave@EXEEXT@ 127.0.0.1:4242 --log=root.fmt:%m%n +& $SG_TEST_EXENV ./pmm_slave$EXEEXT 127.0.0.1:4242 --log=root.fmt:%m%n ! set timeout 20 ! output ignore -& $SG_TEST_EXENV ./pmm_slave@EXEEXT@ 127.0.0.1:4242 --log=root.fmt:%m%n +& $SG_TEST_EXENV ./pmm_slave$EXEEXT 127.0.0.1:4242 --log=root.fmt:%m%n ! set timeout 20 ! output ignore -& $SG_TEST_EXENV ./pmm_slave@EXEEXT@ 127.0.0.1:4242 --log=root.fmt:%m%n +& $SG_TEST_EXENV ./pmm_slave$EXEEXT 127.0.0.1:4242 --log=root.fmt:%m%n ! set timeout 20 ! output ignore -& $SG_TEST_EXENV ./pmm_slave@EXEEXT@ 127.0.0.1:4242 --log=root.fmt:%m%n +& $SG_TEST_EXENV ./pmm_slave$EXEEXT 127.0.0.1:4242 --log=root.fmt:%m%n ! set timeout 20 ! output ignore -& $SG_TEST_EXENV ./pmm_slave@EXEEXT@ 127.0.0.1:4242 --log=root.fmt:%m%n +& $SG_TEST_EXENV ./pmm_slave$EXEEXT 127.0.0.1:4242 --log=root.fmt:%m%n ! set timeout 20 ! output ignore -& $SG_TEST_EXENV ./pmm_slave@EXEEXT@ 127.0.0.1:4242 --log=root.fmt:%m%n +& $SG_TEST_EXENV ./pmm_slave$EXEEXT 127.0.0.1:4242 --log=root.fmt:%m%n ! set timeout 20 ! output ignore -& $SG_TEST_EXENV ./pmm_slave@EXEEXT@ 127.0.0.1:4242 --log=root.fmt:%m%n +& $SG_TEST_EXENV ./pmm_slave$EXEEXT 127.0.0.1:4242 --log=root.fmt:%m%n ! set timeout 20 ! output ignore -& $SG_TEST_EXENV ./pmm_slave@EXEEXT@ 127.0.0.1:4242 --log=root.fmt:%m%n +& $SG_TEST_EXENV ./pmm_slave$EXEEXT 127.0.0.1:4242 --log=root.fmt:%m%n ! set timeout 20 ! output ignore -& $SG_TEST_EXENV ./pmm_slave@EXEEXT@ 127.0.0.1:4242 --log=root.fmt:%m%n +& $SG_TEST_EXENV ./pmm_slave$EXEEXT 127.0.0.1:4242 --log=root.fmt:%m%n ! set timeout 20 -& $SG_TEST_EXENV ./pmm_master@EXEEXT@ 4242 --log=root.fmt:%m%n +& $SG_TEST_EXENV ./pmm_master$EXEEXT 4242 --log=root.fmt:%m%n > Wait for peers for 5 sec > Got 9 pals > Connecting to 127.0.0.1:3000. diff --git a/examples/gras/pmm/test_sg.in b/examples/gras/pmm/test_sg.in deleted file mode 100755 index b0bd0aebfe..0000000000 --- a/examples/gras/pmm/test_sg.in +++ /dev/null @@ -1,200 +0,0 @@ -$ $SG_TEST_EXENV ./pmm_simulator@EXEEXT@ @top_srcdir@/examples/msg/msg_platform.xml @srcdir@/pmm.xml --log=root.fmt:"'[%h:%t:(%i) %.2r] [%c/%p] %m%n'" -> [Jacquelin:master:(1) 0.00] [pmm/INFO] Wait for peers for 5 sec -> [Boivin:slave:(2) 1.00] [pmm/INFO] Sensor starting (on port 3000) -> [Jean_Yves:slave:(3) 1.00] [pmm/INFO] Sensor starting (on port 3000) -> [TeX:slave:(4) 1.00] [pmm/INFO] Sensor starting (on port 3000) -> [Geoff:slave:(5) 1.00] [pmm/INFO] Sensor starting (on port 3000) -> [Disney:slave:(6) 1.00] [pmm/INFO] Sensor starting (on port 3000) -> [iRMX:slave:(7) 1.00] [pmm/INFO] Sensor starting (on port 3000) -> [McGee:slave:(8) 1.00] [pmm/INFO] Sensor starting (on port 3000) -> [Gatien:slave:(9) 1.00] [pmm/INFO] Sensor starting (on port 3000) -> [Laroche:slave:(10) 1.00] [pmm/INFO] Sensor starting (on port 3000) -> [Tanguay:slave:(11) 1.00] [pmm/INFO] Sensor starting (on port 3000) -> [Morin:slave:(12) 1.00] [pmm/INFO] Sensor starting (on port 3000) -> [Ethernet:slave:(13) 1.00] [pmm/INFO] Sensor starting (on port 3000) -> [Bellemarre:slave:(14) 1.00] [pmm/INFO] Sensor starting (on port 3000) -> [Kuenning:slave:(15) 1.00] [pmm/INFO] Sensor starting (on port 3000) -> [Gaston:slave:(16) 1.00] [pmm/INFO] Sensor starting (on port 3000) -> [Bousquet:slave:(17) 1.00] [pmm/INFO] Sensor starting (on port 3000) -> [Paul:slave:(18) 1.00] [pmm/INFO] Sensor starting (on port 3000) -> [St_Jean:slave:(19) 1.00] [pmm/INFO] Sensor starting (on port 3000) -> [Jill:slave:(20) 1.00] [pmm/INFO] Sensor starting (on port 3000) -> [Jacquelin:master:(1) 5.08] [pmm/INFO] Got 19 pals -> [Jacquelin:master:(1) 5.08] [pmm/INFO] Connecting to Boivin:3000. -> [Jacquelin:master:(1) 5.08] [pmm/INFO] Connected to Boivin:3000. -> [Jacquelin:master:(1) 5.08] [pmm/INFO] Connecting to Jean_Yves:3000. -> [Jacquelin:master:(1) 5.08] [pmm/INFO] Connected to Jean_Yves:3000. -> [Jacquelin:master:(1) 5.08] [pmm/INFO] Connecting to TeX:3000. -> [Jacquelin:master:(1) 5.08] [pmm/INFO] Connected to TeX:3000. -> [Jacquelin:master:(1) 5.08] [pmm/INFO] Connecting to Geoff:3000. -> [Jacquelin:master:(1) 5.08] [pmm/INFO] Connected to Geoff:3000. -> [Jacquelin:master:(1) 5.08] [pmm/INFO] Connecting to Disney:3000. -> [Jacquelin:master:(1) 5.08] [pmm/INFO] Connected to Disney:3000. -> [Jacquelin:master:(1) 5.08] [pmm/INFO] Connecting to iRMX:3000. -> [Jacquelin:master:(1) 5.08] [pmm/INFO] Connected to iRMX:3000. -> [Jacquelin:master:(1) 5.08] [pmm/INFO] Connecting to McGee:3000. -> [Jacquelin:master:(1) 5.08] [pmm/INFO] Connected to McGee:3000. -> [Jacquelin:master:(1) 5.08] [pmm/INFO] Connecting to Gatien:3000. -> [Jacquelin:master:(1) 5.08] [pmm/INFO] Connected to Gatien:3000. -> [Jacquelin:master:(1) 5.08] [pmm/INFO] Connecting to Laroche:3000. -> [Jacquelin:master:(1) 5.08] [pmm/INFO] Connected to Laroche:3000. -> [Jacquelin:master:(1) 5.08] [pmm/INFO] Too much slaves. Killing Tanguay:3000 -> [Jacquelin:master:(1) 5.16] [pmm/INFO] Too much slaves. Killing Morin:3000 -> [Tanguay:slave:(11) 5.16] [gras/INFO] Exiting GRAS -> [Jacquelin:master:(1) 5.30] [pmm/INFO] Too much slaves. Killing Ethernet:3000 -> [Morin:slave:(12) 5.30] [gras/INFO] Exiting GRAS -> [Jacquelin:master:(1) 5.38] [pmm/INFO] Too much slaves. Killing Bellemarre:3000 -> [Ethernet:slave:(13) 5.38] [gras/INFO] Exiting GRAS -> [Jacquelin:master:(1) 5.52] [pmm/INFO] Too much slaves. Killing Kuenning:3000 -> [Bellemarre:slave:(14) 5.52] [gras/INFO] Exiting GRAS -> [Jacquelin:master:(1) 5.59] [pmm/INFO] Too much slaves. Killing Gaston:3000 -> [Kuenning:slave:(15) 5.59] [gras/INFO] Exiting GRAS -> [Jacquelin:master:(1) 5.66] [pmm/INFO] Too much slaves. Killing Bousquet:3000 -> [Gaston:slave:(16) 5.66] [gras/INFO] Exiting GRAS -> [Jacquelin:master:(1) 5.74] [pmm/INFO] Too much slaves. Killing Paul:3000 -> [Bousquet:slave:(17) 5.74] [gras/INFO] Exiting GRAS -> [Jacquelin:master:(1) 5.84] [pmm/INFO] Too much slaves. Killing St_Jean:3000 -> [Paul:slave:(18) 5.84] [gras/INFO] Exiting GRAS -> [Jacquelin:master:(1) 5.98] [pmm/INFO] Too much slaves. Killing Jill:3000 -> [St_Jean:slave:(19) 5.98] [gras/INFO] Exiting GRAS -> [Jacquelin:master:(1) 6.14] [pmm/INFO] XXXXXXXXXXXXXXXXXXXXXX begin Multiplication -> [Jill:slave:(20) 6.14] [gras/INFO] Exiting GRAS -> [Boivin:slave:(2) 7.22] [pmm/INFO] Receive my pos (0,0) and assignment -> [Boivin:slave:(2) 7.22] [pmm/INFO] LINE: step(0) = Myline(0). Broadcast my data (myport=3000). -> [Boivin:slave:(2) 7.22] [pmm/INFO] LINE: Send to Geoff:3000 -> [Jean_Yves:slave:(3) 7.30] [pmm/INFO] Receive my pos (0,1) and assignment -> [Jean_Yves:slave:(3) 7.30] [pmm/INFO] LINE: step(0) = Myline(0). Broadcast my data (myport=3000). -> [Jean_Yves:slave:(3) 7.30] [pmm/INFO] LINE: Send to Disney:3000 -> [TeX:slave:(4) 7.45] [pmm/INFO] Receive my pos (0,2) and assignment -> [TeX:slave:(4) 7.45] [pmm/INFO] LINE: step(0) = Myline(0). Broadcast my data (myport=3000). -> [TeX:slave:(4) 7.45] [pmm/INFO] LINE: Send to iRMX:3000 -> [Geoff:slave:(5) 7.45] [pmm/INFO] Receive my pos (1,0) and assignment -> [Boivin:slave:(2) 7.53] [pmm/INFO] LINE: Send to McGee:3000 -> [Geoff:slave:(5) 7.53] [pmm/INFO] LINE: step(0) <> Myline(1). Receive data from Boivin:3000 -> [Geoff:slave:(5) 7.53] [pmm/INFO] ROW: step(0)=myrow(0). Broadcast my data -> [Geoff:slave:(5) 7.53] [pmm/INFO] ROW: Send to Disney:3000 -> [Disney:slave:(6) 7.60] [pmm/INFO] Receive my pos (1,1) and assignment -> [Jean_Yves:slave:(3) 7.81] [pmm/INFO] LINE: Send to Gatien:3000 -> [Disney:slave:(6) 7.81] [pmm/INFO] LINE: step(0) <> Myline(1). Receive data from Jean_Yves:3000 -> [iRMX:slave:(7) 7.85] [pmm/INFO] Receive my pos (1,2) and assignment -> [McGee:slave:(8) 7.92] [pmm/INFO] Receive my pos (2,0) and assignment -> [Boivin:slave:(2) 7.93] [pmm/INFO] ROW: step(0)=myrow(0). Broadcast my data -> [Boivin:slave:(2) 7.93] [pmm/INFO] ROW: Send to Jean_Yves:3000 -> [McGee:slave:(8) 7.93] [pmm/INFO] LINE: step(0) <> Myline(2). Receive data from Boivin:3000 -> [McGee:slave:(8) 7.93] [pmm/INFO] ROW: step(0)=myrow(0). Broadcast my data -> [McGee:slave:(8) 7.93] [pmm/INFO] ROW: Send to Gatien:3000 -> [Geoff:slave:(5) 7.96] [pmm/INFO] ROW: Send to iRMX:3000 -> [Disney:slave:(6) 7.96] [pmm/INFO] ROW: step(0)<>myrow(1). Receive data from Geoff -> [Disney:slave:(6) 7.96] [pmm/INFO] LINE: step(1) = Myline(1). Broadcast my data (myport=3000). -> [Disney:slave:(6) 7.96] [pmm/INFO] LINE: Send to Jean_Yves:3000 -> [Gatien:slave:(9) 8.02] [pmm/INFO] Receive my pos (2,1) and assignment -> [TeX:slave:(4) 8.10] [pmm/INFO] LINE: Send to Laroche:3000 -> [iRMX:slave:(7) 8.10] [pmm/INFO] LINE: step(0) <> Myline(1). Receive data from TeX:3000 -> [Laroche:slave:(10) 8.17] [pmm/INFO] Receive my pos (2,2) and assignment -> [Gatien:slave:(9) 8.20] [pmm/INFO] LINE: step(0) <> Myline(2). Receive data from Jean_Yves:3000 -> [McGee:slave:(8) 8.23] [pmm/INFO] ROW: Send to Laroche:3000 -> [Gatien:slave:(9) 8.23] [pmm/INFO] ROW: step(0)<>myrow(1). Receive data from McGee -> [Laroche:slave:(10) 8.32] [pmm/INFO] LINE: step(0) <> Myline(2). Receive data from TeX:3000 -> [Geoff:slave:(5) 8.34] [pmm/INFO] LINE: step(1) = Myline(1). Broadcast my data (myport=3000). -> [Geoff:slave:(5) 8.34] [pmm/INFO] LINE: Send to Boivin:3000 -> [iRMX:slave:(7) 8.34] [pmm/INFO] ROW: step(0)<>myrow(2). Receive data from Geoff -> [iRMX:slave:(7) 8.34] [pmm/INFO] LINE: step(1) = Myline(1). Broadcast my data (myport=3000). -> [iRMX:slave:(7) 8.34] [pmm/INFO] LINE: Send to TeX:3000 -> [Boivin:slave:(2) 8.35] [pmm/INFO] ROW: Send to TeX:3000 -> [Jean_Yves:slave:(3) 8.35] [pmm/INFO] ROW: step(0)<>myrow(1). Receive data from Boivin -> [Laroche:slave:(10) 8.40] [pmm/INFO] ROW: step(0)<>myrow(2). Receive data from McGee -> [Disney:slave:(6) 8.57] [pmm/INFO] LINE: Send to Gatien:3000 -> [Jean_Yves:slave:(3) 8.57] [pmm/INFO] LINE: step(1) <> Myline(0). Receive data from Disney:3000 -> [Jean_Yves:slave:(3) 8.57] [pmm/INFO] ROW: step(1)=myrow(1). Broadcast my data -> [Jean_Yves:slave:(3) 8.57] [pmm/INFO] ROW: Send to Boivin:3000 -> [iRMX:slave:(7) 8.59] [pmm/INFO] LINE: Send to Laroche:3000 -> [Disney:slave:(6) 8.67] [pmm/INFO] ROW: step(1)=myrow(1). Broadcast my data -> [Disney:slave:(6) 8.67] [pmm/INFO] ROW: Send to Geoff:3000 -> [Gatien:slave:(9) 8.67] [pmm/INFO] LINE: step(1) <> Myline(2). Receive data from Disney:3000 -> [Gatien:slave:(9) 8.67] [pmm/INFO] ROW: step(1)=myrow(1). Broadcast my data -> [Gatien:slave:(9) 8.67] [pmm/INFO] ROW: Send to McGee:3000 -> [TeX:slave:(4) 8.68] [pmm/INFO] ROW: step(0)<>myrow(2). Receive data from Boivin -> [TeX:slave:(4) 8.68] [pmm/INFO] LINE: step(1) <> Myline(0). Receive data from iRMX:3000 -> [Laroche:slave:(10) 8.69] [pmm/INFO] LINE: step(1) <> Myline(2). Receive data from iRMX:3000 -> [Gatien:slave:(9) 8.71] [pmm/INFO] ROW: Send to Laroche:3000 -> [Geoff:slave:(5) 8.76] [pmm/INFO] LINE: Send to McGee:3000 -> [Boivin:slave:(2) 8.76] [pmm/INFO] LINE: step(1) <> Myline(0). Receive data from Geoff:3000 -> [Gatien:slave:(9) 8.81] [pmm/INFO] LINE: step(2) = Myline(2). Broadcast my data (myport=3000). -> [Gatien:slave:(9) 8.81] [pmm/INFO] LINE: Send to Jean_Yves:3000 -> [Laroche:slave:(10) 8.81] [pmm/INFO] ROW: step(1)<>myrow(2). Receive data from Gatien -> [Laroche:slave:(10) 8.81] [pmm/INFO] LINE: step(2) = Myline(2). Broadcast my data (myport=3000). -> [Laroche:slave:(10) 8.81] [pmm/INFO] LINE: Send to TeX:3000 -> [McGee:slave:(8) 8.83] [pmm/INFO] LINE: step(1) <> Myline(2). Receive data from Geoff:3000 -> [McGee:slave:(8) 8.83] [pmm/INFO] ROW: step(1)<>myrow(0). Receive data from Gatien -> [McGee:slave:(8) 8.83] [pmm/INFO] LINE: step(2) = Myline(2). Broadcast my data (myport=3000). -> [McGee:slave:(8) 8.83] [pmm/INFO] LINE: Send to Boivin:3000 -> [Jean_Yves:slave:(3) 8.92] [pmm/INFO] ROW: Send to TeX:3000 -> [Boivin:slave:(2) 8.92] [pmm/INFO] ROW: step(1)<>myrow(0). Receive data from Jean_Yves -> [McGee:slave:(8) 8.93] [pmm/INFO] LINE: Send to Geoff:3000 -> [Boivin:slave:(2) 8.93] [pmm/INFO] LINE: step(2) <> Myline(0). Receive data from McGee:3000 -> [Laroche:slave:(10) 8.96] [pmm/INFO] LINE: Send to iRMX:3000 -> [Disney:slave:(6) 8.98] [pmm/INFO] ROW: Send to iRMX:3000 -> [Geoff:slave:(5) 8.98] [pmm/INFO] ROW: step(1)<>myrow(0). Receive data from Disney -> [Geoff:slave:(5) 9.05] [pmm/INFO] LINE: step(2) <> Myline(1). Receive data from McGee:3000 -> [Laroche:slave:(10) 9.06] [pmm/INFO] ROW: step(2)=myrow(2). Broadcast my data -> [Laroche:slave:(10) 9.06] [pmm/INFO] ROW: Send to McGee:3000 -> [Laroche:slave:(10) 9.14] [pmm/INFO] ROW: Send to Gatien:3000 -> [McGee:slave:(8) 9.14] [pmm/INFO] ROW: step(2)<>myrow(0). Receive data from Laroche -> [TeX:slave:(4) 9.18] [pmm/INFO] ROW: step(1)<>myrow(2). Receive data from Jean_Yves -> [TeX:slave:(4) 9.18] [pmm/INFO] LINE: step(2) <> Myline(0). Receive data from Laroche:3000 -> [TeX:slave:(4) 9.18] [pmm/INFO] ROW: step(2)=myrow(2). Broadcast my data -> [TeX:slave:(4) 9.18] [pmm/INFO] ROW: Send to Boivin:3000 -> [McGee:slave:(8) 9.21] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< -> [TeX:slave:(4) 9.27] [pmm/INFO] ROW: Send to Jean_Yves:3000 -> [Boivin:slave:(2) 9.27] [pmm/INFO] ROW: step(2)<>myrow(0). Receive data from TeX -> [iRMX:slave:(7) 9.32] [pmm/INFO] ROW: step(1)<>myrow(2). Receive data from Disney -> [iRMX:slave:(7) 9.32] [pmm/INFO] LINE: step(2) <> Myline(1). Receive data from Laroche:3000 -> [iRMX:slave:(7) 9.32] [pmm/INFO] ROW: step(2)=myrow(2). Broadcast my data -> [iRMX:slave:(7) 9.32] [pmm/INFO] ROW: Send to Geoff:3000 -> [Boivin:slave:(2) 9.35] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< -> [Gatien:slave:(9) 9.35] [pmm/INFO] LINE: Send to Disney:3000 -> [Jean_Yves:slave:(3) 9.35] [pmm/INFO] LINE: step(2) <> Myline(0). Receive data from Gatien:3000 -> [Disney:slave:(6) 9.46] [pmm/INFO] LINE: step(2) <> Myline(1). Receive data from Gatien:3000 -> [iRMX:slave:(7) 9.56] [pmm/INFO] ROW: Send to Disney:3000 -> [Geoff:slave:(5) 9.56] [pmm/INFO] ROW: step(2)<>myrow(0). Receive data from iRMX -> [Geoff:slave:(5) 9.56] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< -> [Gatien:slave:(9) 9.56] [pmm/INFO] ROW: step(2)<>myrow(1). Receive data from Laroche -> [Jean_Yves:slave:(3) 9.57] [pmm/INFO] ROW: step(2)<>myrow(1). Receive data from TeX -> [Laroche:slave:(10) 9.71] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< -> [Gatien:slave:(9) 9.81] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< -> [Disney:slave:(6) 9.81] [pmm/INFO] ROW: step(2)<>myrow(1). Receive data from iRMX -> [TeX:slave:(4) 9.95] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< -> [Jean_Yves:slave:(3) 10.03] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< -> [iRMX:slave:(7) 10.27] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< -> [Disney:slave:(6) 10.41] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< -> [Jacquelin:master:(1) 10.41] [pmm/INFO] The Result of Multiplication is : -> >>> Matrix C:res dump (18 x 18) -> 0.00 18.00 36.00 54.00 72.00 90.00 108.00 126.00 144.00 162.00 180.00 198.00 216.00 234.00 252.00 270.00 288.00 306.00 -> 1.00 19.00 37.00 55.00 73.00 91.00 109.00 127.00 145.00 163.00 181.00 199.00 217.00 235.00 253.00 271.00 289.00 307.00 -> 2.00 20.00 38.00 56.00 74.00 92.00 110.00 128.00 146.00 164.00 182.00 200.00 218.00 236.00 254.00 272.00 290.00 308.00 -> 3.00 21.00 39.00 57.00 75.00 93.00 111.00 129.00 147.00 165.00 183.00 201.00 219.00 237.00 255.00 273.00 291.00 309.00 -> 4.00 22.00 40.00 58.00 76.00 94.00 112.00 130.00 148.00 166.00 184.00 202.00 220.00 238.00 256.00 274.00 292.00 310.00 -> 5.00 23.00 41.00 59.00 77.00 95.00 113.00 131.00 149.00 167.00 185.00 203.00 221.00 239.00 257.00 275.00 293.00 311.00 -> 6.00 24.00 42.00 60.00 78.00 96.00 114.00 132.00 150.00 168.00 186.00 204.00 222.00 240.00 258.00 276.00 294.00 312.00 -> 7.00 25.00 43.00 61.00 79.00 97.00 115.00 133.00 151.00 169.00 187.00 205.00 223.00 241.00 259.00 277.00 295.00 313.00 -> 8.00 26.00 44.00 62.00 80.00 98.00 116.00 134.00 152.00 170.00 188.00 206.00 224.00 242.00 260.00 278.00 296.00 314.00 -> 9.00 27.00 45.00 63.00 81.00 99.00 117.00 135.00 153.00 171.00 189.00 207.00 225.00 243.00 261.00 279.00 297.00 315.00 -> 10.00 28.00 46.00 64.00 82.00 100.00 118.00 136.00 154.00 172.00 190.00 208.00 226.00 244.00 262.00 280.00 298.00 316.00 -> 11.00 29.00 47.00 65.00 83.00 101.00 119.00 137.00 155.00 173.00 191.00 209.00 227.00 245.00 263.00 281.00 299.00 317.00 -> 12.00 30.00 48.00 66.00 84.00 102.00 120.00 138.00 156.00 174.00 192.00 210.00 228.00 246.00 264.00 282.00 300.00 318.00 -> 13.00 31.00 49.00 67.00 85.00 103.00 121.00 139.00 157.00 175.00 193.00 211.00 229.00 247.00 265.00 283.00 301.00 319.00 -> 14.00 32.00 50.00 68.00 86.00 104.00 122.00 140.00 158.00 176.00 194.00 212.00 230.00 248.00 266.00 284.00 302.00 320.00 -> 15.00 33.00 51.00 69.00 87.00 105.00 123.00 141.00 159.00 177.00 195.00 213.00 231.00 249.00 267.00 285.00 303.00 321.00 -> 16.00 34.00 52.00 70.00 88.00 106.00 124.00 142.00 160.00 178.00 196.00 214.00 232.00 250.00 268.00 286.00 304.00 322.00 -> 17.00 35.00 53.00 71.00 89.00 107.00 125.00 143.00 161.00 179.00 197.00 215.00 233.00 251.00 269.00 287.00 305.00 323.00 -> <<< end_of_matrix C:res dump -> [Boivin:slave:(2) 10.49] [gras/INFO] Exiting GRAS -> [Jean_Yves:slave:(3) 10.56] [gras/INFO] Exiting GRAS -> [TeX:slave:(4) 10.70] [gras/INFO] Exiting GRAS -> [Geoff:slave:(5) 10.70] [gras/INFO] Exiting GRAS -> [Disney:slave:(6) 10.84] [gras/INFO] Exiting GRAS -> [iRMX:slave:(7) 11.08] [gras/INFO] Exiting GRAS -> [McGee:slave:(8) 11.15] [gras/INFO] Exiting GRAS -> [Gatien:slave:(9) 11.24] [gras/INFO] Exiting GRAS -> [Jacquelin:master:(1) 11.38] [gras/INFO] Exiting GRAS -> [Laroche:slave:(10) 11.38] [gras/INFO] Exiting GRAS diff --git a/examples/gras/pmm/test_sg_32 b/examples/gras/pmm/test_sg_32 new file mode 100755 index 0000000000..8e42c5b0c6 --- /dev/null +++ b/examples/gras/pmm/test_sg_32 @@ -0,0 +1,200 @@ +$ $SG_TEST_EXENV ./pmm_simulator$EXEEXT $srcdir/../../msg/msg_platform.xml $srcdir/pmm.xml +> [Jacquelin:master:(1) 0.000000] [pmm/INFO] Wait for peers for 5 sec +> [Boivin:slave:(2) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Jean_Yves:slave:(3) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [TeX:slave:(4) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Geoff:slave:(5) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Disney:slave:(6) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [iRMX:slave:(7) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [McGee:slave:(8) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Gatien:slave:(9) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Laroche:slave:(10) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Tanguay:slave:(11) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Morin:slave:(12) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Ethernet:slave:(13) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Bellemarre:slave:(14) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Kuenning:slave:(15) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Gaston:slave:(16) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Bousquet:slave:(17) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Paul:slave:(18) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [St_Jean:slave:(19) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Jill:slave:(20) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Got 19 pals +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connecting to Boivin:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connected to Boivin:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connecting to Jean_Yves:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connected to Jean_Yves:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connecting to TeX:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connected to TeX:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connecting to Geoff:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connected to Geoff:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connecting to Disney:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connected to Disney:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connecting to iRMX:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connected to iRMX:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connecting to McGee:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connected to McGee:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connecting to Gatien:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connected to Gatien:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connecting to Laroche:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connected to Laroche:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Too much slaves. Killing Tanguay:3000 +> [Jacquelin:master:(1) 5.159107] [pmm/INFO] Too much slaves. Killing Morin:3000 +> [Tanguay:slave:(11) 5.159107] [gras/INFO] Exiting GRAS +> [Jacquelin:master:(1) 5.302399] [pmm/INFO] Too much slaves. Killing Ethernet:3000 +> [Morin:slave:(12) 5.302399] [gras/INFO] Exiting GRAS +> [Jacquelin:master:(1) 5.383890] [pmm/INFO] Too much slaves. Killing Bellemarre:3000 +> [Ethernet:slave:(13) 5.383890] [gras/INFO] Exiting GRAS +> [Jacquelin:master:(1) 5.523063] [pmm/INFO] Too much slaves. Killing Kuenning:3000 +> [Bellemarre:slave:(14) 5.523063] [gras/INFO] Exiting GRAS +> [Jacquelin:master:(1) 5.588959] [pmm/INFO] Too much slaves. Killing Gaston:3000 +> [Kuenning:slave:(15) 5.588959] [gras/INFO] Exiting GRAS +> [Jacquelin:master:(1) 5.662429] [pmm/INFO] Too much slaves. Killing Bousquet:3000 +> [Gaston:slave:(16) 5.662429] [gras/INFO] Exiting GRAS +> [Jacquelin:master:(1) 5.740421] [pmm/INFO] Too much slaves. Killing Paul:3000 +> [Bousquet:slave:(17) 5.740421] [gras/INFO] Exiting GRAS +> [Jacquelin:master:(1) 5.844574] [pmm/INFO] Too much slaves. Killing St_Jean:3000 +> [Paul:slave:(18) 5.844574] [gras/INFO] Exiting GRAS +> [Jacquelin:master:(1) 5.983872] [pmm/INFO] Too much slaves. Killing Jill:3000 +> [St_Jean:slave:(19) 5.983872] [gras/INFO] Exiting GRAS +> [Jacquelin:master:(1) 6.136256] [pmm/INFO] XXXXXXXXXXXXXXXXXXXXXX begin Multiplication +> [Jill:slave:(20) 6.136256] [gras/INFO] Exiting GRAS +> [Boivin:slave:(2) 7.222182] [pmm/INFO] Receive my pos (0,0) and assignment +> [Boivin:slave:(2) 7.222182] [pmm/INFO] LINE: step(0) = Myline(0). Broadcast my data (myport=3000). +> [Boivin:slave:(2) 7.222182] [pmm/INFO] LINE: Send to Geoff:3000 +> [Jean_Yves:slave:(3) 7.297959] [pmm/INFO] Receive my pos (0,1) and assignment +> [Jean_Yves:slave:(3) 7.297959] [pmm/INFO] LINE: step(0) = Myline(0). Broadcast my data (myport=3000). +> [Jean_Yves:slave:(3) 7.297959] [pmm/INFO] LINE: Send to Disney:3000 +> [TeX:slave:(4) 7.446505] [pmm/INFO] Receive my pos (0,2) and assignment +> [TeX:slave:(4) 7.446505] [pmm/INFO] LINE: step(0) = Myline(0). Broadcast my data (myport=3000). +> [TeX:slave:(4) 7.446505] [pmm/INFO] LINE: Send to iRMX:3000 +> [Geoff:slave:(5) 7.447170] [pmm/INFO] Receive my pos (1,0) and assignment +> [Boivin:slave:(2) 7.529819] [pmm/INFO] LINE: Send to McGee:3000 +> [Geoff:slave:(5) 7.529819] [pmm/INFO] LINE: step(0) <> Myline(1). Receive data from Boivin:3000 +> [Geoff:slave:(5) 7.529819] [pmm/INFO] ROW: step(0)=myrow(0). Broadcast my data +> [Geoff:slave:(5) 7.529819] [pmm/INFO] ROW: Send to Disney:3000 +> [Disney:slave:(6) 7.596585] [pmm/INFO] Receive my pos (1,1) and assignment +> [Jean_Yves:slave:(3) 7.812668] [pmm/INFO] LINE: Send to Gatien:3000 +> [Disney:slave:(6) 7.812668] [pmm/INFO] LINE: step(0) <> Myline(1). Receive data from Jean_Yves:3000 +> [iRMX:slave:(7) 7.845903] [pmm/INFO] Receive my pos (1,2) and assignment +> [McGee:slave:(8) 7.918692] [pmm/INFO] Receive my pos (2,0) and assignment +> [Boivin:slave:(2) 7.926992] [pmm/INFO] ROW: step(0)=myrow(0). Broadcast my data +> [Boivin:slave:(2) 7.926992] [pmm/INFO] ROW: Send to Jean_Yves:3000 +> [McGee:slave:(8) 7.926992] [pmm/INFO] LINE: step(0) <> Myline(2). Receive data from Boivin:3000 +> [McGee:slave:(8) 7.926992] [pmm/INFO] ROW: step(0)=myrow(0). Broadcast my data +> [McGee:slave:(8) 7.926992] [pmm/INFO] ROW: Send to Gatien:3000 +> [Geoff:slave:(5) 7.956670] [pmm/INFO] ROW: Send to iRMX:3000 +> [Disney:slave:(6) 7.956670] [pmm/INFO] ROW: step(0)<>myrow(1). Receive data from Geoff +> [Disney:slave:(6) 7.956670] [pmm/INFO] LINE: step(1) = Myline(1). Broadcast my data (myport=3000). +> [Disney:slave:(6) 7.956670] [pmm/INFO] LINE: Send to Jean_Yves:3000 +> [Gatien:slave:(9) 8.023145] [pmm/INFO] Receive my pos (2,1) and assignment +> [TeX:slave:(4) 8.098750] [pmm/INFO] LINE: Send to Laroche:3000 +> [iRMX:slave:(7) 8.098750] [pmm/INFO] LINE: step(0) <> Myline(1). Receive data from TeX:3000 +> [Laroche:slave:(10) 8.170600] [pmm/INFO] Receive my pos (2,2) and assignment +> [Gatien:slave:(9) 8.195738] [pmm/INFO] LINE: step(0) <> Myline(2). Receive data from Jean_Yves:3000 +> [McGee:slave:(8) 8.227377] [pmm/INFO] ROW: Send to Laroche:3000 +> [Gatien:slave:(9) 8.227377] [pmm/INFO] ROW: step(0)<>myrow(1). Receive data from McGee +> [Laroche:slave:(10) 8.325000] [pmm/INFO] LINE: step(0) <> Myline(2). Receive data from TeX:3000 +> [Geoff:slave:(5) 8.339386] [pmm/INFO] LINE: step(1) = Myline(1). Broadcast my data (myport=3000). +> [Geoff:slave:(5) 8.339386] [pmm/INFO] LINE: Send to Boivin:3000 +> [iRMX:slave:(7) 8.339386] [pmm/INFO] ROW: step(0)<>myrow(2). Receive data from Geoff +> [iRMX:slave:(7) 8.339386] [pmm/INFO] LINE: step(1) = Myline(1). Broadcast my data (myport=3000). +> [iRMX:slave:(7) 8.339386] [pmm/INFO] LINE: Send to TeX:3000 +> [Boivin:slave:(2) 8.350468] [pmm/INFO] ROW: Send to TeX:3000 +> [Jean_Yves:slave:(3) 8.350468] [pmm/INFO] ROW: step(0)<>myrow(1). Receive data from Boivin +> [Laroche:slave:(10) 8.399620] [pmm/INFO] ROW: step(0)<>myrow(2). Receive data from McGee +> [Disney:slave:(6) 8.566551] [pmm/INFO] LINE: Send to Gatien:3000 +> [Jean_Yves:slave:(3) 8.566551] [pmm/INFO] LINE: step(1) <> Myline(0). Receive data from Disney:3000 +> [Jean_Yves:slave:(3) 8.566551] [pmm/INFO] ROW: step(1)=myrow(1). Broadcast my data +> [Jean_Yves:slave:(3) 8.566551] [pmm/INFO] ROW: Send to Boivin:3000 +> [iRMX:slave:(7) 8.592233] [pmm/INFO] LINE: Send to Laroche:3000 +> [Disney:slave:(6) 8.673563] [pmm/INFO] ROW: step(1)=myrow(1). Broadcast my data +> [Disney:slave:(6) 8.673563] [pmm/INFO] ROW: Send to Geoff:3000 +> [Gatien:slave:(9) 8.673563] [pmm/INFO] LINE: step(1) <> Myline(2). Receive data from Disney:3000 +> [Gatien:slave:(9) 8.673563] [pmm/INFO] ROW: step(1)=myrow(1). Broadcast my data +> [Gatien:slave:(9) 8.673563] [pmm/INFO] ROW: Send to McGee:3000 +> [TeX:slave:(4) 8.681575] [pmm/INFO] ROW: step(0)<>myrow(2). Receive data from Boivin +> [TeX:slave:(4) 8.681575] [pmm/INFO] LINE: step(1) <> Myline(0). Receive data from iRMX:3000 +> [Laroche:slave:(10) 8.691003] [pmm/INFO] LINE: step(1) <> Myline(2). Receive data from iRMX:3000 +> [Gatien:slave:(9) 8.705202] [pmm/INFO] ROW: Send to Laroche:3000 +> [Geoff:slave:(5) 8.764224] [pmm/INFO] LINE: Send to McGee:3000 +> [Boivin:slave:(2) 8.764224] [pmm/INFO] LINE: step(1) <> Myline(0). Receive data from Geoff:3000 +> [Gatien:slave:(9) 8.810401] [pmm/INFO] LINE: step(2) = Myline(2). Broadcast my data (myport=3000). +> [Gatien:slave:(9) 8.810401] [pmm/INFO] LINE: Send to Jean_Yves:3000 +> [Laroche:slave:(10) 8.810401] [pmm/INFO] ROW: step(1)<>myrow(2). Receive data from Gatien +> [Laroche:slave:(10) 8.810401] [pmm/INFO] LINE: step(2) = Myline(2). Broadcast my data (myport=3000). +> [Laroche:slave:(10) 8.810401] [pmm/INFO] LINE: Send to TeX:3000 +> [McGee:slave:(8) 8.834159] [pmm/INFO] LINE: step(1) <> Myline(2). Receive data from Geoff:3000 +> [McGee:slave:(8) 8.834159] [pmm/INFO] ROW: step(1)<>myrow(0). Receive data from Gatien +> [McGee:slave:(8) 8.834159] [pmm/INFO] LINE: step(2) = Myline(2). Broadcast my data (myport=3000). +> [McGee:slave:(8) 8.834159] [pmm/INFO] LINE: Send to Boivin:3000 +> [Jean_Yves:slave:(3) 8.918953] [pmm/INFO] ROW: Send to TeX:3000 +> [Boivin:slave:(2) 8.918953] [pmm/INFO] ROW: step(1)<>myrow(0). Receive data from Jean_Yves +> [McGee:slave:(8) 8.927254] [pmm/INFO] LINE: Send to Geoff:3000 +> [Boivin:slave:(2) 8.927254] [pmm/INFO] LINE: step(2) <> Myline(0). Receive data from McGee:3000 +> [Laroche:slave:(10) 8.964800] [pmm/INFO] LINE: Send to iRMX:3000 +> [Disney:slave:(6) 8.978161] [pmm/INFO] ROW: Send to iRMX:3000 +> [Geoff:slave:(5) 8.978161] [pmm/INFO] ROW: step(1)<>myrow(0). Receive data from Disney +> [Geoff:slave:(5) 9.048096] [pmm/INFO] LINE: step(2) <> Myline(1). Receive data from McGee:3000 +> [Laroche:slave:(10) 9.063569] [pmm/INFO] ROW: step(2)=myrow(2). Broadcast my data +> [Laroche:slave:(10) 9.063569] [pmm/INFO] ROW: Send to McGee:3000 +> [Laroche:slave:(10) 9.138190] [pmm/INFO] ROW: Send to Gatien:3000 +> [McGee:slave:(8) 9.138190] [pmm/INFO] ROW: step(2)<>myrow(0). Receive data from Laroche +> [TeX:slave:(4) 9.180015] [pmm/INFO] ROW: step(1)<>myrow(2). Receive data from Jean_Yves +> [TeX:slave:(4) 9.180015] [pmm/INFO] LINE: step(2) <> Myline(0). Receive data from Laroche:3000 +> [TeX:slave:(4) 9.180015] [pmm/INFO] ROW: step(2)=myrow(2). Broadcast my data +> [TeX:slave:(4) 9.180015] [pmm/INFO] ROW: Send to Boivin:3000 +> [McGee:slave:(8) 9.208603] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< +> [TeX:slave:(4) 9.269357] [pmm/INFO] ROW: Send to Jean_Yves:3000 +> [Boivin:slave:(2) 9.269357] [pmm/INFO] ROW: step(2)<>myrow(0). Receive data from TeX +> [iRMX:slave:(7) 9.317283] [pmm/INFO] ROW: step(1)<>myrow(2). Receive data from Disney +> [iRMX:slave:(7) 9.317283] [pmm/INFO] LINE: step(2) <> Myline(1). Receive data from Laroche:3000 +> [iRMX:slave:(7) 9.317283] [pmm/INFO] ROW: step(2)=myrow(2). Broadcast my data +> [iRMX:slave:(7) 9.317283] [pmm/INFO] ROW: Send to Geoff:3000 +> [Boivin:slave:(2) 9.352493] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< +> [Gatien:slave:(9) 9.352609] [pmm/INFO] LINE: Send to Disney:3000 +> [Jean_Yves:slave:(3) 9.352609] [pmm/INFO] LINE: step(2) <> Myline(0). Receive data from Gatien:3000 +> [Disney:slave:(6) 9.459622] [pmm/INFO] LINE: step(2) <> Myline(1). Receive data from Gatien:3000 +> [iRMX:slave:(7) 9.557920] [pmm/INFO] ROW: Send to Disney:3000 +> [Geoff:slave:(5) 9.557920] [pmm/INFO] ROW: step(2)<>myrow(0). Receive data from iRMX +> [Geoff:slave:(5) 9.558451] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< +> [Gatien:slave:(9) 9.564821] [pmm/INFO] ROW: step(2)<>myrow(1). Receive data from Laroche +> [Jean_Yves:slave:(3) 9.567824] [pmm/INFO] ROW: step(2)<>myrow(1). Receive data from TeX +> [Laroche:slave:(10) 9.707543] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< +> [Gatien:slave:(9) 9.808558] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< +> [Disney:slave:(6) 9.811634] [pmm/INFO] ROW: step(2)<>myrow(1). Receive data from iRMX +> [TeX:slave:(4) 9.952227] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< +> [Jean_Yves:slave:(3) 10.025551] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< +> [iRMX:slave:(7) 10.266798] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< +> [Disney:slave:(6) 10.411336] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< +> [Jacquelin:master:(1) 10.411336] [pmm/INFO] The Result of Multiplication is : +> >>> Matrix C:res dump (18 x 18) +> 0.00 18.00 36.00 54.00 72.00 90.00 108.00 126.00 144.00 162.00 180.00 198.00 216.00 234.00 252.00 270.00 288.00 306.00 +> 1.00 19.00 37.00 55.00 73.00 91.00 109.00 127.00 145.00 163.00 181.00 199.00 217.00 235.00 253.00 271.00 289.00 307.00 +> 2.00 20.00 38.00 56.00 74.00 92.00 110.00 128.00 146.00 164.00 182.00 200.00 218.00 236.00 254.00 272.00 290.00 308.00 +> 3.00 21.00 39.00 57.00 75.00 93.00 111.00 129.00 147.00 165.00 183.00 201.00 219.00 237.00 255.00 273.00 291.00 309.00 +> 4.00 22.00 40.00 58.00 76.00 94.00 112.00 130.00 148.00 166.00 184.00 202.00 220.00 238.00 256.00 274.00 292.00 310.00 +> 5.00 23.00 41.00 59.00 77.00 95.00 113.00 131.00 149.00 167.00 185.00 203.00 221.00 239.00 257.00 275.00 293.00 311.00 +> 6.00 24.00 42.00 60.00 78.00 96.00 114.00 132.00 150.00 168.00 186.00 204.00 222.00 240.00 258.00 276.00 294.00 312.00 +> 7.00 25.00 43.00 61.00 79.00 97.00 115.00 133.00 151.00 169.00 187.00 205.00 223.00 241.00 259.00 277.00 295.00 313.00 +> 8.00 26.00 44.00 62.00 80.00 98.00 116.00 134.00 152.00 170.00 188.00 206.00 224.00 242.00 260.00 278.00 296.00 314.00 +> 9.00 27.00 45.00 63.00 81.00 99.00 117.00 135.00 153.00 171.00 189.00 207.00 225.00 243.00 261.00 279.00 297.00 315.00 +> 10.00 28.00 46.00 64.00 82.00 100.00 118.00 136.00 154.00 172.00 190.00 208.00 226.00 244.00 262.00 280.00 298.00 316.00 +> 11.00 29.00 47.00 65.00 83.00 101.00 119.00 137.00 155.00 173.00 191.00 209.00 227.00 245.00 263.00 281.00 299.00 317.00 +> 12.00 30.00 48.00 66.00 84.00 102.00 120.00 138.00 156.00 174.00 192.00 210.00 228.00 246.00 264.00 282.00 300.00 318.00 +> 13.00 31.00 49.00 67.00 85.00 103.00 121.00 139.00 157.00 175.00 193.00 211.00 229.00 247.00 265.00 283.00 301.00 319.00 +> 14.00 32.00 50.00 68.00 86.00 104.00 122.00 140.00 158.00 176.00 194.00 212.00 230.00 248.00 266.00 284.00 302.00 320.00 +> 15.00 33.00 51.00 69.00 87.00 105.00 123.00 141.00 159.00 177.00 195.00 213.00 231.00 249.00 267.00 285.00 303.00 321.00 +> 16.00 34.00 52.00 70.00 88.00 106.00 124.00 142.00 160.00 178.00 196.00 214.00 232.00 250.00 268.00 286.00 304.00 322.00 +> 17.00 35.00 53.00 71.00 89.00 107.00 125.00 143.00 161.00 179.00 197.00 215.00 233.00 251.00 269.00 287.00 305.00 323.00 +> <<< end_of_matrix C:res dump +> [Boivin:slave:(2) 10.491957] [gras/INFO] Exiting GRAS +> [Jean_Yves:slave:(3) 10.563063] [gras/INFO] Exiting GRAS +> [TeX:slave:(4) 10.702385] [gras/INFO] Exiting GRAS +> [Geoff:slave:(5) 10.702796] [gras/INFO] Exiting GRAS +> [Disney:slave:(6) 10.842960] [gras/INFO] Exiting GRAS +> [iRMX:slave:(7) 11.076908] [gras/INFO] Exiting GRAS +> [McGee:slave:(8) 11.145190] [gras/INFO] Exiting GRAS +> [Gatien:slave:(9) 11.243148] [gras/INFO] Exiting GRAS +> [Jacquelin:master:(1) 11.381552] [gras/INFO] Exiting GRAS +> [Laroche:slave:(10) 11.381552] [gras/INFO] Exiting GRAS diff --git a/examples/gras/pmm/test_sg_64 b/examples/gras/pmm/test_sg_64 new file mode 100755 index 0000000000..8e42c5b0c6 --- /dev/null +++ b/examples/gras/pmm/test_sg_64 @@ -0,0 +1,200 @@ +$ $SG_TEST_EXENV ./pmm_simulator$EXEEXT $srcdir/../../msg/msg_platform.xml $srcdir/pmm.xml +> [Jacquelin:master:(1) 0.000000] [pmm/INFO] Wait for peers for 5 sec +> [Boivin:slave:(2) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Jean_Yves:slave:(3) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [TeX:slave:(4) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Geoff:slave:(5) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Disney:slave:(6) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [iRMX:slave:(7) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [McGee:slave:(8) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Gatien:slave:(9) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Laroche:slave:(10) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Tanguay:slave:(11) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Morin:slave:(12) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Ethernet:slave:(13) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Bellemarre:slave:(14) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Kuenning:slave:(15) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Gaston:slave:(16) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Bousquet:slave:(17) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Paul:slave:(18) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [St_Jean:slave:(19) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Jill:slave:(20) 1.000000] [pmm/INFO] Sensor starting (on port 3000) +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Got 19 pals +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connecting to Boivin:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connected to Boivin:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connecting to Jean_Yves:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connected to Jean_Yves:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connecting to TeX:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connected to TeX:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connecting to Geoff:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connected to Geoff:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connecting to Disney:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connected to Disney:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connecting to iRMX:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connected to iRMX:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connecting to McGee:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connected to McGee:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connecting to Gatien:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connected to Gatien:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connecting to Laroche:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Connected to Laroche:3000. +> [Jacquelin:master:(1) 5.082948] [pmm/INFO] Too much slaves. Killing Tanguay:3000 +> [Jacquelin:master:(1) 5.159107] [pmm/INFO] Too much slaves. Killing Morin:3000 +> [Tanguay:slave:(11) 5.159107] [gras/INFO] Exiting GRAS +> [Jacquelin:master:(1) 5.302399] [pmm/INFO] Too much slaves. Killing Ethernet:3000 +> [Morin:slave:(12) 5.302399] [gras/INFO] Exiting GRAS +> [Jacquelin:master:(1) 5.383890] [pmm/INFO] Too much slaves. Killing Bellemarre:3000 +> [Ethernet:slave:(13) 5.383890] [gras/INFO] Exiting GRAS +> [Jacquelin:master:(1) 5.523063] [pmm/INFO] Too much slaves. Killing Kuenning:3000 +> [Bellemarre:slave:(14) 5.523063] [gras/INFO] Exiting GRAS +> [Jacquelin:master:(1) 5.588959] [pmm/INFO] Too much slaves. Killing Gaston:3000 +> [Kuenning:slave:(15) 5.588959] [gras/INFO] Exiting GRAS +> [Jacquelin:master:(1) 5.662429] [pmm/INFO] Too much slaves. Killing Bousquet:3000 +> [Gaston:slave:(16) 5.662429] [gras/INFO] Exiting GRAS +> [Jacquelin:master:(1) 5.740421] [pmm/INFO] Too much slaves. Killing Paul:3000 +> [Bousquet:slave:(17) 5.740421] [gras/INFO] Exiting GRAS +> [Jacquelin:master:(1) 5.844574] [pmm/INFO] Too much slaves. Killing St_Jean:3000 +> [Paul:slave:(18) 5.844574] [gras/INFO] Exiting GRAS +> [Jacquelin:master:(1) 5.983872] [pmm/INFO] Too much slaves. Killing Jill:3000 +> [St_Jean:slave:(19) 5.983872] [gras/INFO] Exiting GRAS +> [Jacquelin:master:(1) 6.136256] [pmm/INFO] XXXXXXXXXXXXXXXXXXXXXX begin Multiplication +> [Jill:slave:(20) 6.136256] [gras/INFO] Exiting GRAS +> [Boivin:slave:(2) 7.222182] [pmm/INFO] Receive my pos (0,0) and assignment +> [Boivin:slave:(2) 7.222182] [pmm/INFO] LINE: step(0) = Myline(0). Broadcast my data (myport=3000). +> [Boivin:slave:(2) 7.222182] [pmm/INFO] LINE: Send to Geoff:3000 +> [Jean_Yves:slave:(3) 7.297959] [pmm/INFO] Receive my pos (0,1) and assignment +> [Jean_Yves:slave:(3) 7.297959] [pmm/INFO] LINE: step(0) = Myline(0). Broadcast my data (myport=3000). +> [Jean_Yves:slave:(3) 7.297959] [pmm/INFO] LINE: Send to Disney:3000 +> [TeX:slave:(4) 7.446505] [pmm/INFO] Receive my pos (0,2) and assignment +> [TeX:slave:(4) 7.446505] [pmm/INFO] LINE: step(0) = Myline(0). Broadcast my data (myport=3000). +> [TeX:slave:(4) 7.446505] [pmm/INFO] LINE: Send to iRMX:3000 +> [Geoff:slave:(5) 7.447170] [pmm/INFO] Receive my pos (1,0) and assignment +> [Boivin:slave:(2) 7.529819] [pmm/INFO] LINE: Send to McGee:3000 +> [Geoff:slave:(5) 7.529819] [pmm/INFO] LINE: step(0) <> Myline(1). Receive data from Boivin:3000 +> [Geoff:slave:(5) 7.529819] [pmm/INFO] ROW: step(0)=myrow(0). Broadcast my data +> [Geoff:slave:(5) 7.529819] [pmm/INFO] ROW: Send to Disney:3000 +> [Disney:slave:(6) 7.596585] [pmm/INFO] Receive my pos (1,1) and assignment +> [Jean_Yves:slave:(3) 7.812668] [pmm/INFO] LINE: Send to Gatien:3000 +> [Disney:slave:(6) 7.812668] [pmm/INFO] LINE: step(0) <> Myline(1). Receive data from Jean_Yves:3000 +> [iRMX:slave:(7) 7.845903] [pmm/INFO] Receive my pos (1,2) and assignment +> [McGee:slave:(8) 7.918692] [pmm/INFO] Receive my pos (2,0) and assignment +> [Boivin:slave:(2) 7.926992] [pmm/INFO] ROW: step(0)=myrow(0). Broadcast my data +> [Boivin:slave:(2) 7.926992] [pmm/INFO] ROW: Send to Jean_Yves:3000 +> [McGee:slave:(8) 7.926992] [pmm/INFO] LINE: step(0) <> Myline(2). Receive data from Boivin:3000 +> [McGee:slave:(8) 7.926992] [pmm/INFO] ROW: step(0)=myrow(0). Broadcast my data +> [McGee:slave:(8) 7.926992] [pmm/INFO] ROW: Send to Gatien:3000 +> [Geoff:slave:(5) 7.956670] [pmm/INFO] ROW: Send to iRMX:3000 +> [Disney:slave:(6) 7.956670] [pmm/INFO] ROW: step(0)<>myrow(1). Receive data from Geoff +> [Disney:slave:(6) 7.956670] [pmm/INFO] LINE: step(1) = Myline(1). Broadcast my data (myport=3000). +> [Disney:slave:(6) 7.956670] [pmm/INFO] LINE: Send to Jean_Yves:3000 +> [Gatien:slave:(9) 8.023145] [pmm/INFO] Receive my pos (2,1) and assignment +> [TeX:slave:(4) 8.098750] [pmm/INFO] LINE: Send to Laroche:3000 +> [iRMX:slave:(7) 8.098750] [pmm/INFO] LINE: step(0) <> Myline(1). Receive data from TeX:3000 +> [Laroche:slave:(10) 8.170600] [pmm/INFO] Receive my pos (2,2) and assignment +> [Gatien:slave:(9) 8.195738] [pmm/INFO] LINE: step(0) <> Myline(2). Receive data from Jean_Yves:3000 +> [McGee:slave:(8) 8.227377] [pmm/INFO] ROW: Send to Laroche:3000 +> [Gatien:slave:(9) 8.227377] [pmm/INFO] ROW: step(0)<>myrow(1). Receive data from McGee +> [Laroche:slave:(10) 8.325000] [pmm/INFO] LINE: step(0) <> Myline(2). Receive data from TeX:3000 +> [Geoff:slave:(5) 8.339386] [pmm/INFO] LINE: step(1) = Myline(1). Broadcast my data (myport=3000). +> [Geoff:slave:(5) 8.339386] [pmm/INFO] LINE: Send to Boivin:3000 +> [iRMX:slave:(7) 8.339386] [pmm/INFO] ROW: step(0)<>myrow(2). Receive data from Geoff +> [iRMX:slave:(7) 8.339386] [pmm/INFO] LINE: step(1) = Myline(1). Broadcast my data (myport=3000). +> [iRMX:slave:(7) 8.339386] [pmm/INFO] LINE: Send to TeX:3000 +> [Boivin:slave:(2) 8.350468] [pmm/INFO] ROW: Send to TeX:3000 +> [Jean_Yves:slave:(3) 8.350468] [pmm/INFO] ROW: step(0)<>myrow(1). Receive data from Boivin +> [Laroche:slave:(10) 8.399620] [pmm/INFO] ROW: step(0)<>myrow(2). Receive data from McGee +> [Disney:slave:(6) 8.566551] [pmm/INFO] LINE: Send to Gatien:3000 +> [Jean_Yves:slave:(3) 8.566551] [pmm/INFO] LINE: step(1) <> Myline(0). Receive data from Disney:3000 +> [Jean_Yves:slave:(3) 8.566551] [pmm/INFO] ROW: step(1)=myrow(1). Broadcast my data +> [Jean_Yves:slave:(3) 8.566551] [pmm/INFO] ROW: Send to Boivin:3000 +> [iRMX:slave:(7) 8.592233] [pmm/INFO] LINE: Send to Laroche:3000 +> [Disney:slave:(6) 8.673563] [pmm/INFO] ROW: step(1)=myrow(1). Broadcast my data +> [Disney:slave:(6) 8.673563] [pmm/INFO] ROW: Send to Geoff:3000 +> [Gatien:slave:(9) 8.673563] [pmm/INFO] LINE: step(1) <> Myline(2). Receive data from Disney:3000 +> [Gatien:slave:(9) 8.673563] [pmm/INFO] ROW: step(1)=myrow(1). Broadcast my data +> [Gatien:slave:(9) 8.673563] [pmm/INFO] ROW: Send to McGee:3000 +> [TeX:slave:(4) 8.681575] [pmm/INFO] ROW: step(0)<>myrow(2). Receive data from Boivin +> [TeX:slave:(4) 8.681575] [pmm/INFO] LINE: step(1) <> Myline(0). Receive data from iRMX:3000 +> [Laroche:slave:(10) 8.691003] [pmm/INFO] LINE: step(1) <> Myline(2). Receive data from iRMX:3000 +> [Gatien:slave:(9) 8.705202] [pmm/INFO] ROW: Send to Laroche:3000 +> [Geoff:slave:(5) 8.764224] [pmm/INFO] LINE: Send to McGee:3000 +> [Boivin:slave:(2) 8.764224] [pmm/INFO] LINE: step(1) <> Myline(0). Receive data from Geoff:3000 +> [Gatien:slave:(9) 8.810401] [pmm/INFO] LINE: step(2) = Myline(2). Broadcast my data (myport=3000). +> [Gatien:slave:(9) 8.810401] [pmm/INFO] LINE: Send to Jean_Yves:3000 +> [Laroche:slave:(10) 8.810401] [pmm/INFO] ROW: step(1)<>myrow(2). Receive data from Gatien +> [Laroche:slave:(10) 8.810401] [pmm/INFO] LINE: step(2) = Myline(2). Broadcast my data (myport=3000). +> [Laroche:slave:(10) 8.810401] [pmm/INFO] LINE: Send to TeX:3000 +> [McGee:slave:(8) 8.834159] [pmm/INFO] LINE: step(1) <> Myline(2). Receive data from Geoff:3000 +> [McGee:slave:(8) 8.834159] [pmm/INFO] ROW: step(1)<>myrow(0). Receive data from Gatien +> [McGee:slave:(8) 8.834159] [pmm/INFO] LINE: step(2) = Myline(2). Broadcast my data (myport=3000). +> [McGee:slave:(8) 8.834159] [pmm/INFO] LINE: Send to Boivin:3000 +> [Jean_Yves:slave:(3) 8.918953] [pmm/INFO] ROW: Send to TeX:3000 +> [Boivin:slave:(2) 8.918953] [pmm/INFO] ROW: step(1)<>myrow(0). Receive data from Jean_Yves +> [McGee:slave:(8) 8.927254] [pmm/INFO] LINE: Send to Geoff:3000 +> [Boivin:slave:(2) 8.927254] [pmm/INFO] LINE: step(2) <> Myline(0). Receive data from McGee:3000 +> [Laroche:slave:(10) 8.964800] [pmm/INFO] LINE: Send to iRMX:3000 +> [Disney:slave:(6) 8.978161] [pmm/INFO] ROW: Send to iRMX:3000 +> [Geoff:slave:(5) 8.978161] [pmm/INFO] ROW: step(1)<>myrow(0). Receive data from Disney +> [Geoff:slave:(5) 9.048096] [pmm/INFO] LINE: step(2) <> Myline(1). Receive data from McGee:3000 +> [Laroche:slave:(10) 9.063569] [pmm/INFO] ROW: step(2)=myrow(2). Broadcast my data +> [Laroche:slave:(10) 9.063569] [pmm/INFO] ROW: Send to McGee:3000 +> [Laroche:slave:(10) 9.138190] [pmm/INFO] ROW: Send to Gatien:3000 +> [McGee:slave:(8) 9.138190] [pmm/INFO] ROW: step(2)<>myrow(0). Receive data from Laroche +> [TeX:slave:(4) 9.180015] [pmm/INFO] ROW: step(1)<>myrow(2). Receive data from Jean_Yves +> [TeX:slave:(4) 9.180015] [pmm/INFO] LINE: step(2) <> Myline(0). Receive data from Laroche:3000 +> [TeX:slave:(4) 9.180015] [pmm/INFO] ROW: step(2)=myrow(2). Broadcast my data +> [TeX:slave:(4) 9.180015] [pmm/INFO] ROW: Send to Boivin:3000 +> [McGee:slave:(8) 9.208603] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< +> [TeX:slave:(4) 9.269357] [pmm/INFO] ROW: Send to Jean_Yves:3000 +> [Boivin:slave:(2) 9.269357] [pmm/INFO] ROW: step(2)<>myrow(0). Receive data from TeX +> [iRMX:slave:(7) 9.317283] [pmm/INFO] ROW: step(1)<>myrow(2). Receive data from Disney +> [iRMX:slave:(7) 9.317283] [pmm/INFO] LINE: step(2) <> Myline(1). Receive data from Laroche:3000 +> [iRMX:slave:(7) 9.317283] [pmm/INFO] ROW: step(2)=myrow(2). Broadcast my data +> [iRMX:slave:(7) 9.317283] [pmm/INFO] ROW: Send to Geoff:3000 +> [Boivin:slave:(2) 9.352493] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< +> [Gatien:slave:(9) 9.352609] [pmm/INFO] LINE: Send to Disney:3000 +> [Jean_Yves:slave:(3) 9.352609] [pmm/INFO] LINE: step(2) <> Myline(0). Receive data from Gatien:3000 +> [Disney:slave:(6) 9.459622] [pmm/INFO] LINE: step(2) <> Myline(1). Receive data from Gatien:3000 +> [iRMX:slave:(7) 9.557920] [pmm/INFO] ROW: Send to Disney:3000 +> [Geoff:slave:(5) 9.557920] [pmm/INFO] ROW: step(2)<>myrow(0). Receive data from iRMX +> [Geoff:slave:(5) 9.558451] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< +> [Gatien:slave:(9) 9.564821] [pmm/INFO] ROW: step(2)<>myrow(1). Receive data from Laroche +> [Jean_Yves:slave:(3) 9.567824] [pmm/INFO] ROW: step(2)<>myrow(1). Receive data from TeX +> [Laroche:slave:(10) 9.707543] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< +> [Gatien:slave:(9) 9.808558] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< +> [Disney:slave:(6) 9.811634] [pmm/INFO] ROW: step(2)<>myrow(1). Receive data from iRMX +> [TeX:slave:(4) 9.952227] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< +> [Jean_Yves:slave:(3) 10.025551] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< +> [iRMX:slave:(7) 10.266798] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< +> [Disney:slave:(6) 10.411336] [pmm/INFO] >>>>>>>> Result sent to Jacquelin:4242 <<<<<<<< +> [Jacquelin:master:(1) 10.411336] [pmm/INFO] The Result of Multiplication is : +> >>> Matrix C:res dump (18 x 18) +> 0.00 18.00 36.00 54.00 72.00 90.00 108.00 126.00 144.00 162.00 180.00 198.00 216.00 234.00 252.00 270.00 288.00 306.00 +> 1.00 19.00 37.00 55.00 73.00 91.00 109.00 127.00 145.00 163.00 181.00 199.00 217.00 235.00 253.00 271.00 289.00 307.00 +> 2.00 20.00 38.00 56.00 74.00 92.00 110.00 128.00 146.00 164.00 182.00 200.00 218.00 236.00 254.00 272.00 290.00 308.00 +> 3.00 21.00 39.00 57.00 75.00 93.00 111.00 129.00 147.00 165.00 183.00 201.00 219.00 237.00 255.00 273.00 291.00 309.00 +> 4.00 22.00 40.00 58.00 76.00 94.00 112.00 130.00 148.00 166.00 184.00 202.00 220.00 238.00 256.00 274.00 292.00 310.00 +> 5.00 23.00 41.00 59.00 77.00 95.00 113.00 131.00 149.00 167.00 185.00 203.00 221.00 239.00 257.00 275.00 293.00 311.00 +> 6.00 24.00 42.00 60.00 78.00 96.00 114.00 132.00 150.00 168.00 186.00 204.00 222.00 240.00 258.00 276.00 294.00 312.00 +> 7.00 25.00 43.00 61.00 79.00 97.00 115.00 133.00 151.00 169.00 187.00 205.00 223.00 241.00 259.00 277.00 295.00 313.00 +> 8.00 26.00 44.00 62.00 80.00 98.00 116.00 134.00 152.00 170.00 188.00 206.00 224.00 242.00 260.00 278.00 296.00 314.00 +> 9.00 27.00 45.00 63.00 81.00 99.00 117.00 135.00 153.00 171.00 189.00 207.00 225.00 243.00 261.00 279.00 297.00 315.00 +> 10.00 28.00 46.00 64.00 82.00 100.00 118.00 136.00 154.00 172.00 190.00 208.00 226.00 244.00 262.00 280.00 298.00 316.00 +> 11.00 29.00 47.00 65.00 83.00 101.00 119.00 137.00 155.00 173.00 191.00 209.00 227.00 245.00 263.00 281.00 299.00 317.00 +> 12.00 30.00 48.00 66.00 84.00 102.00 120.00 138.00 156.00 174.00 192.00 210.00 228.00 246.00 264.00 282.00 300.00 318.00 +> 13.00 31.00 49.00 67.00 85.00 103.00 121.00 139.00 157.00 175.00 193.00 211.00 229.00 247.00 265.00 283.00 301.00 319.00 +> 14.00 32.00 50.00 68.00 86.00 104.00 122.00 140.00 158.00 176.00 194.00 212.00 230.00 248.00 266.00 284.00 302.00 320.00 +> 15.00 33.00 51.00 69.00 87.00 105.00 123.00 141.00 159.00 177.00 195.00 213.00 231.00 249.00 267.00 285.00 303.00 321.00 +> 16.00 34.00 52.00 70.00 88.00 106.00 124.00 142.00 160.00 178.00 196.00 214.00 232.00 250.00 268.00 286.00 304.00 322.00 +> 17.00 35.00 53.00 71.00 89.00 107.00 125.00 143.00 161.00 179.00 197.00 215.00 233.00 251.00 269.00 287.00 305.00 323.00 +> <<< end_of_matrix C:res dump +> [Boivin:slave:(2) 10.491957] [gras/INFO] Exiting GRAS +> [Jean_Yves:slave:(3) 10.563063] [gras/INFO] Exiting GRAS +> [TeX:slave:(4) 10.702385] [gras/INFO] Exiting GRAS +> [Geoff:slave:(5) 10.702796] [gras/INFO] Exiting GRAS +> [Disney:slave:(6) 10.842960] [gras/INFO] Exiting GRAS +> [iRMX:slave:(7) 11.076908] [gras/INFO] Exiting GRAS +> [McGee:slave:(8) 11.145190] [gras/INFO] Exiting GRAS +> [Gatien:slave:(9) 11.243148] [gras/INFO] Exiting GRAS +> [Jacquelin:master:(1) 11.381552] [gras/INFO] Exiting GRAS +> [Laroche:slave:(10) 11.381552] [gras/INFO] Exiting GRAS diff --git a/examples/gras/rpc/.cvsignore b/examples/gras/rpc/.cvsignore index c464e1c076..d563ddfcb5 100644 --- a/examples/gras/rpc/.cvsignore +++ b/examples/gras/rpc/.cvsignore @@ -1,5 +1,3 @@ .deps .libs Makefile _*.c *_server *_client *_simulator *_forwarder -test_sg -test_rl *.mk *.trace diff --git a/examples/gras/rpc/Makefile.am b/examples/gras/rpc/Makefile.am index c816f9ee07..65d94dcda0 100644 --- a/examples/gras/rpc/Makefile.am +++ b/examples/gras/rpc/Makefile.am @@ -1,8 +1,6 @@ INCLUDES= -I$(top_srcdir)/include -TESTS= test_rl test_sg -TESTS_ENVIRONMENT=../../../tools/tesh/tesh - -EXTRA_DIST=rpc.xml $(TESTS) +EXTRA_DIST=rpc.xml +include $(top_srcdir)/examples/gras/tests.mk # AUTOMAKE variable definition noinst_PROGRAMS=rpc_client rpc_forwarder rpc_server rpc_simulator diff --git a/examples/gras/rpc/Makefile.in b/examples/gras/rpc/Makefile.in index de021659cb..67e7e2556c 100644 --- a/examples/gras/rpc/Makefile.in +++ b/examples/gras/rpc/Makefile.in @@ -14,6 +14,19 @@ @SET_MAKE@ +# This file factorize all the testing infrastructure for the GRAS examples +# +# it's made complicated by the facts that: +# - we use tesh, we need to find it back +# - we don't want to generate the test_* files with configure, so we +# have to declare some variables in front of the shell command +# running the test +# - we want to fully test the surf on the way. So, we have to ask for +# full precision timestamps in the tests. On the other hand, +# message size differ when we are on 32bits and when we are on +# 64bits (obviously), so we have to maintain 2 tests per directory +# and pick the right one here. + # Makefile chunk which allows to display the files which should be included # into the distribution. @@ -42,12 +55,12 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ -noinst_PROGRAMS = rpc_client$(EXEEXT) rpc_forwarder$(EXEEXT) \ - rpc_server$(EXEEXT) rpc_simulator$(EXEEXT) DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ - $(srcdir)/test_rl.in $(srcdir)/test_sg.in \ $(top_srcdir)/acmacro/dist-files.mk \ + $(top_srcdir)/examples/gras/tests.mk \ $(top_srcdir)/examples/temps-gras-stub.mk +noinst_PROGRAMS = rpc_client$(EXEEXT) rpc_forwarder$(EXEEXT) \ + rpc_server$(EXEEXT) rpc_simulator$(EXEEXT) subdir = examples/gras/rpc ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acmacro/ac_func_snprintf.m4 \ @@ -62,7 +75,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/src/gras_config.h -CONFIG_CLEAN_FILES = test_sg test_rl +CONFIG_CLEAN_FILES = PROGRAMS = $(noinst_PROGRAMS) am_rpc_client_OBJECTS = _rpc_client.$(OBJEXT) rpc.$(OBJEXT) rpc_client_OBJECTS = $(am_rpc_client_OBJECTS) @@ -132,6 +145,8 @@ FFLAGS = @FFLAGS@ FLEXML = @FLEXML@ GRAMINE_MODE_FALSE = @GRAMINE_MODE_FALSE@ GRAMINE_MODE_TRUE = @GRAMINE_MODE_TRUE@ +GRAS_ARCH_32_BITS_FALSE = @GRAS_ARCH_32_BITS_FALSE@ +GRAS_ARCH_32_BITS_TRUE = @GRAS_ARCH_32_BITS_TRUE@ GRAS_DEP = @GRAS_DEP@ GREP = @GREP@ GTNETS_CFLAGS = @GTNETS_CFLAGS@ @@ -240,9 +255,10 @@ target_cpu = @target_cpu@ target_os = @target_os@ target_vendor = @target_vendor@ INCLUDES = -I$(top_srcdir)/include -TESTS = test_rl test_sg -TESTS_ENVIRONMENT = ../../../tools/tesh/tesh -EXTRA_DIST = rpc.xml $(TESTS) +EXTRA_DIST = rpc.xml test_rl test_sg_32 test_sg_64 +@GRAS_ARCH_32_BITS_FALSE@TESTS = test_rl test_sg_64 +@GRAS_ARCH_32_BITS_TRUE@TESTS = test_rl test_sg_32 +TESTS_ENVIRONMENT = srcdir=$(srcdir) EXEEXT=$(EXEEXT) @top_builddir@/tools/tesh/tesh rpc_simulator_SOURCES = _rpc_simulator.c rpc.c rpc_simulator_LDADD = $(top_builddir)/src/libsimgrid.la rpc_client_SOURCES = _rpc_client.c rpc.c @@ -263,7 +279,7 @@ all: all-am .SUFFIXES: .SUFFIXES: .c .lo .o .obj -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/examples/temps-gras-stub.mk $(top_srcdir)/acmacro/dist-files.mk $(am__configure_deps) +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/examples/gras/tests.mk $(top_srcdir)/examples/temps-gras-stub.mk $(top_srcdir)/acmacro/dist-files.mk $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ @@ -292,10 +308,6 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -test_sg: $(top_builddir)/config.status $(srcdir)/test_sg.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ -test_rl: $(top_builddir)/config.status $(srcdir)/test_rl.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ clean-noinstPROGRAMS: @list='$(noinst_PROGRAMS)'; for p in $$list; do \ @@ -481,7 +493,7 @@ check-TESTS: $(TESTS) else :; fi distdir: $(DISTFILES) - $(mkdir_p) $(distdir)/../../../acmacro $(distdir)/../../../examples + $(mkdir_p) $(distdir)/../../../acmacro $(distdir)/../../../examples $(distdir)/../../../examples/gras @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ @@ -602,6 +614,13 @@ uninstall-am: uninstall-info-am mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags uninstall uninstall-am uninstall-info-am +@GRAS_ARCH_32_BITS_TRUE@test-sg: +@GRAS_ARCH_32_BITS_TRUE@ $(TESTS_ENVIRONMENT) test_sg_32 +@GRAS_ARCH_32_BITS_FALSE@test-sg: +@GRAS_ARCH_32_BITS_FALSE@ $(TESTS_ENVIRONMENT) test_sg_32 + +test-rl: + $(TESTS_ENVIRONMENT) test_rl $(foreach proc, $(PROCESSES), _$(NAME)_$(proc).c) _$(NAME)_simulator.c: $(srcdir)/$(NAME).xml $(top_builddir)/tools/gras/gras_stub_generator@EXEEXT@ [ x@EXEEXT@ = x ] || exenv=wine; $$exenv $(top_builddir)/tools/gras/gras_stub_generator@EXEEXT@ $(NAME) $(srcdir)/$(NAME).xml diff --git a/examples/gras/rpc/test_rl.in b/examples/gras/rpc/test_rl similarity index 86% rename from examples/gras/rpc/test_rl.in rename to examples/gras/rpc/test_rl index aea8eaca7f..5acea95284 100755 --- a/examples/gras/rpc/test_rl.in +++ b/examples/gras/rpc/test_rl @@ -1,4 +1,4 @@ -& $SG_TEST_EXENV ./rpc_server@EXEEXT@ 4002 --log=root.fmt:%m%n $@ +& $SG_TEST_EXENV ./rpc_server$EXEEXT 4002 --log=root.fmt:%m%n $@ > Launch server (port=4002) > Listening on port 4002 > Got message PING(1234) from 127.0.0.1:0 @@ -7,7 +7,7 @@ > Done. > Exiting GRAS -& $SG_TEST_EXENV ./rpc_forwarder@EXEEXT@ 4003 127.0.0.1 4002 --log=root.fmt:%m%n $@ +& $SG_TEST_EXENV ./rpc_forwarder$EXEEXT 4003 127.0.0.1 4002 --log=root.fmt:%m%n $@ > Launch forwarder (port=4003) > Forward a request > Forward a request @@ -18,7 +18,7 @@ > Done. > Exiting GRAS -& $SG_TEST_EXENV ./rpc_client@EXEEXT@ 127.0.0.1 4002 127.0.0.1 4003 --log=root.fmt:%m%n $@ +& $SG_TEST_EXENV ./rpc_client$EXEEXT 127.0.0.1 4002 127.0.0.1 4003 --log=root.fmt:%m%n $@ > Launch client (server on 127.0.0.1:4002) > Connected to 127.0.0.1:4002. > Connected to server which is on 127.0.0.1:4002 diff --git a/examples/gras/rpc/test_sg.in b/examples/gras/rpc/test_sg_32 similarity index 95% rename from examples/gras/rpc/test_sg.in rename to examples/gras/rpc/test_sg_32 index 12aae7ec76..7677702b4f 100755 --- a/examples/gras/rpc/test_sg.in +++ b/examples/gras/rpc/test_sg_32 @@ -1,4 +1,4 @@ -$ $SG_TEST_EXENV ./rpc_simulator@EXEEXT@ @top_srcdir@/examples/msg/small_platform.xml @srcdir@/rpc.xml --log=root.fmt:"'[%h:%t:(%i) %.2r] [%c/%p] %m%n'" +$ $SG_TEST_EXENV ./rpc_simulator$EXEEXT $srcdir/../../msg/small_platform.xml $srcdir/rpc.xml --log=root.fmt:"'[%h:%t:(%i) %.2r] [%c/%p] %m%n'" > [Tremblay:server:(1) 0.00] [Rpc/INFO] Launch server (port=4000) > [Tremblay:server:(1) 0.00] [Rpc/INFO] Listening on port 4000 > [Ginette:forwarder:(2) 0.00] [Rpc/INFO] Launch forwarder (port=4000) diff --git a/examples/gras/rpc/test_sg_64 b/examples/gras/rpc/test_sg_64 new file mode 100755 index 0000000000..7677702b4f --- /dev/null +++ b/examples/gras/rpc/test_sg_64 @@ -0,0 +1,43 @@ +$ $SG_TEST_EXENV ./rpc_simulator$EXEEXT $srcdir/../../msg/small_platform.xml $srcdir/rpc.xml --log=root.fmt:"'[%h:%t:(%i) %.2r] [%c/%p] %m%n'" +> [Tremblay:server:(1) 0.00] [Rpc/INFO] Launch server (port=4000) +> [Tremblay:server:(1) 0.00] [Rpc/INFO] Listening on port 4000 +> [Ginette:forwarder:(2) 0.00] [Rpc/INFO] Launch forwarder (port=4000) +> [Fafard:client:(3) 0.00] [Rpc/INFO] Launch client (server on Tremblay:4000) +> [Fafard:client:(3) 2.00] [Rpc/INFO] Connected to Tremblay:4000. +> [Fafard:client:(3) 2.00] [Rpc/INFO] Connected to server which is on Tremblay:4000 +> [Tremblay:server:(1) 2.00] [Rpc/INFO] Got message PING(1234) from Fafard:0 +> [Tremblay:server:(1) 2.00] [Rpc/INFO] Answered with PONG(4321) +> [Fafard:client:(3) 2.00] [Rpc/INFO] The answer to PING(1234) on Tremblay:4000 is PONG(4321) +> [Fafard:client:(3) 2.00] [Rpc/INFO] Call the exception raising RPC +> [Fafard:client:(3) 2.01] [Rpc/INFO] Got the expected exception when calling the exception raising RPC +> [Fafard:client:(3) 2.01] [Rpc/INFO] Called the exception raising RPC +> [Fafard:client:(3) 2.01] [Rpc/INFO] Call the exception raising RPC (i=0) +> [Fafard:client:(3) 2.01] [Rpc/INFO] Call the exception raising RPC (i=1) +> [Fafard:client:(3) 2.02] [Rpc/INFO] Call the exception raising RPC (i=2) +> [Fafard:client:(3) 2.02] [Rpc/INFO] Call the exception raising RPC (i=3) +> [Fafard:client:(3) 2.02] [Rpc/INFO] Call the exception raising RPC (i=4) +> [Fafard:client:(3) 2.03] [Rpc/INFO] Call the exception raising RPC on the forwarder (i=0) +> [Ginette:forwarder:(2) 2.03] [Rpc/INFO] Forward a request +> [Fafard:client:(3) 2.03] [Rpc/INFO] Got the expected exception when calling the exception raising RPC +> [Fafard:client:(3) 2.03] [Rpc/INFO] Call the exception raising RPC on the forwarder (i=1) +> [Ginette:forwarder:(2) 2.03] [Rpc/INFO] Forward a request +> [Fafard:client:(3) 2.04] [Rpc/INFO] Got the expected exception when calling the exception raising RPC +> [Fafard:client:(3) 2.04] [Rpc/INFO] Call the exception raising RPC on the forwarder (i=2) +> [Ginette:forwarder:(2) 2.04] [Rpc/INFO] Forward a request +> [Fafard:client:(3) 2.04] [Rpc/INFO] Got the expected exception when calling the exception raising RPC +> [Fafard:client:(3) 2.04] [Rpc/INFO] Call the exception raising RPC on the forwarder (i=3) +> [Ginette:forwarder:(2) 2.05] [Rpc/INFO] Forward a request +> [Fafard:client:(3) 2.05] [Rpc/INFO] Got the expected exception when calling the exception raising RPC +> [Fafard:client:(3) 2.05] [Rpc/INFO] Call the exception raising RPC on the forwarder (i=4) +> [Ginette:forwarder:(2) 2.05] [Rpc/INFO] Forward a request +> [Fafard:client:(3) 2.05] [Rpc/INFO] Got the expected exception when calling the exception raising RPC +> [Fafard:client:(3) 2.05] [Rpc/INFO] Ask Ginette:4000 to die +> [Fafard:client:(3) 2.06] [Rpc/INFO] Ask Tremblay:4000 to die +> [Ginette:forwarder:(2) 2.06] [Rpc/INFO] Asked to die by Fafard:0 +> [Ginette:forwarder:(2) 2.06] [Rpc/INFO] Done. +> [Ginette:forwarder:(2) 2.06] [gras/INFO] Exiting GRAS +> [Fafard:client:(3) 2.06] [Rpc/INFO] Done. +> [Fafard:client:(3) 2.06] [gras/INFO] Exiting GRAS +> [Tremblay:server:(1) 2.06] [Rpc/INFO] Asked to die by Fafard:0 +> [Tremblay:server:(1) 2.06] [Rpc/INFO] Done. +> [Tremblay:server:(1) 2.06] [gras/INFO] Exiting GRAS diff --git a/examples/gras/tests.mk b/examples/gras/tests.mk new file mode 100644 index 0000000000..3c187ea5c1 --- /dev/null +++ b/examples/gras/tests.mk @@ -0,0 +1,29 @@ +# This file factorize all the testing infrastructure for the GRAS examples +# +# it's made complicated by the facts that: +# - we use tesh, we need to find it back +# - we don't want to generate the test_* files with configure, so we +# have to declare some variables in front of the shell command +# running the test +# - we want to fully test the surf on the way. So, we have to ask for +# full precision timestamps in the tests. On the other hand, +# message size differ when we are on 32bits and when we are on +# 64bits (obviously), so we have to maintain 2 tests per directory +# and pick the right one here. + +if GRAS_ARCH_32_BITS + TESTS= test_rl test_sg_32 +test-sg: + $(TESTS_ENVIRONMENT) test_sg_32 +else + TESTS= test_rl test_sg_64 +test-sg: + $(TESTS_ENVIRONMENT) test_sg_32 +endif + +test-rl: + $(TESTS_ENVIRONMENT) test_rl +TESTS_ENVIRONMENT=srcdir=$(srcdir) EXEEXT=$(EXEEXT) @top_builddir@/tools/tesh/tesh + + +EXTRA_DIST+=test_rl test_sg_32 test_sg_64 \ No newline at end of file diff --git a/examples/gras/timer/.cvsignore b/examples/gras/timer/.cvsignore index caf17459dd..5bb26fc042 100644 --- a/examples/gras/timer/.cvsignore +++ b/examples/gras/timer/.cvsignore @@ -1,5 +1,3 @@ .deps .libs Makefile _*.c timer_client timer_simulator -test_sg -test_rl timer.mk timer.trace diff --git a/examples/gras/timer/Makefile.am b/examples/gras/timer/Makefile.am index ce2e0cdb78..a6b26c3cf6 100644 --- a/examples/gras/timer/Makefile.am +++ b/examples/gras/timer/Makefile.am @@ -1,9 +1,8 @@ INCLUDES= -I$(top_srcdir)/include AM_CFLAGS=-g -TESTS= test_rl test_sg -TESTS_ENVIRONMENT=../../../tools/tesh/tesh EXTRA_DIST=$(NAME).xml $(TESTS) +include $(top_srcdir)/examples/gras/tests.mk # AUTOMAKE variable definition noinst_PROGRAMS=timer_client timer_simulator diff --git a/examples/gras/timer/Makefile.in b/examples/gras/timer/Makefile.in index 2a07ab0ab1..bd8aede8aa 100644 --- a/examples/gras/timer/Makefile.in +++ b/examples/gras/timer/Makefile.in @@ -14,6 +14,19 @@ @SET_MAKE@ +# This file factorize all the testing infrastructure for the GRAS examples +# +# it's made complicated by the facts that: +# - we use tesh, we need to find it back +# - we don't want to generate the test_* files with configure, so we +# have to declare some variables in front of the shell command +# running the test +# - we want to fully test the surf on the way. So, we have to ask for +# full precision timestamps in the tests. On the other hand, +# message size differ when we are on 32bits and when we are on +# 64bits (obviously), so we have to maintain 2 tests per directory +# and pick the right one here. + # Makefile chunk which allows to display the files which should be included # into the distribution. @@ -42,11 +55,11 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ -noinst_PROGRAMS = timer_client$(EXEEXT) timer_simulator$(EXEEXT) DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ - $(srcdir)/test_rl.in $(srcdir)/test_sg.in \ $(top_srcdir)/acmacro/dist-files.mk \ + $(top_srcdir)/examples/gras/tests.mk \ $(top_srcdir)/examples/temps-gras-stub.mk +noinst_PROGRAMS = timer_client$(EXEEXT) timer_simulator$(EXEEXT) subdir = examples/gras/timer ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acmacro/ac_func_snprintf.m4 \ @@ -61,7 +74,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/src/gras_config.h -CONFIG_CLEAN_FILES = test_sg test_rl +CONFIG_CLEAN_FILES = PROGRAMS = $(noinst_PROGRAMS) am_timer_client_OBJECTS = _timer_client.$(OBJEXT) timer.$(OBJEXT) timer_client_OBJECTS = $(am_timer_client_OBJECTS) @@ -124,6 +137,8 @@ FFLAGS = @FFLAGS@ FLEXML = @FLEXML@ GRAMINE_MODE_FALSE = @GRAMINE_MODE_FALSE@ GRAMINE_MODE_TRUE = @GRAMINE_MODE_TRUE@ +GRAS_ARCH_32_BITS_FALSE = @GRAS_ARCH_32_BITS_FALSE@ +GRAS_ARCH_32_BITS_TRUE = @GRAS_ARCH_32_BITS_TRUE@ GRAS_DEP = @GRAS_DEP@ GREP = @GREP@ GTNETS_CFLAGS = @GTNETS_CFLAGS@ @@ -232,9 +247,10 @@ target_cpu = @target_cpu@ target_os = @target_os@ target_vendor = @target_vendor@ INCLUDES = -I$(top_srcdir)/include -TESTS = test_rl test_sg -TESTS_ENVIRONMENT = ../../../tools/tesh/tesh -EXTRA_DIST = $(NAME).xml $(TESTS) +EXTRA_DIST = $(NAME).xml $(TESTS) test_rl test_sg_32 test_sg_64 +@GRAS_ARCH_32_BITS_FALSE@TESTS = test_rl test_sg_64 +@GRAS_ARCH_32_BITS_TRUE@TESTS = test_rl test_sg_32 +TESTS_ENVIRONMENT = srcdir=$(srcdir) EXEEXT=$(EXEEXT) @top_builddir@/tools/tesh/tesh timer_simulator_SOURCES = _timer_simulator.c timer.c timer_simulator_LDADD = $(top_builddir)/src/libsimgrid.la timer_client_SOURCES = _timer_client.c timer.c @@ -251,7 +267,7 @@ all: all-am .SUFFIXES: .SUFFIXES: .c .lo .o .obj -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/examples/temps-gras-stub.mk $(top_srcdir)/acmacro/dist-files.mk $(am__configure_deps) +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/examples/gras/tests.mk $(top_srcdir)/examples/temps-gras-stub.mk $(top_srcdir)/acmacro/dist-files.mk $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ @@ -280,10 +296,6 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -test_sg: $(top_builddir)/config.status $(srcdir)/test_sg.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ -test_rl: $(top_builddir)/config.status $(srcdir)/test_rl.in - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ clean-noinstPROGRAMS: @list='$(noinst_PROGRAMS)'; for p in $$list; do \ @@ -461,7 +473,7 @@ check-TESTS: $(TESTS) else :; fi distdir: $(DISTFILES) - $(mkdir_p) $(distdir)/../../../acmacro $(distdir)/../../../examples + $(mkdir_p) $(distdir)/../../../acmacro $(distdir)/../../../examples $(distdir)/../../../examples/gras @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ @@ -582,6 +594,13 @@ uninstall-am: uninstall-info-am mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags uninstall uninstall-am uninstall-info-am +@GRAS_ARCH_32_BITS_TRUE@test-sg: +@GRAS_ARCH_32_BITS_TRUE@ $(TESTS_ENVIRONMENT) test_sg_32 +@GRAS_ARCH_32_BITS_FALSE@test-sg: +@GRAS_ARCH_32_BITS_FALSE@ $(TESTS_ENVIRONMENT) test_sg_32 + +test-rl: + $(TESTS_ENVIRONMENT) test_rl $(foreach proc, $(PROCESSES), _$(NAME)_$(proc).c) _$(NAME)_simulator.c: $(srcdir)/$(NAME).xml $(top_builddir)/tools/gras/gras_stub_generator@EXEEXT@ [ x@EXEEXT@ = x ] || exenv=wine; $$exenv $(top_builddir)/tools/gras/gras_stub_generator@EXEEXT@ $(NAME) $(srcdir)/$(NAME).xml diff --git a/examples/gras/timer/test_rl.in b/examples/gras/timer/test_rl similarity index 92% rename from examples/gras/timer/test_rl.in rename to examples/gras/timer/test_rl index 1afa26c85b..1a159de50e 100755 --- a/examples/gras/timer/test_rl.in +++ b/examples/gras/timer/test_rl @@ -1,5 +1,5 @@ ! set timeout 20 -$ $SG_TEST_EXENV ./timer_client@EXEEXT@ --log=root.fmt:%m%n +$ $SG_TEST_EXENV ./timer_client$EXEEXT --log=root.fmt:%m%n > Programming the repetitive_action with a frequency of 1.000000 sec > Programming the delayed_action for after 2.000000 sec > Have a rest diff --git a/examples/gras/timer/test_sg.in b/examples/gras/timer/test_sg_32 similarity index 92% rename from examples/gras/timer/test_sg.in rename to examples/gras/timer/test_sg_32 index 45abb4bbfc..b9596f432e 100755 --- a/examples/gras/timer/test_sg.in +++ b/examples/gras/timer/test_sg_32 @@ -1,5 +1,5 @@ -$ $SG_TEST_EXENV ./timer_simulator@EXEEXT@ @top_srcdir@/examples/msg/small_platform.xml @srcdir@/timer.xml $@ +$ $SG_TEST_EXENV ./timer_simulator$EXEEXT $srcdir/../../msg/small_platform.xml $srcdir/timer.xml > [Fafard:client:(1) 0.000000] [test/INFO] Programming the repetitive_action with a frequency of 1.000000 sec > [Fafard:client:(1) 0.000000] [test/INFO] Programming the delayed_action for after 2.000000 sec > [Fafard:client:(1) 0.000000] [test/INFO] Have a rest diff --git a/examples/gras/timer/test_sg_64 b/examples/gras/timer/test_sg_64 new file mode 100755 index 0000000000..b9596f432e --- /dev/null +++ b/examples/gras/timer/test_sg_64 @@ -0,0 +1,16 @@ + +$ $SG_TEST_EXENV ./timer_simulator$EXEEXT $srcdir/../../msg/small_platform.xml $srcdir/timer.xml +> [Fafard:client:(1) 0.000000] [test/INFO] Programming the repetitive_action with a frequency of 1.000000 sec +> [Fafard:client:(1) 0.000000] [test/INFO] Programming the delayed_action for after 2.000000 sec +> [Fafard:client:(1) 0.000000] [test/INFO] Have a rest +> [Fafard:client:(1) 1.000000] [test/INFO] Canceling the delayed_action. +> [Fafard:client:(1) 1.000000] [test/INFO] Re-programming the delayed_action for after 2.000000 sec +> [Fafard:client:(1) 1.000000] [test/INFO] Repetitive_action has nothing to do yet +> [Fafard:client:(1) 2.000000] [test/INFO] Repetitive_action has nothing to do yet +> [Fafard:client:(1) 2.000000] [test/INFO] delayed_action setting globals->still_to_do to 5 +> [Fafard:client:(1) 3.000000] [test/INFO] repetitive_action decrementing globals->still_to_do. New value: 4 +> [Fafard:client:(1) 4.000000] [test/INFO] repetitive_action decrementing globals->still_to_do. New value: 3 +> [Fafard:client:(1) 5.000000] [test/INFO] repetitive_action decrementing globals->still_to_do. New value: 2 +> [Fafard:client:(1) 6.000000] [test/INFO] repetitive_action decrementing globals->still_to_do. New value: 1 +> [Fafard:client:(1) 7.000000] [test/INFO] repetitive_action decrementing globals->still_to_do. New value: 0 +> [Fafard:client:(1) 7.000000] [gras/INFO] Exiting GRAS -- 2.20.1