DIAL release 1.20: Demos

David Adams
09jun05


Introduction

Demos are automatically installed in the demos subdirectory where dialroot is run. Each demo selects an application, task and dataset which are then submitted to a scheduler to define a job.

These may be used to validate the client, service and corresponding transformation. The analysis demos 4, 6, 7 and 8 should all work for any of the published services unless otherwise noted on the known bugs page. Please let us know if you have problems with any of these.

The available demos are:
  demo4 - Uses aodhisto to create histograms and ntuples from user source code
  demo5 - Uses esd2aod to create AOD from ESD using the prodsys transformation
  demo6 - Uses atlasopt to run a job with provided job options
  demo7 - Uses atlasdev to run a job based on a users atlas development area
  demo8 - Uses atlasdev-src to run a job based on a tarball of a user development area


Running a demo

Here we run through the steps required run demo6. Other demos are run in the same way except demo6 is replaced with desired value.

The following root objects are referenced:
  papp - pointer to the current application
  ptsk - pointer to the current task
  pdst - pointer to the current dataset

> dialroot
...There will be few pages of information followed by the usual root prompt...
root [0] .x demos/demo6.C    // This defines papp, ptsk and pdst
(int)0

root [1] submit()        // submit a job based on papp, ptsk and pdst
Application 10201-640
Task 10301-99
Dataset 10013-54281
*** Submitting job
*** Submitted job status:
CompoundJob 10501-35531 is initializing
Application: 10201-640
Task 10301-99
Dataset 10013-54281 with 1000 events
Job preferences ID 0-0
     Owner: /DC=org/DC=doegrids/OU=People/CN=David Adams 407137
Credential: /DC=org/DC=doegrids/OU=People/CN=David Adams 407137
Run host: adial01.usatlas.bnl.gov
Job directory: /usatlas/u/dial/local/jobs/MasterScheduler/00/00/29/05/00/00/8a/cb
 create time: 2005 June 09 15:38:50
There are 10 subjobs
  0 running
  0 done
  0 failed
  0 killed
  0 included in result
Events processed: 0 (0%)
       in result: 0 (0%)
The job does not have a result
(int)0

root [6] pprint(papp)   // Display the application
Application 10201-640 has 4 files:
  build_task
  readme.txt
  release_notes.txt
  run

root [7] pprint(ptsk)   // Display the task
Task 10301-99 has 3 files:
  atlas_release
  jo.py
  readme.txt

root [8] pprint(pdst)   // Display the dataset
EventMergeDataset 10013-54281 with no parent is locked and not empty
  Content includes 1 block:
    Dataset content block:
      Dataset type: AtlasPoolEventDataset
      Content label: AOD
//...much more...

root [9] get_results()  // Fetch job status and partial result          
cp: missing destination file
Try `cp --help' for more information.
RootHistogramDataset::clone: File copy failed:
/home/dladams/dialtest/1.20/dial_lf1000086445

Job::copy_ctor: Result clone failed.

CompoundJob 10501-35531 is done
Application: 10201-640
Task 10301-99
Dataset 10013-54281 with 1000 events
Job preferences ID 0-0
     Owner: /DC=org/DC=doegrids/OU=People/CN=David Adams 407137
Credential: /DC=org/DC=doegrids/OU=People/CN=David Adams 407137
Run host: adial01.usatlas.bnl.gov
Job directory: /usatlas/u/dial/local/jobs/MasterScheduler/00/00/29/05/00/00/8a/cb
 create time: 2005 June 09 15:38:50
  start time: 2005 June 09 15:38:53 (3 sec elapsed)
   stop time: 2005 June 09 15:40:04 (74 sec elapsed)
Return status: 0
There are 10 subjobs
  0 running
  10 done
  0 failed
  0 killed
  10 included in result
Events processed: 1000 (100%)
       in result: 1000 (100%)
Result dataset 10013-201338 is not an event dataset 
TFile**         /home/dladams/dialtest/1.20/dial_lf1000086445   GAUDI Histograms
 TFile*         /home/dladams/dialtest/1.20/dial_lf1000086445   GAUDI Histograms
  KEY: TDirectory       Electron;1      Electron
  KEY: TDirectory       Muon;1  Muon

root [10] TBrowser br                // Examine ouput ntuples and histgrams
The annoying cp message when getting results is a known bug. The file or files do appear in the local directory.

Note that even if the job is not completed, partial results may be available and will be copied to the local directory. If you wish to check the status without copying over the latest results, use the command print(msch.job(jid)).

If the client is run at the site where the results are stored, then the result files may be linked rather than copied. and the link may be deleted when the root session is terminated. If you wish to retain a local copy of the file, the function copy_file may be used:

root [10] copy_file("dial_lf1000086445", "result.root")
(int)0

with the return code of zero indicating success.


Beyond the demos

The demos are useful for validating your client and the remote analysis service and for getting acquainted with the DIAL system. To get started performing serious analysis, please see the examples page.


dladams@bnl.gov