DIAL release 1.30: Defining a job

ROOT interface

The ROOT interface in DIAL 1.30 provides a command to make it easy to define a job. The syntax is where the three arguments are strings specifying the application, task and dataset, respectively. This string may be an object's unique identifier, may be its name in a selection catalog, or, for an application or datastet, may be the name of a directory holding the files to be used to construct the object. The command may be used to get more information.

If successful, this command defines the global variables papp, ptsk and pdst that are used in job submission. These may be examined with the pprint command, e.g.

To reduce typing even further and to record the job definition so it can easily be recovered, you may want to put this command in a macro file. A sample file jobdef.C is installed with the dialroot files.

Demos

The root client includes some sample job definitions in the subdirectory demos. Use the command

for a description of the available demos and instructions for loading them. These can be used to verify the analysis service is working.

Catalogs

Applications, tasks and dataets are published in the DIAL selection catalogs which may be queried at the ROOT or python command lines or with the web interfaces linked in the following table.
applications query page selection page
tasks query page selection page
datasets query page selection page
You may provide you own query on the query pages. The queries for the selection pages are embedded in their URL's. Note that on the selection pages you click on the object ID's to get descriptions including links to the files that make up the applications and tasks.

Which application should I use?

At present, the working applications have been used primarily for analysis, specifically the extraction of histograms or ntuples from the Rome AOD samples. Here is a quick summary of the presently available applications with links to more detailed descriptions of their task interfaces.

applicationtask interfacedemodescription
scriptrunner scriptrunner example tasks demo1 User supplies the DIAL release and a script.
cxxrunner cxxrunner example tasks demo2 User supplies the DIAL release, a C++ source and a list of libraries.
find_files empty demo3
atlasopt atlas_job_options example tasks demo6 User supplies ATLAS release and job options. No code changes.
aodhisto atlas_simple_analysis example tasks demo4 User provides ATLAS release, job options and code to build inside UserAnalysis package.
atlasdev atlas_developer_directory example tasks demo7 User provides ATLAS release, job options and the location of his or her development area.
atlasxform atlas_xform example tasks demo9 User provides ATLAS release, ATLAS transforms release and ATLAS transform name and signature.

For more information about published applications and tasks, see the selection catalogs.

Which task?

The previous table provides links to example tasks for each application. Define a job with one of these and then use the following root command to write it to the directory newtask. root> ptsk->write_files("newtask") Edit these files and then define a job using this directory name as the task argument. After you submit a job, this task will be recorded in the task repository and you can refer to it by ID. If desired, the task selection catalog interface can be used to publish the task and assign it a name.

The ATLAS release provices a command dathena which uses your build area to define and a submit a job using the atlasdev-src application. See Tadashi Maeno for help with that option.

Which dataset should I use?

At present, available datasets are published in the DIAL dataset selection catalog. Some examples:

AOD from CSC (early 2006) production may be found with the query name like 'mc11%AOD%'.

AOD from Rome production may be found with level = 'TOP' and name like rome%AOD%.

Work has begun to populate the ATLAS DQ2 dataset catalogs and we expect those to be accessible in the next release of DIAL.


DIAL release 1.30: Defining a job, updated 09nov05