我有一个任务要在Python中完成X次,我将使用LSF来加快速度。提交包含多个Python脚本(这些脚本可以单独并行运行)的作业是更好的方法还是使用多处理器模块的一个Python脚本?在
我的问题是我不相信LSF知道如何将Python代码分成几个进程(我不确定LSF是如何做到这一点的)。但是,我也不想让几个Python脚本到处乱窜,因为这看起来效率低下而且杂乱无章。在
手头的任务包括解析六个非常大的ASCII文件,并将输出保存在Python dict中以供以后使用。我想并行解析这六个文件(每个文件大约需要3分钟)。LSF是否允许Python告诉它“嘿,这里有一个脚本,但是你要把它分成这六个进程”?LSF是否需要Python来告诉它,或者它已经知道如何做到这一点?在
如果你需要更多信息请告诉我。我很难在“适可而止”和“太多”的背景之间取得平衡。在
一种(非常简化的)认为LSF的方法是启动进程并让进程知道分配给它的内核(可能在不同的主机上)的系统。LSF不能阻止你的程序做一些愚蠢的事情(例如,如果它的多个实例同时运行,而一个实例覆盖另一个实例的输出)。在
使用LSF的一些常见方法。在
$LSB_MCPU_HOSTS
将告诉您为作业分配了多少核心,因此您知道池的大小。在我不知道这三种方法中哪一种最适合你需要。但我希望这个解释能帮助你做出决定。在
相关问题 更多 >
编程相关推荐