GlueX Offline Meeting, August 10, 2010
GlueX Offline Software Meeting
Tuesday, August 10, 2010
2:00 pm EDT
JLab: CEBAF Center F326/7
To connect by telephone:
- 800-377-8846 : US
- 888-276-7715 : Canada
- 302-709-8424 : International
- enter participant code: 77438230# (remember the "#")
- ESNet: 8542553
- Meeting URL: http://evo.caltech.edu/evoGate/koala.jnlp?meeting=eleBevvlvDatasaeIl
- Phone Bridge ID: 56083
Talks can be deposited in the directory
/group/halld/www/halldweb/html/talks/2010-08 on the JLab CUE (you have to be a member of the "halld" Unix group). This directory is accessible from the web at https://halldweb.jlab.org/talks/2010-08/ .
- Review of minutes from the last meeting: all
- Hall-D File Formats (David L.)
- Action Item Review: all
JLab: Mark Ito (chair), Richard Jones, David Lawrence, Sascha Somov, Simon Taylor, Beni Zihlmann
- New release, sim-recon-2010-07-28. Mark mentioned the new release, announced almost two weeks ago. No comments on usability one way or another (no news = good news?).
- b1pi analysis in cron job. Mark showed the plots that are now produced automatically on a weekly basis. They show momentum distributions for positive pions, negative pions, protons and photons as well as angular distributions for the the same set of particles in events. Both the script to do the reconstruction and the ROOT macro to make the plots are from David. Mark asked whether there was sentiment for mailing out the plots to the collaboration for review regularly; there was not. Does not mean that he won't do it anyway.
Review of minutes from the last meeting
- OSG Toolkit installation. The IT Division has still not opened the ports necessary for the OSG client programs to work at the Lab. Mark will ping them on the issue.
- Software Workshop. David reported that the proposal to the JSA Initiatives Fund for the Software Workshop was submitted. We will have to wait until the first part of November before we hear a response.
- Richard noted that he has noticed some inconsistencies in the handling of JSA Initiative Fund proposals that include money for experimental equipment.
- Event Display. Andrew Blackburn will give an update of his work at the next Online Meeting.
Hall-D File Formats
David gave a overview of various event file formats, how we are using them, and how we should be using them. See his slides for the details. The slide titles were:
- XML vs. C++
- Banks vs. C++
- Why make a HDDM to EVIO converter?
- Why not make hdgeant write out EVIO formatted data?
- Why File Format is mostly a non-issue
- Arguments for switching to a single format
- Hall-D Data Flow
Discussion was wide ranging and went on for the better part of two hours. We talked about ROOT, C++, JAVA, Service oriented architectures, web services, object persistency, crates, slots, channels, and private jets. The only standard topic omitted was Vaseline®.
David's position on file formats can be summarized in items from two of his slides:
- Why file format is mostly a non-issue. Two of the bullets in this slide state:
- Most of the software written for Hall-D will be based on C++ objects in memory.
- Framework was designed from day 1 to accommodate multiple formats so that ALL DANA programs would be file format agnostic
- Arguments for switching to a single format. These are described as falling into two categories, "unsound" and "invalid".
As long as the objects are the primary things that we need to worry about, a data format needs only express the information that passes from object to object. The important thing is that messages get sent with good fidelity, not so much how they are written. We just need to have front-ends that understand a variety of formats.
Mark argued on the other side: that we need to be careful about how event data is expressed outside of running programs or during interprocess communication and further that objects in memory only exist for a short period of time, and are usually difficult to reproduce (weeks, months, years later) in detail. Standardization on a format makes it possible for other tools to be used to analyse the same data using a different set of objects or even a different language. In this view the objects operate on the data and are not the fundamental "things".
In summary the conflict is between a data-centric vs. object-centric view. HDDM represents a data-centric view. JANA represents a object-centric view. We did not resolve which philosophy we should adopt as collaboration policy.
New Action Items
- Ping IT Division on Globus ports -> Mark