2014-04-16 3 views
16

मुझे त्रुटि संदेश नहीं समझा। मैं mpich2 संस्करण 1.4 या 1.5 से /opt/mpich2 (दोनों संस्करण एक ही त्रुटि के साथ विफल) स्थापित करने के बाद MPICH2 अनुप्रयोग चलाने के लिए प्रयास कर रहा हूं। मेरा एमपीआई एप्लिकेशन 1.3 के साथ संकलित किया गया था लेकिन मैं इसे किसी अन्य वर्कस्टेशन पर एमपीआई 1.4 के साथ चलाने में सक्षम हूं। मैं उबंटू 12.04 पर इसका परीक्षण कर रहा हूं।MPICH2 gethostbyname असफल

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) 

उत्तर

2

सवाल अलग होने के नाते, इस सवाल का जवाब शायद ही है मैं openmpi के लिए पहले समय दिया: gethostname() function missing in openMPI

एमपीआई पोर्टेबल समाधान MPI_Get_processor_name()

+0

उत्तर के लिए धन्यवाद। मुझे त्रुटि संदेश की पहली पंक्ति याद आई। – biocyberman

+0

@biocyberman आप तब जवाब स्वीकार करना चाहेंगे। स्थानीय स्तर पर काम करने के लिए –

5

यह त्रुटि इंगित करता है वहाँ एक समस्या है कि उपयोग करने के लिए है स्थानीयहोस्ट को हल करना अपनी/etc/hosts फ़ाइल जांचें, सुनिश्चित करें कि आपके पास स्थानीयहोस्ट सही ढंग से परिभाषित है, यह 127.0.0.1 को इंगित करना चाहिए। स्थानीयहोस्ट से कनेक्ट करने के लिए एसएसएच का उपयोग करने का प्रयास करें, सुनिश्चित करें कि यह भी काम करता है।

+0

एसएसएच। मैं अन्य चीजों की तलाश करने की कोशिश करूंगा और बाद में वापस आऊंगा। – biocyberman

+5

यह है कि मुझे इसे हल करने के लिए क्या करना है: 'sudo scutil --set HostName' के माध्यम से एक उचित होस्टनाम सेट करें और फिर नया होस्टनाम (my_computer.local कहें)/etc/hosts जैसे' 127.0.0.1 my_computer.local '।इसके अलावा आपको "साझाकरण" सेटिंग में एसएसएच एक्सेस सक्षम करना होगा और अपनी सार्वजनिक कुंजी को अधिकृत_कीज फ़ाइल ('cat ~/.ssh/id_rsa.pub >> ~/.ssh/valid_keys') में जोड़ें। – herrherr

10

क्या मेरे लिए काम किया था निम्नलिखित:

  1. टर्मिनल होस्ट नाम
  2. "/ etc/hosts" होस्ट नाम
:

सुनिश्चित करें कि आपके होस्ट नाम 1 और नीचे 2 के लिए एक ही है

तो यदि आप टर्मिनल में cat /etc/hosts टाइप करते हैं तो यह इस तरह दिखना चाहिए:

// 127.0.0.1  my_hostname 

मेरा होस्टनाम मेरे लिए 1 और 2 के लिए समान नहीं था। एक बार जब मैंने उन्हें मिलान करने के लिए बदल दिया तो मेरा एमपीपी प्रोग्राम निष्पादित होगा। sudo nano /etc/hosts

और फिर लाइन

127.0.0.1  my_new_hostname 
+0

मैं इस सटीक मुद्दे पर आया (मूल पोस्टिंग के एक साल बाद इसे नोट करें) - और इस जवाब ने मेरे लिए समाधान प्रदान किया। http://stackoverflow.com/questions/42041706/mpi4py-fatal-error-in-simple-hello-world?noredirect=1#comment71258508_42041706 – aph

10

समाधान जोड़ें: sudo scutil --set HostName my_new_host_name

अपने/etc/hosts होस्ट नाम निम्न लिखें बदलने के लिए:

अपने टर्मिनल होस्ट नाम निम्न लिखें को बदलने के लिए मैकोज़

मैकोज़ पर इस मुद्दे पर ठोकर खाई 10.12.1।

समाधान 127.0.0.1 computername.local/etc/hosts जोड़ने का है। आपकी फ़ाइल कम या ज्यादा दिखेगा:

## 
# 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 

आप/बदलने के लिए आपके कंप्यूटर के नाम की जांच करता है, तो आप के लिए सिस्टम प्राथमिकताएं>साझा करना>कंप्यूटर नाम जा सकते हैं।

संबंधित मुद्दे