找回密码
 注册
查看: 555|回复: 0

R语言 Rmpi包 mpi.parSim()函数中文帮助文档(中英文对照)

[复制链接]
发表于 2012-9-27 19:07:06 | 显示全部楼层 |阅读模式
mpi.parSim(Rmpi)
mpi.parSim()所属R语言包:Rmpi

                                        Parallel Monte Carlo Simulation
                                         并行Monte Carlo模拟

                                         译者:生物统计家园网 机器人LoveR

描述----------Description----------

Carry out parallel Monte Carlo simulation on R slaves spawned by  using slavedaemon.R script and all executed results are returned back to  master.
进行并行Monte Carlo模拟R上产生的使用slavedaemon.R脚本和执行的结果返回到主的奴隶。


用法----------Usage----------


mpi.parSim(n=100, rand.gen=rnorm, rand.arg=NULL,statistic,
nsim=100, run=1, slaveinfo=FALSE, sim.seq=NULL, simplify=TRUE, comm=1, ...)  



参数----------Arguments----------

参数:n
sample size.
样本大小。


参数:rand.gen
the random data generating function. See the details  section
的随机数据生成功能。查看详细资料


参数:rand.arg
additional argument list to rand.gen.
额外的参数列表rand.gen。


参数:statistic
the statistic function to be simulated. See the  details section
统计功能进行模拟。查看详细资料


参数:nsim
the number of simulation carried on a slave which is  counted as one slave job.
数进行模拟算作一个从站工作的奴隶。


参数:run
the number of looping. See the details section.
循环的数量。查看详细资料“一节。


参数:slaveinfo
if TRUE, the numbers of jobs finished by slaves  will be displayed.
如果为TRUE,由奴隶完成的作业的数量将被显示。


参数:sim.seq
if reproducing the same simulation is desirable, set it  to the integer vector .mpi.parSim generated in previous simulation.
如果复制相同的模拟是可取的,将它设置为整数向量。mpi.parSim在以前的模拟。


参数:simplify
logical; should the result be simplified to a vector or matrix if possible?
逻辑,结果被简化为一个向量或矩阵如果可能的话吗?


参数:comm
a communicator number
一个通信号


参数:...
optional arguments to statistic
可选参数statistic


Details

详细信息----------Details----------

It is assumed that one simulation is carried out as  statistic(rand.gen(n)), where rand.gen(n) can return any  values as long as statistic can take them. Additional arguments can  be passed to rand.gen by rand.arg as a list. Optional  arguments can also be passed to statistic by the argument  ....
假设一个模拟进行statistic(rand.gen(n)),其中rand.gen(n)可以返回任何值,只要statistic可以把他们。其他参数可以传递给rand.genrand.arg的列表。可选参数也可以通过参数statistic到...。

Each slave job consists of replicate(nsim,statistic(rand.gen(n))),  i.e., each job runs nsim number of simulation. The returned values  are transported from slaves to master.
由replicate(nsim,statistic(rand.gen(n))),即每个从站工作,每个作业运行nsim模拟的。返回的值是从奴隶到主人运输。

The total number of simulation (TNS) is calculated as follows. Let  slave.num be the total number of slaves in a comm and it is  mpi.comm.size(comm)-1. Then TNS=slave.num*nsim*run and the total number of slave jobs is slave.num*run, where run is the number of  looping from master perspective. If run=1, each slave will run one slave  job. If run=2, each slave will run two slaves jobs on average, and so on.
仿真(TNS)的总数的计算方法如下。 ,让slave.num总数的奴隶,一个comm是mpi.comm.size(comm)-1。 TNS = slave.num NSIM运行和从属作业的总数是slave.num运行,其中run的循环,从主机的角度是多少。如果运行= 1,每个从机将运行一个从站工作。如果= 2,每个从机将运行两个奴隶工作平均等。

The purpose of using run has two folds. It allows a tuneup  of slave job size and total number of slave jobs to deal with two  different cluster environments. On a cluster of slaves with equal CPU  power, run=1 is often enough. But if nsim is too big, one can set run=2 and the slave jog size to be nsim/2 so that   TNS=slave.num*(nsim/2)*(2*run). This may improve R computation  efficiency slightly. On a cluster of slaves with different CPU power, one  can choose a big value of run and a small value of nsim  so that master can dispatch more jobs to slaves who run faster than  others. This will keep all slaves busy so that load balancing is  achieved.
的目的使用run的两倍。它允许一个热身的奴隶工作的规模和总数量的从属作业处理两个不同的聚类环境中。在一个聚类的奴隶具有平等的CPU功率,run=1往往是足够的。但是,如果nsim是太大,可以设置run=2和从慢跑大小nsim/2“这样TNS = slave.num *(NSIM / 2)*(2 *运行) 。这可能ŕ计算效率略有提高。在聚类中与不同的CPU功率的奴隶,可以选择一个大的run和nsim“这样主人可以派遣更多的就业机会的奴隶谁跑的比别人快一个较小的值。这将让所有的奴隶很忙,所以,负载平衡。

The sequence of slaves who deliver results to master are saved into  .mpi.parSim. It keeps track which part of results done by which slaves.  .mpi.parSim can be used to reproduce the same simulation result if the same seed is used and the argument sim.seq is equal to .mpi.parSim.
保存到.mpi.parSim序列的成果,来主的奴隶。它可以跟踪哪一部分的结果做它的奴隶。 .mpi.parSim可以使用相同的模拟结果,如果使用相同的种子和参数sim.seq等于.mpi.parSim重现。

See the warning section before you use mpi.parSim.
警告部分,然后再使用mpi.parSim。


值----------Value----------

The returned values depend on values returned by replicate of statistic(rand.gen(n)) and the total number of simulation  (TNS). If statistic returns a single value, then the result is a  vector of length TNS. If statistic returns a vector (list) of  length nrow, then the result is a matrix of dimension  c(nrow, TNS).   
返回的值取决于由replicate的返回值,statistic(rand.gen(n))和总人数的模拟(TNS)。如果statistic返回一个单一的值,那么结果是的向量长度TNS。如果statistic返回一个向量(列表)的长度nrow,那么结果是一个矩阵的维度c(nrow, TNS)。


警告----------Warning----------

It is assumed that a parallel RNG is used on all slaves. Run mpi.setup.rngstream on the master to set up a parallel RNG. Though mpi.parSim  works without a parallel RNG, the quality of simulation is not guarantied.
它假定,一个并行的RNG所有从站的使用。运行mpi.setup.rngstream主服务器上建立一个平行的RNG。虽然mpi.parSim没有一个平行的RNG,模拟的质量不消费“。

mpi.parSim will automatically transfer rand.gen  and statistic to slaves. However, any functions that  rand.gen and statistic reply on but are not on slaves  must be transfered to slaves before using mpi.parSim. You  can use mpi.bcast.Robj2slave for that purpose. The same is  applied to required packages or C/Fortran codes. You can use either  mpi.bcast.cmd or put required(package) and/or  dyn.load(so.lib) into rand.gen and statistic.
mpi.parSim将自动传送rand.gen和statistic的奴隶。然而,任何功能rand.gen和statistic回答,但不是奴隶必须被转移到使用前mpi.parSim的奴隶。你可以用mpi.bcast.Robj2slave用于这一目的。这同样适用于所需的软件包或C / Fortran语言代码。您可以使用mpi.bcast.cmd或,把“required(package)和/或dyn.load(so.lib)到rand.gen和statistic。

If simplify is TRUE, sapply style simplication is applied. Otherwise a list of length
如果simplify是TRUE,sapply的的样式简单化的应用。否则的列表的长度


(作者)----------Author(s)----------



Hao Yu




参见----------See Also----------

mpi.setup.rngstream mpi.bcast.cmd mpi.bcast.Robj2slave
mpi.setup.rngstreammpi.bcast.cmdmpi.bcast.Robj2slave

转载请注明:出自 生物统计家园网(http://www.biostatistic.net)。


注:
注1:为了方便大家学习,本文档为生物统计家园网机器人LoveR翻译而成,仅供个人R语言学习参考使用,生物统计家园保留版权。
注2:由于是机器人自动翻译,难免有不准确之处,使用时仔细对照中、英文内容进行反复理解,可以帮助R语言的学习。
注3:如遇到不准确之处,请在本贴的后面进行回帖,我们会逐渐进行修订。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|小黑屋|生物统计家园 网站价格

GMT+8, 2024-11-24 11:34 , Processed in 0.032254 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表