[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Condor-users] Condor DRMAA: DAGMan job submission possible?



On Tue, Jul 15, 2008 at 11:22 AM, Mark V <mvyver@xxxxxxxxx> wrote:
> On Tue, Jul 15, 2008 at 12:46 AM, Todd Tannenbaum <tannenba@xxxxxxxxxxx> wrote:
>>
>> < Sent from a Palm Treo 680 >
>> -----Original Message-----
>> From: "Mark V" <mvyver@xxxxxxxxx>
>> Date: Monday, Jul 14, 2008 1:00 am
>> Subject: [Condor-users] Condor DRMAA: DAGMan job submission possible?
>> To: "Condor-Users Mail List" <condor-users@xxxxxxxxxxx>Reply-To: mvyver@xxxxxxxxx, Condor-Users Mail List <condor-users@xxxxxxxxxxx>
>>
>> Hi Group,
>>>I'm currently doing some 'homework'/reserach, and the following
>>>question has arisen:
>>>
>>>Q) DRMAA: Dagman job submission - possible?
>>>Is it possible to submit a DAGMan job using the DRMA API?
>>
>> Yes.
>>
>> The key is understanding that DagMan jobs are just regular Condor jobs with
>>   universe = scheduler
>>   executable = dagman
>>   arguments = dag-file ... ...
>>   ...
>> All condor-submit-dag does is create a "regular" condor-submit file and run condor-submit on it.  Take a look at the condor-submit file created by condor-submit-dag - this is the submit file you want your drmaa app to mimic.
>>
>
> Thanks for the prompt response Todd.
> This may be a little dense, but I spent several weeks bashing my head
> with dag jobs around, or just before, the 6.7 series, and would like
> to avoid the experience :)
> If DagMan jobs are just condor jods with: ".... arguments=dag-file"
> I don't see where the need is to mimic the classic job file contents?
>

OK, I think I see what you meant:
Assume you DagMan job file is "myJob.dag".  Then you'll need to submit
the following condor job via the DRMAA:

#
# begin DRMAA job description of a DagMan job
#
universe        = scheduler
executable      = /condor/release/bin/condor_dagman
getenv          = True
output          = myJob.dag.lib.out
error           = myJob.dag.lib.out
log             = myJob.dag.dagman.log
remove_kill_sig = SIGUSR1
on_exit_remove  = ( ExitSignal == 11 || (ExitCode >=0 && ExitCode <= 2))
copy_to_spool   = False
arguments       = -f -l . -Debug 3 -Lockfile myJob.dag.lock \
                  -Condorlog /home/<USER>/dag/dagJob.log -Dag myJob.dag \
                  -Rescue myJob.dag.rescue
environment     =
_CONDOR_DAGMAN_LOG=myJob.dag.dagman.out;_CONDOR_MAX_DAGMAN_LOG=0
queue
#
#end DRMAA job description for a dagman job
#

This job would need to be translated into a format that
DRMAA_NATIVE_SPECIFICATION can parse..... ouch :)

Much simpler to write some code that executes in a shell:

'condor_submit_dag myJob.dag'

Thanks
Mark




> Regards
> Mark
>
>> To set the submit attributes that are specific to Condor, like universe, use DRMAA_NATIVE_SPECIFICATION param with drmaa_set_attribute.  See the DRMAA section in the Condor Manual for an example.
>>
>> Hope this helps some
>> Todd
>>
>>
>>
>