You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
38 lines
1.2 KiB
38 lines
1.2 KiB
4 years ago
|
DIRhosts=/home/ubuntu/hosts
|
||
|
DIR=/home/ubuntu
|
||
|
options=-env I_MPI_DEBUG=3
|
||
|
number=10
|
||
|
|
||
|
ex=
|
||
|
|
||
|
all: mpi_hello_world example
|
||
|
.PHONY: all
|
||
|
|
||
|
mpi_hello_world:
|
||
|
@swarmlab-getworkers > $(DIRhosts) ;\
|
||
|
mpicc ./mpi_hello_world.c -o $(DIR)/mpi_hello_world ;\
|
||
|
while read line; do\
|
||
|
echo "scp $(DIR)/mpi_hello_world ubuntu@$$line:$(DIR)/mpi_hello_world " ;\
|
||
|
scp $(DIR)/mpi_hello_world ubuntu@$$line:$(DIR)/mpi_hello_world ;\
|
||
|
echo "$$line" ;\
|
||
|
done < $(DIRhosts);\
|
||
|
echo "mpirun $(options) -wdir=$(DIR) -n $(number) -f $(DIRhosts) $(DIR)/mpi_hello_world" ; \
|
||
|
mpirun $(options) -wdir=$(DIR) -n $(number) -f $(DIRhosts) $(DIR)/mpi_hello_world
|
||
|
|
||
|
example:
|
||
|
@if [ ! -z $(ex) ]; then\
|
||
|
swarmlab-getworkers > $(DIRhosts) ;\
|
||
|
mpicc ./$(ex).c -o $(DIR)/$(ex) ;\
|
||
|
while read line; do\
|
||
|
echo "scp $(DIR)/$(ex) ubuntu@$$line:$(DIR)/$(ex) " ;\
|
||
|
scp $(DIR)/$(ex) ubuntu@$$line:$(DIR)/$(ex) ;\
|
||
|
echo "$$line" ;\
|
||
|
done < $(DIRhosts);\
|
||
|
echo "mpirun $(options) -wdir=$(DIR) -n $(number) -f $(DIRhosts) $(DIR)/$(ex)" ; \
|
||
|
mpirun $(options) -wdir=$(DIR) -n $(number) -f $(DIRhosts) $(DIR)/$(ex) ; \
|
||
|
else\
|
||
|
echo "usage: make example ex=source file" ; \
|
||
|
echo "e.g.: make example ex=mv" ; \
|
||
|
fi\
|
||
|
|