Difference between revisions of "Ganga with AMAAthena"
Line 40: | Line 40: | ||
AMAAthena is an Athena "Algorithm", so you can just use the Athena application object in Ganga to configure your AMAAthena job. However, there are steps to be done before setting the Athena application object in Ganga: | AMAAthena is an Athena "Algorithm", so you can just use the Athena application object in Ganga to configure your AMAAthena job. However, there are steps to be done before setting the Athena application object in Ganga: | ||
− | + | <ol> | |
− | + | <li>copy the top-level job option file of AMAAthena to your working directory: | |
− | + | <ul> | |
+ | <li> with AutoConfiguration | ||
+ | <pre>% get_files -jo AMAAthena_jobOptions_AUTO.py</pre> | ||
+ | <li> without AutoConfiguration | ||
+ | <pre>% get_files -jo AMAAthena_jobOptions_new.py</pre> | ||
+ | </ul> | ||
+ | <li>convert user-level AMA configuration file into a Athena job option file | ||
+ | <pre>% AMAConfigfileConverter my_ama_config.conf my_ama_config.py</pre> | ||
+ | <li>create a runtime definition job option | ||
+ | </ol> | ||
Once you have the above steps done, you can proceed in Ganga to set up the Athena application: | Once you have the above steps done, you can proceed in Ganga to set up the Athena application: | ||
Line 49: | Line 58: | ||
In [n]: j.application = Athena() | In [n]: j.application = Athena() | ||
In [n]: j.application.max_events = -1 | In [n]: j.application.max_events = -1 | ||
− | In [n]: j.application.option_file += [ File('rundef.py'), File(' | + | In [n]: j.application.option_file += [ File('rundef.py'), File('AMAAthena_jobOptions_AUTO.py') ] |
In [n]: j.application.prepare() | In [n]: j.application.prepare() | ||
</pre> | </pre> |
Revision as of 11:28, 12 January 2010
Introduction
This page will describe how to run AMAAthena jobs with Ganga on different computing platforms (Stoomboot, lxbatch, Grid).
Preparation
- Make sure you can run AMAAthena standalone on local desktop. Here are instructions about doing it at NIKHEF: Using Athena at NIKHEF
- Make sure you manage to submit HelloWorld jobs to different computing platforms. Here are instructions: Ganga: basic usage
Starting Ganga
Before starting Ganga, set CMT environment properly. Here is the example commands presuming that you have the setup scripts for CMT in $HOME/cmthome directory.
% source $HOME/cmthome/setup.sh -tag=15.6.1,32 % source $TestArea/PhysicsAnalysis/AnalysisCommon/AMA/AMAAthena/cmt/setup.sh
The start Ganga in $TestArea/PhysicsAnalysis/AnalysisCommon/AMA/AMAAthena/run directory.
% cd $TestArea/PhysicsAnalysis/AnalysisCommon/AMA/AMAAthena/run % source /project/atlas/nikhef/ganga/etc/setup.[c]sh % ganga --config-path=/project/atlas/nikhef/ganga/config/Atlas.ini.nikhef
Making Ganga/Athena job
To create a new job in Ganga, do
In [n]: j = Job()
and you can set job's name as
In [n]: j.name = 'my_ama_job'
Application configuration
AMAAthena is an Athena "Algorithm", so you can just use the Athena application object in Ganga to configure your AMAAthena job. However, there are steps to be done before setting the Athena application object in Ganga:
- copy the top-level job option file of AMAAthena to your working directory:
- with AutoConfiguration
% get_files -jo AMAAthena_jobOptions_AUTO.py
- without AutoConfiguration
% get_files -jo AMAAthena_jobOptions_new.py
- with AutoConfiguration
- convert user-level AMA configuration file into a Athena job option file
% AMAConfigfileConverter my_ama_config.conf my_ama_config.py
- create a runtime definition job option
Once you have the above steps done, you can proceed in Ganga to set up the Athena application:
In [n]: j.application = Athena() In [n]: j.application.max_events = -1 In [n]: j.application.option_file += [ File('rundef.py'), File('AMAAthena_jobOptions_AUTO.py') ] In [n]: j.application.prepare()