OSX Python MPI访问多个MacBook Pro内核

2024-06-25 05:40:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我在2008年初的MacBookPro(即将退役)上访问这两个内核时遇到了问题。我希望一些任务(例如用户输入)只执行一次。有可能这两个核心都在使用,因为-np2似乎有一些加速,但这可能只是因为其中一个核心携带两个进程。在

我的你好世界是:

#!/bin/env python

"""
from www.siafoo.net/snippet/64
mpirun -np N_PROCS ./mpiHelloWorld.py
"""

from mpi4py import MPI
import sys

hwmess = "Hello, World!! I am process %d of %d on %s.\n"
myrank = MPI.COMM_WORLD.Get_rank()
nprocs = MPI.COMM_WORLD.Get_size()
procnm = MPI.Get_processor_name()
sys.stdout.write(hwmess % (myrank, nprocs, procnm))

给予

$mpirun-np 2 pythonmpiHelloWorld.py在

你好,世界!!我是本地主机上的进程0(共1个)。在

你好,世界!!我是本地主机上的进程0(共1个)。在

nprocs是1,而我认为应该是2。其他细节:

$哪个Python /Library/Frameworks/EPD64.framework/Versions/Current/bin/python $python 热情的Python分布--www.enhough.com网站 版本:7.2-2(64位)

Python2.7.2 | EPD7.2-2(64位)(默认值,2011年9月7日,16:31:15) 达尔文上的[GCC 4.0.1(Apple Inc.build 5493)] 键入“packages”、“demo”或“enhough”以获取更多信息。在

mpirun—版本提供:

$mpirun—版本 HYDRA构建详细信息: 版本:3.0.4 发布日期:2013年4月24日星期三10:08:10 抄送:/usr/bin/gcc-4.2-pipe-arch x86_64-L/opt/local/lib-Wl,-headerpad_max_install_名称-arch x86_64 CXX:/usr/bin/g++-4.2-pipe-arch x86_64-L/opt/local/lib-Wl,-headerpad_max_安装名-arch x86_64 F77:/opt/local/bin/gfortran-mp-4.8-pipe-m64-L/opt/local/lib-Wl,-headerpad_max_安装名-arch x86_64 F90:/opt/local/bin/gfortran-mp-4.8-pipe-m64-L/opt/local/lib-Wl,-headerpad_max_安装名-arch x86_64 配置选项:'--禁用选项检查“”--前缀=/opt/local“”--禁用依赖项跟踪“”--启用-f77“”--启用fc“”--禁用静默规则“”--启用基本缓存“”--启用缓存“”--启用cxx“”--启用fast=Os“”--启用共享“”--启用smpcoll“”--使用设备=ch3:nemesis“”--使用pm=hydra''--with thread package=posix'--启用版本控制''F90FLAGS=''F90='--enable timer type=mach_absolute_time''CC=/usr/bin/gcc-4.2''CFLAGS=-pipe-arch x86_64-Os''LDFLAGS=-L/opt/local/lib-Wl,-headerpad_max_安装名称-arch x86_64''CXX=/usr/bin/g++-4.2''cxflags=-pipe-arch x86_64-Os''F77=/opt/local/bin/gfortran-mp-4.8''FFLAGS=-pipe-m64-Os''FC=/opt/local/bin/gfortran-mp-4.8''FCFLAGS=-pipe-m64-Os'--缓存文件=/dev/null'--srcdir=''LIBS=-lpthread''CPPFLAGS=-I/opt/local/var/macports/build/\u opt_local_var_macports_源_rsync.macports.org_release_tarballs_ports_science_mpich/mpich/work/mpich-3.0.4/src/mpl/include-I/opt/local/var/macports/build/\u opt_local_var_macports_源_rsync.macports.org_release_tarballs_ports_science_mpich/mpich/work/mpich-3.0.4/src/mpl/include-I/opt/local/var/macports/build/\u opt_local_var_macports_源_rsync.macports.org_release_tarballs_ports_science_mpich/mpich/work/mpich-3.0.4/src/openpa/src-I/opt/local/var/macports/build/\u opt_local_var_macports_源代码_rsync.macports.org_release_tarballs_ports_science_mpich/mpich/work/mpich-3.0.4/src/openpa/src-I/opt/local/var/macports/build/\u opt_local_var_macports_源_rsync.macports.org_release_tarballs_ports_science_mpich/mpich/work/mpich-3.0.4/src/mpi/romio/include' 过程经理:pmi 可用的启动器:ssh rsh fork slurm ll lsf sge manual persist 可用拓扑库:hwloc 资源管理内核可用:用户slurm ll lsf sge pbs cobalt 可用的检查点库:
可用的Demux引擎:轮询选择

mpirun—nooversubscribe提供:

$mpirun—无订阅 [mpiexec@localhost]match\arg(./utils/args/args.c:160):无法识别的参数nooversubscribe [mpiexec@localhost]HYDU_parse_array(./utils/args/args.c:175):参数匹配ng返回错误 [mpiexec@localhost]parse_args(./ui/mpich/utils.c:1609):分析输入数组时出错 [mpiexec@localhost]HYD_uii_mpx_get_参数(/ui/mpich/utils.c:1660):无法分析用户参数 [mpiexec@localhost]main(/ui/mpich/mpiexec.c:153):分析参数时出错

操作系统是雪豹10.6.8,芯片是Intel Core 2 Duo。在

还有什么?在

如何访问两个核心?在

谢谢!在


Tags: buildsrcbinvarliblocalx86opt