我想运行随机算法的多个实例。出于性能原因,我想在多台机器上分发任务。
通常,我按如下方式运行我的程序:
./main < input.txt > output.txt
返回解决方案大约需要30分钟。
我想尽可能多地运行此实例,理想情况下不要更改程序代码。我的问题是:
1 - 哪些在线服务提供适合我需求的计算资源?
2 - 实际上,我应该如何远程启动所有进程,获得终止通知,然后汇总结果(基本上,选择最佳解决方案)。是否有一个我可以使用的简单框架,还是应该研究基于ssh的脚本?
答案 0 :(得分:1)
1 - 哪些在线服务提供适合我需要的计算资源?
Amazon EC2。
2 - 实际上,我应该如何远程启动所有进程,获得终止通知,然后汇总结果(基本上,选择最佳解决方案)。是否有一个我可以使用的简单框架,还是应该研究基于ssh的脚本?
Amazon EC2具有用于启动虚拟机的API。一旦他们启动,你确实可以使用ssh来控制工作,我会推荐这个解决方案。我希望存在用于分布式作业管理的其他软件,但它们的配置可能比ssh更简单。