我不明白这个错误信息。我尝试做的是在我将MPICH2版本1.4或1.5安装到/opt/mpich2之后运行mpich2应用程序(这两个版本都失败了,并出现了相同的错误)。我的MPI应用程序是用1.3编译的,但我可以在另一个工作站上用mpi 1.4运行它。我正在Ubuntu 12.04上测试它。
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)发布于 2016-11-06 21:30:39
macOS解决方案
我在macOS 10.12.1上偶然发现了这个问题。
解决方案是在/etc/hosts中添加127.0.0.1 computername.local。您的文件大致如下所示:
##
# 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 如果您进入系统偏好设置>共享>计算机名称,您可以更改/检查您的计算机名称。
发布于 2015-10-20 10:24:59
对我来说起作用的是:
确保您的主机名与下面的%1和%2相同:
因此,如果您在终端中键入cat /etc/hosts,它应该如下所示:
// 127.0.0.1 my_hostname对于我来说,%1和%2的主机名不同。一旦我将它们更改为匹配,那么我的mpi程序就会执行。
要更改终端主机名,请键入以下命令:sudo scutil --set HostName my_new_host_name
要更改/etc/hosts主机名,请键入以下内容:sudo nano /etc/hosts
然后添加下面这行
127.0.0.1 my_new_hostname发布于 2014-04-17 03:57:49
此错误指示解析localhost时出现问题。检查您的/etc/hosts文件,确保您在此处正确定义了localhost,它应该指向127.0.0.1。尝试使用ssh连接到localhost,确保它也能正常工作。
https://stackoverflow.com/questions/23112515
复制相似问题