首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MPICH2 gethostbyname失败

MPICH2 gethostbyname失败
EN

Stack Overflow用户
提问于 2014-04-16 22:33:42
回答 5查看 13.8K关注 0票数 27

我不明白这个错误信息。我尝试做的是在我将MPICH2版本1.4或1.5安装到/opt/mpich2之后运行mpich2应用程序(这两个版本都失败了,并出现了相同的错误)。我的MPI应用程序是用1.3编译的,但我可以在另一个工作站上用mpi 1.4运行它。我正在Ubuntu 12.04上测试它。

代码语言:javascript
复制
Fatal error in PMPI_Init_thread: Other MPI error, error stack:
MPIR_Init_thread(467)..............: 
MPID_Init(177).....................: channel initialization failed
MPIDI_CH3_Init(70).................: 
MPID_nem_init(319).................: 
MPID_nem_tcp_init(171).............: 
MPID_nem_tcp_get_business_card(418): 
MPID_nem_tcp_init(377).............: gethostbyname failed, localhost (errno 3)
EN

回答 5

Stack Overflow用户

发布于 2016-11-06 21:30:39

macOS解决方案

我在macOS 10.12.1上偶然发现了这个问题。

解决方案是在/etc/hosts中添加127.0.0.1 computername.local。您的文件大致如下所示:

代码语言:javascript
复制
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
127.0.0.1   localhost
127.0.0.1   computername.local
255.255.255.255 broadcasthost
::1             localhost 

如果您进入系统偏好设置>共享>计算机名称,您可以更改/检查您的计算机名称。

票数 21
EN

Stack Overflow用户

发布于 2015-10-20 10:24:59

对我来说起作用的是:

确保您的主机名与下面的%1和%2相同:

  1. 终端主机名
  2. "/etc/hosts“主机名

因此,如果您在终端中键入cat /etc/hosts,它应该如下所示:

代码语言:javascript
复制
// 127.0.0.1       my_hostname

对于我来说,%1和%2的主机名不同。一旦我将它们更改为匹配,那么我的mpi程序就会执行。

要更改终端主机名,请键入以下命令:sudo scutil --set HostName my_new_host_name

要更改/etc/hosts主机名,请键入以下内容:sudo nano /etc/hosts

然后添加下面这行

代码语言:javascript
复制
127.0.0.1       my_new_hostname
票数 14
EN

Stack Overflow用户

发布于 2014-04-17 03:57:49

此错误指示解析localhost时出现问题。检查您的/etc/hosts文件,确保您在此处正确定义了localhost,它应该指向127.0.0.1。尝试使用ssh连接到localhost,确保它也能正常工作。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23112515

复制
相关文章

相似问题

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