English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
所有分類

大大們有沒有人有遇過這問題,
當我在MPI環境下complier過後成功,然後執行之後出來一個訊息
killed by signal 6

有時是數字6或是9、11、12
這是啥意思阿????會的幫幫我

2006-11-15 10:34:37 · 1 個解答 · 發問者 ? 2 in 電腦與網際網路 程式設計

1 個解答

我忘了,而且手邊目前沒有可跑 MPI 的東東。但確定是下列 2 個裡的一個:1. 第幾號機器。(應該不是這個)2. 第幾次 MPI 有動作。(印象中是這個)您試一下。加油。最好的方式,如下:0. 先在一台機器上跑,模擬機器數也是 1。  成功了,再試 不只一台的。1. 在您的 send, recv 的 Tag 用不同的 數字。  第一組 send recv 用 1,第二組 send recv 用 2,...2. 用二分法,插入 printf("說明這是哪");  找到在哪後,改成 printf("相關變數s", 變數, 變數, ...);另外要注意:0. 不好的 cluster 機,時間不同。  就算是時間相同,傳信息時不能避勉的 delay也會造成時間不同!  所以,任何要取時間的東東,都由某一台耶,再傳去其它台!  有樣東東要注意:srand(time(0))的做法,是用時間!!!  所以,每台出來的亂數可能一樣,可能不一樣!!1. MPI 的非新手常出的問題中,會出現您那 killed by signal x 的錯誤的,通常是 pointer 不對。  最糟的是,在我用過的 MPI 的 compiler 上,不少次是前面的 pointer 跑了, error 出現在後面!  我所說的這東東和一般 serio 的program 的狀況不太一樣!  一般的 serio 也有這問題;但 MPI 的有很大的不同。  您要是出現那錯誤,真的找不到原因,記得去前面找一下有沒有 run out pointer 的問題。加油!

2006-11-15 17:05:38 · answer #1 · answered by ? 7 · 0 0

fedest.com, questions and answers