2016-05-16 180 views
0

我在我的ubuntu 14.04上使用Sun Grid Engine將我的作業排隊等待在多核CPU上運行。 我已經在我的系統上安裝並設置了SGE,但在測試時出現問題。我創建了一個「hello_world」目錄,它包含兩個名爲「hello_world.sh」的shell腳本,第一個包括一個簡單的命令,第二個包括qsub命令,將第一個腳本文件作爲要運行的作業提交。 下面是 「hello_world.sh」 包括:SGE提交的作業不運行

#!/bin/bash 

echo "Hello world" > /home/theodore/tmp/hello_world/hello_world_output.txt 

而這裏就是 「hello_world_qsub.sh」 包括:

#!/bin/bash 

qsub \ 
    -e /home/hello_world/hello_world_qsub.error \ 
    -o /home/hello_world/hello_world_qsub.log \ 
    ./hello_world.sh 

發放的允許第二sh的文件,並以」 ./hello_world_qsub它運行後.SH」命令從指定的目錄中,輸出是合理的:

Your job 1 ("hello_world.sh") has been submitted 

但輸出‘qstat命令’命令是令人沮喪的:

job-ID prior name  user   state submit/start at  queue       slots ja-task-ID 
    ----------------------------------------------------------------------------------------------------------------- 
    1 0.50000 hello_worl mhr   qw 05/16/2016 20:26:23         1   

而「狀態」列總是保持在「qw」並且從不變爲「r」。

這裏的 「qstat命令-j 1」 命令的輸出:

============================================================== 
job_number:     1 
exec_file:     job_scripts/1 
submission_time:   Mon May 16 20:26:23 2016 
owner:      mhr 
uid:      1000 
group:      mhr 
gid:      1000 
sge_o_home:     /home/mhr 
sge_o_log_name:    mhr 
sge_o_path:     /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games 
sge_o_shell:    /bin/bash 
sge_o_workdir:    /home/mhr/hello_world 
sge_o_host:     localhost 
account:     sge 
stderr_path_list:   NONE:NONE:/home/hello_world/hello_world_qsub.error 
mail_list:     [email protected] 
notify:      FALSE 
job_name:     hello_world.sh 
stdout_path_list:   NONE:NONE:/home/hello_world/hello_world_qsub.log 
jobshare:     0 
env_list:     
script_file:    ./hello_world.sh 
scheduling info:   queue instance "[email protected]" dropped because it is temporarily not available 
         All queues dropped because of overload or full 

而這裏的 「qhost」 命令的輸出:

HOSTNAME    ARCH   NCPU LOAD MEMTOT MEMUSE SWAPTO SWAPUS 
------------------------------------------------------------------------------- 
global     -    -  -  -  -  -  - 
localhost    -    -  -  -  -  -  - 

我應該怎麼做才能讓我的工作運行,完成他們的任務?

+0

「qhost」命令的輸出是什麼? –

+0

@Finch_Powers我在上面的問題中添加了「qhost」的輸出。 –

回答

2

從您的qhost輸出中看起來您的機器「localhost」已在SGE中正確配置。但是,在「本地主機」上,sge_execd未運行或未正確配置。如果是,qhost會報告「localhost」的統計信息。

+0

謝謝,解決方案是什麼?我如何運行sge_execd?在「qmon」環境中配置sge_execd還是有其他方法? –

+0

在我的安裝中,我可以在'$ SGE_ROOT/bin/linux-x64 /'下找到sge_execd嘗試啓動它。如果它不起作用,輸出至少應該讓你知道下一步該做什麼。 –

0

我的問題解決了。正如@Finch_Powers所說的問題是關於sge_execd。 gridengine-exec沒有正確安裝。一旦我重新安裝,問題就解決了。

+0

@Finch_Powers謝謝:) –