Hi,
I have a script I call fib.r. It looks like:
#!/usr/bin/env r
fib <- function( n ) {
a <- 0
b <- 1
for ( i in 1:n ) {
t <- b
b <- a
a <- a + t
}
a
}
print( fib(argv[1]) )
When I run this script with a parameter, it generates a fibonocci number:
$ fib.r 5
5
$ fib.r 6
8
and if I stick this into <program> part of MIMD example I have used previously:
$ mpirun -H vixen -np 1 hostname : --hostfile myhosts -np 8 fib.r 7
I get:
vixen.egcrc.org
[1] 13
[1] 13
[1] 13
[1] 13
[1] 13
[1] 13
[1] 13
[1] 13
This is good as proof of concept, but what I really want to do is to have that 7
different for each (slave) process. Ie., I want to run “rfib 5” on node 0, “rfib 6”
on node 1, “rfib 7” on node 2, and so on. Is there any way to give a different
parameter(s) to different process/slot?
I thought maybe I can use –rf option to do this, but I am leaning toward –app
option. Unfortunately, I see no example for the application context file. Would
someone kindly explain how I can do what I describe?
Thank you.
Tena Sakai
tsakai@gallo.ucsf.edu