Changeset 2497
- Timestamp:
- 10/22/09 15:56:00 (16 years ago)
- Location:
- issm/trunk/src/m/classes/public
- Files:
-
- 1 added
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk/src/m/classes/public/BuildQueueingScriptgreenplanet.m
r2372 r2497 7 7 scriptname=[md.name '.queue']; 8 8 9 10 11 9 %check queue names: 12 10 if strcmpi(md.cluster,'greenplanet'), 13 available_queues={' debug','shortg','longg'};11 available_queues={'rignot','default'}; 14 12 if ~ismemberi(md.queue,available_queues), 15 error('BuildQueueingScript cosmos error message: availables queues are debug, shortg and longg');13 error('BuildQueueingScriptgreenplanet error message: availables queues are rignot and default'); 16 14 end 17 15 18 if strcmpi(md.queue,' debug'),19 if md.np> 50,20 error('BuildQueueingScriptgreenplaneterror error message: debug queue only allows for 50 cpus max');16 if strcmpi(md.queue,'rignot'), 17 if md.np>80, 18 error('BuildQueueingScriptgreenplaneterror error message: debug queue only allows for 80 cpus max'); 21 19 end 22 20 … … 27 25 end 28 26 29 if strcmpi(md.cluster,'castor'),30 available_queues={'shortc','longc'};31 if ~ismemberi(md.queue,available_queues),32 error('BuildQueueingScriptcosmos error message: availables queues are shortc and longc');33 end34 end35 36 if strcmpi(md.cluster,'pollux'),37 available_queues={'shortp','longp'};38 if ~ismemberi(md.queue,available_queues),39 error('BuildQueueingScriptcosmos error message: availables queues are shortp and longp');40 end41 end42 43 %test parameters valid for all queues44 if strcmpi(md.queue(1:5),'short'),45 if md.np>128,46 error('BuildQueueingScriptcosmos error message: short queue only allows 128 cpus');47 end48 if md.time>180,49 error('BuildQueueingScriptcosmos error message: short queue only allows 180 minutes');50 end51 end52 53 if strcmpi(md.queue(1:4),'long'),54 if md.np>128,55 error('BuildQueueingScriptcosmos error message: long queue only allows 128 cpus');56 end57 if md.time>720,58 error('BuildQueueingScriptcosmos error message: long queue only allows 720 minutes');59 end60 end61 62 27 fid=fopen(scriptname,'w'); 63 28 if fid==-1, … … 65 30 end 66 31 67 fprintf(fid,'#!/bin/sh\n'); 32 fprintf(fid,'#!/bin/csh\n'); 33 fprintf(fid,'#PBS -N %s\n',md.name); 34 fprintf(fid,'#PBS -l nodes=%i:ppn=%i\n',md.np/8,8); 35 fprintf(fid,'#PBS -q %s\n',md.queue); 36 fprintf(fid,'#PBS -m bea\n'); 37 fprintf(fid,'#PBS -M eric.larour@jpl.nasa.gov\n'); 68 38 fprintf(fid,'#PBS -l walltime=%i\n',md.time*60); %walltime is in seconds. 69 fprintf(fid,'#PBS -l ncpus=%i\n',md.np);70 if ~isempty(md.queue),71 fprintf(fid,'#PBS -q %s\n',md.queue);72 end73 fprintf(fid,'#PBS -o %s.outlog \n',md.name);74 fprintf(fid,'#PBS -e %s.errlog \n',md.name);75 39 76 fprintf(fid,'export PBS_O_WORKDIR=%s\n',executionpath);77 40 fprintf(fid,'cd $PBS_O_WORKDIR\n'); 78 fprintf(fid,'export OMP_NUM_THREADS=1\n'); 79 fprintf(fid,'dplace -s1 -c0-%i mpirun -np %i %s/%s.exe %s %s.bin %s.outbin %s.lock',md.np-1,md.np,codepath,AnalysisTypeFromEnum(md.analysis_type),executionpath,md.name,md.name,md.name); 41 fprintf(fid,'mpirun -machinefile $PBS_NODEFILE -np %i %s/%s.exe %s %s.bin %s.outbin %s.lock > %s.outlog',md.np,codepath,AnalysisTypeFromEnum(md.analysis_type),executionpath,md.name,md.name,md.name,md.name); 80 42 81 43 fclose(fid); -
issm/trunk/src/m/classes/public/LaunchQueueJobgemini.m
r1268 r2497 22 22 eval(['!scp ' md.name '.bin' ' ' md.name '.queue ' md.cluster ':' executionpath]); 23 23 end 24 25 disp('launching solution sequence on remote cluster'); 26 issmssh(md.cluster,['"cd ' executionpath ' && qsub ' md.name '.queue "']); 24 27 else 25 28 disp('batch mode requested: not launching job interactively'); 29 30 %new gemini cannot launch across cluster using ssh 31 disp(['launch solution sequence on remote cluster by logging into it and typing qsub < ' md.name '.queue']); 26 32 end 27 28 %new gemini cannot launch across cluster using ssh 29 disp(['launch solution sequence on remote cluster by logging into it and typing qsub < ' md.name '.queue']); 30 md.waitonlock=0; 33 md.waitonlock=0; %cannot wait for lock
Note:
See TracChangeset
for help on using the changeset viewer.