Week 39 · Sep 21–25, 2026
Sep 21–25, 2026
← All weekly reports
Summary for Hall-B
- CVMFS ‘migration(s?)’ hit OSG jobs
- Added
jlab.opensciencegrid.org to CVMFS checks in OSPool and JLAB (CLAS12) glideins, but many are still undefined
- Portal migrated to the dedicated
jlab.opensciencegrid.org CVMFS paths
- Added portal LUND requirement: path must start with
/volatile/clas12/ - (had many /work or /home etc submissions)
- GEMC2/meson and GEMC3 bumped to CCDB v1.99.8 with the SQLite and patches
- New Callgrinder action published, profiling any c++ app with customization
GEMC
- Updated GEMC2/meson and GEMC3 to CCDB v1.99.8 with upstream system SQLite support, dropping obsolete patches.
- Unified CI compilation under Meson: shared build setup, geometry generation, and profiling options in
one place.
- Removed the unused SCons CI build script now that all compilation workflows are on Meson.
- Switched Valgrind profiling to a Meson debug build and explicitly picked the freshly built executable
- Added dev3 tag to ‘gemc’ module in env for GEMC3 use
OSG
- Major job failures from CVMFS; OSG said they are in a “data migration state”. Issues stayed ongoing and
it was never fully clear whether they were part of that migration.
- Debug commands showed
/cvmfs/jlab.opensciencegrid.org not mounted on some sites — a problem for sites
without automount and without oasis/jlab.
- Portal CVMFS paths: restored main to the Oasis JLab CVMFS paths while keeping dedicated JLab paths on dev,
then moved to the dedicated JLab repository. After a successful dev test, added
jlab.opensciencegrid.org
to the main simGrid branch and replaced the remaining legacy OASIS paths with the JLab CVMFS repository.
- OSG staff added
jlab.opensciencegrid.org to the CVMFS checks in OSPool and JLAB (CLAS12) glideins.
- Added
condor_status commands to the HTCondor note for checking site and CVMFS configs in both pools.
- Portal cleanup: required type-2 generator paths to start with
/volatile/clas12/, fixed a
clas12-config typo for high-lumi testing, and removed submissions with no LUND files or wrong paths.
Geant4
- Added the debug-image CI summary and documented Geant4 symbols for debugging and profiling.
GEMC3
- Macro option: verified execution follows all starter commands, added Geant4 macro startup with batch
event control, and added startup-order regression checks.
- Published Callgrinder action — a zero-dependency Node.js GitHub Action and CLI that profiles a command under
callgrind and reports config-driven per-category and per-routine CEst costs, modelled on ThreadScale.
Added a from-callgrind summarize path and converted the src, clas12-systems, and clas12Tags profiling
workflows to run through the action, removing the local valgrind and summary scripts.
- Added a debug-symbols gemc image variant (built on the g4install debug base) to the src Deploy and pointed
the clas12-systems profiling workflow at it so Geant4/CLHEP routines resolve.
- Fixed the profiling prep step that exited on an empty G4 dataset grep by sourcing geant4-config for the
dataset variables; gemc finds its Geant4 data through the installed package cache, so those variables are
no longer exported. Made Callgrinder tolerate an unreadable callgrind file instead of crashing.
- Converted clas12Tags profiling to set up the GEMC2 module environment in the prep step and run gemc
directly, so only gemc runs under valgrind.
- Generator examples: set both phi-spread examples to a fixed 45° polar angle; increased theta sampling to
20° and verified signed-angle momentum and cosine bounds; widened the uniform XY view and increased
Gaussian XY vertex spreads to 4 and 5 mm; centered vertices inside the target with Z and XY emission
angles; renamed examples and improved vertex visibility with a transparent target and angled beams.
Simplified vertex cases and angular plots, added 100-event GEMC views for all 11 website examples, then
documented all 17 tube-target vertex/angular examples with verified plots and interactive geometry
(Analyzer plots, ~85,000 throws).
- Imported and optimized the HTCC CAD cones: cured the three beamline cones into watertight decimated solids
and placed them per variation in a separate CAD system that loads from the geometry database.
Actions
- Released Callgrinder v1.0.8
- Made Callgrinder tolerant of an unreadable or empty callgrind file
- Fixed empty profiles: valgrind now runs directly on the target program (the shell execs valgrind), since
valgrind does not follow exec by default.
- Table work: added a Self % column ranked by self cost with inclusive share alongside
- Ranking hotspots by self cost, then sorting by run share.
- Revised profiling quickstarts to use user applications, clarified Callgrinder and ThreadScale with runnable
quickstarts, completed the annotation utility setup, and regenerated the scintillator profile summary.
Home
- Clarified fixed release tags vs. moving major tags for Marketplace publishing.
- Added Marketplace publishing, promotion, and adoption-badge guidance using ThreadScale.
Slides
- Recovered nine empty and three truncated presentations from Git LFS; verified hashes and archive integrity.