Why is batch job status' stays "queued"?

조회 수: 9 (최근 30일)
Valentina Watts
Valentina Watts 2012년 6월 19일
댓글: David 2014년 11월 7일
After I activate parallel processing with
>> matlabpool open
I submit a batch job as follows
>> j1 = batch('myscript')
Consequently, as I check the j1 structure, the status field shows "queued" and that does not change. I have run "myscript" directly without any problems. I have a four-core processor multithreaded to 8 processors. The script runs a loop that calculates values and outputs them in files. I have tried various fomulatins of matlabpool and batch with no improvement. I have restarted Matlab and even rebooted the computer.
I am looking for a way to run this script via batch to take advantage of the parallel processing and to run the jobs in the background.

채택된 답변

Jill Reese
Jill Reese 2012년 6월 19일
The interactive matlabpool that you explicitly opened is using all of your resources. Therefore, when you submit a batch job it is waiting in the queue until the matlabpool is closed and the resources are again available.
Do not open the matlabpool explicitly with "matlabpool open". Instead, submit your batch job using the syntax that allows you to specify the size of the matlabpool to use:
j1 = batch('myscript', 'matlabpool', 4);
  댓글 수: 3
Jill Reese
Jill Reese 2012년 6월 21일
What version of MATLAB are you using? Are you able to successfully validate the cluster you want to submit the batch command to?
David
David 2014년 11월 7일
That fixed it. Thanks!

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Valentina Watts
Valentina Watts 2012년 6월 19일
Jill, thank you. Your solution worked. I thought I had tried to run my batch file without matlabpool activation before, but I suppose I was mistaken.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by