| 查看: 1164 | 回复: 1 | ||
husthc木虫 (正式写手)
|
[求助]
Matlab使用parfor时每次运行如何产生不同的随机数 已有1人参与
|
|
parfor ( j=1:4, 4 ) rand(1) end 我们每次运行这一小段程序都会产生四个相同的随机数,我想这可能是因为每次打开四个worker的时候每个worker的初始种子一样。 在串行的时候每次启动matlab也会产生相同的随机数,因为他的初始种子每次启动的时候都是0.我们可以通过rng('shuffle')来给一个与时间有关的种子,这样每次启动matlab的时候就可以产生不同的随机数。 请问相同的功能如何在并行的时候实现。 我试过以下代码,可能是因为某些worker的启动时间完全相同,这样worker之间会产生相同随机数。 parfor ( j=1:4, 4 ) rng('shuffle') rand(1) end 恳请大神解答 |
» 猜你喜欢
论文撤稿了
已经有8人回复
博士申请
已经有7人回复
青B发送上会通知了吗
已经有8人回复
化学专业申博
已经有4人回复
评审有感
已经有27人回复
河北省自然科学基金
已经有9人回复
西安交大新媒学院副院长用撤稿论文结题
已经有5人回复
某211大学教师把个人教师官方主页改成:我跑了我跑了我跑了!官宣跑路!
已经有5人回复
26/27申博自荐
已经有9人回复
博士申请
已经有3人回复
2楼2017-06-05 17:47:55












回复此楼