首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在我被LSF分配了4个核心的集群上,Python怎么能看到12个cpus?

在我被LSF分配了4个核心的集群上,Python怎么能看到12个cpus?
EN

Stack Overflow用户
提问于 2011-09-17 04:11:08
回答 3查看 1.1K关注 0票数 1

我访问了一个使用LSF分配资源的Linux集群,我认为LSF是一个常见的工具,它来自Scali (http://www.scali.com/workload-management/high-performance-computing)。在交互式队列中,我请求并获得了最大核心数: 4。但是,如果我检查Python的多处理模块看到多少个cpus,这个数字是12,这是分配给我的节点拥有的物理核心数。看起来多处理模块在LSF应该/将要施加的界限方面存在问题。这在LSF或Python中是一个问题吗?

代码语言:javascript
运行
复制
[lsandor@iliadaccess03 peers_prisons]$ bsub -Is -n 4 -q interact sh
Job <7408231> is submitted to queue <interact>.
<<Waiting for dispatch ...>>
<<Starting on heroint5>>
sh-3.2$ python3
Python 3.2 (r32:88445, Jun 13 2011, 09:20:03) 
[GCC 4.3.5] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import multiprocessing
>>> 
>>> multiprocessing.cpu_count()
12
EN

Stack Overflow用户

发布于 2012-08-04 14:27:38

如果您使用-n选项提交到lsf,说明您想要多少个处理器,然后使用span请求在同一主机上提供四个处理器,如以下命令所示:

代码语言:javascript
运行
复制
bsub -n 4 -R "span[hosts=1]" my_job

然后,通过设置以下环境变量来启动my_job,您的python脚本可以查询这些变量,以将要启动的子进程的数量设置为等于LSF分配的数量:

代码语言:javascript
运行
复制
LSB_HOSTS= "hostA hostA hostA hostA"
LSB_MCPU_HOSTS="hostA 4" 

(或者子进程数应该是LSF -1分配的用于启动子进程的python脚本的进程数:-)

票数 0
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7449893

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档