GlueX Offline Meeting, March 9, 2011

From GlueXWiki
Jump to: navigation, search

GlueX Offline Software Meeting
Wednesday, March 9, 2011
1:30 pm EST
JLab: CEBAF Center F326/7


  1. Announcements
  2. Review of minutes from the last meeting: all
  3. The Meaning of DEBUG: David
  4. SIMD enabling status: Simon
  5. Offline Computing Requirements: David
  6. Action Item Review: all
    1. Resolved issues
    2. Outstanding issues
    • To view these links, login first. Anonymous login is available.
  7. Review of recent repository activity: all

Communication Information


To connect by telephone:

  1. dial:
  2. enter access code followed by the # sign: 3421244#

Video Conferencing


Talks can be deposited in the directory /group/halld/www/halldweb/html/talks/2011-1Q on the JLab CUE. This directory is accessible from the web at . You have to be a member of the "halld" Unix group to do this.



  • CMU: Will Levine
  • IU: Mihajlo Kornicer, Ryan Mitchell, Kei Moriya
  • JLab: Hovanes Egiyan, Mark Ito (chair), Richard Jones, David Lawrence, Yi Qiang, Igor Senderovich, Sascha Somov, Simon Taylor, Elliott Wolin, Beni Zihlmann

Review of minutes from the last meeting

We went over the minutes of the February 23rd meeting.

  • We talked a bit about compiler warnings generated in our builds, in particular those that come from the FORTRAN code. Richard thought that eliminating all such warnings would involve playing with legacy code and may be more trouble that it is worth.
  • Mark has been in email contact with Dmitry. Dmitry plans to continue work on the calibration database soon.

The Meaning of DEBUG

David reviewed his recent message describing a richer set of options for compiler flags to support debugging symbols, profiling information, and optimization in our code. Mark thought that we should retain the "standard" default behavior of the DEBUG option to the make system (a.k.a. BMS): to generate debugging symbols and to turn off optimization. At present, at variance with past practice, these are controlled by independent options (DEBUG and OPTIMIZE). Elliott endorsed Mark's idea as in keeping with his "principle of least astonishment" [reference needed]. We agreed to go back to the traditional practice. Optimization will still be settable arbitrarily with explicit inclusion of the OPTIMIZE option.

SIMD enabling status

Simon reminded us of recent history. At the end of last year, single instruction multiple data (SIMD) instructions were introduced into the Kalman filter to speed up the code. It was also made the default. A SIMD-free option was added to the BMS in January because problems started to appears for various other chips for which the code had not been tested. Recently Simon has changed the options to default to the non-SIMD version everywhere.

We had a discussion on how to treat this issue in the long run. Various combinations of streaming SIMD extensions (SSE) are supported depending on the particular CPU architecture. Code compiled for one processor may not run on another. Even when used in a manner consistent with a particular CPU, results can vary (round-off effects) for the same code run on the same processor depending on whether SSE is enabled or not.

Richard thought that we should leave things as they are for now, with the default being non-SIMD, until a consistent approach to exploiting this CPU feature for GlueX is formulated.

Offline Computing Requirements and the Grid

David has been organizing a set of meetings to discuss what role the grid should be playing in our offline computing plans, if any. Two have been held so far, another is scheduled for tomorrow. We seem to be coalescing around a desire for a robust storage resource manager (SRM) capability at JLab to feed off-site grid-based clusters.

Action Item Review

We went over recently-resolved and still-outstanding items. See the links in the agenda above.

New Action Item

  • Re-organize the Software Wiki page. -> Mark

Recent Repository Activity

We looked at the comments accompanying changes in our subversion repository over roughly the last two weeks. See the link in the agenda above.