我需要一个确定性的随机数生成器来维护某种在集群上工作的分布(例如,统一或正常)。
Boost :: Random满足了大部分要求。有什么方法可以在保持分布的同时在集群中使用它吗?
如果有一种有效的方法来推进数字生成器,这将是理想的,但是我无法找到这样的功能。显然我可以在循环中重复调用该函数,但是我需要在每个节点上执行几千次(可能更多)。
关于如何实现这一目标的任何建议?
答案 0 :(得分:2)
我可能会遗漏一些明显的东西,但你不能只为每个群集的RNG提供一个不同的(伪)随机选择的种子吗?我认为这样可以让你在所有集群上进行统一分配。
另一种方法是从一台充当RNG服务器的计算机上分配所有随机数,但这可能会很慢。
答案 1 :(得分:0)
根据您需要PRNG的强大程度,您可能需要谨慎行事;使用多个PRNG肯定存在缺陷。
特别是,有统计专家专门研究PRNG的并行算法。
要开始考虑其中一些问题,您可能需要查看this之类的论文。
像所有问题一样,我建议您首先拍摄,然后让它快速运行。