Hi Guangrui,
I am trying to use the latest USPEX 9.3.9. the sub submission script and check scripts are different (look much simpler) than older versions. here is what I am doing. please advise where i m doing wrong. thanks for your help. please see below- Hom
login1$ cat Submission/submitJob_local.m
function jobNumber = submitJob_local()
%-------------------------------------------------------------
%This routine is to check if the submitted job is done or not
%One needs to do a little edit based on your own case.
%1 : whichCluster (default 0, 1: local submission, 2: remote submission)
%-------------------------------------------------------------
%Step 1: to prepare the job script which is required by your supercomputer
fp = fopen('myrun', 'w');
fprintf(fp, '#!/bin/sh\n');
fprintf(fp, '#SBATCH -J Test\n');
fprintf(fp, '#SBATCH -A TG-DM-------\n');
fprintf(fp, '#SBATCH -o test \n');
fprintf(fp, '#SBATCH -n 32 \n');
fprintf(fp, '#SBATCH -p normal \n');
fprintf(fp, '#SBATCH -t 01:00:00 \n');
fprintf(fp, module load vasp/5.3.3\n');
fprintf(fp, 'ibrun vasp_std_vtst > log\n');
fclose(fp);
%Step 2: to submit the job with the command like qsub, bsub, llsubmit, .etc.
%It will output some message on the screen like '2350873.nano.cfn.bnl.local'
[a,b]=unix(['sbatch myrun'])
%Step 3: to get the jobID from the screen message
end_marker = findstr(b,'.');
jobNumber = b(1:end_marker(1)-1);
disp(jobNumber)
check script:
login1$ cat Submission/checkStatus_local.m
function doneOr = checkStatus_local(jobID)
%--------------------------------------------------------------------
%This routine is to check if the submitted job is done or not
%One needs to do a little edit based on your own case.
%1 : whichCluster (0: no-job-script, 1: local submission, 2: remote submission)
%--------------------------------------------------------------------
%Step1: the command to check job by ID.
[a,b] = unix(['showq -u ' jobID ''])
%Step2: to find the keywords from screen message to determine if the job is done
%Below is just a sample:
%-------------------------------------------------------------------------------
%Job id Name User Time Use S Queue
%------------------------- ---------------- --------------- -------- - -----
%2455453.nano USPEX qzhu 02:28:42 R cfn_gen04
%-------------------------------------------------------------------------------
%If the job is still running, it will show as above.
%If there is no key words like 'R/Q Cfn_gen04', it indicates the job is done.
if isempty(findstr(b,'Waiting')) & isempty(findstr(b,'Running'))
doneOr = 1
unix('rm USPEX*'); % to remove the log file
else
doneOr = 0;
end
I also see error if i type matlab in Stampede. Is there anything we need to use matlab there ?
login1$ matlab
Warning: No display specified. You will not be able to display graphics on the screen.
login1$ Error occurred during initialization of VM
Could not reserve enough space for object heap
Could not create the Java virtual machine.