Orchestrating shots for the national ignition racility
Authors: David G. Mathisen, Robert W. Carey
Venue: ACM SIGAda Ada Letters (2005)

The National Ignition Facility (NIF), currently under construction at the Lawrence Livermore National Laboratory, is a stadium-sized facility containing a 192-beam, 1.8 Megajoule, 500-Terawatt, ultra-violet laser system together with a 10-meter diameter target chamber with room for nearly 100 experimental diagnostics. When completed, NIF will be the world's largest and most energetic laser experimental system, providing an international center to study inertial confinement fusion and physics of matter at extreme densities and pressures. The NIF is operated by the Integrated Computer Control System (ICCS), which is a layered architecture of over 700 lower-level front-end processors attached to nearly 60,000 control points and coordinated by higher-level supervisory subsystems in the main control room. An Ada95 based shot automation framework has been developed and deployed during the past year to orchestrate and automate shots performed at the NIF using the ICCS. Ada95 provides language features that have enabled the construction of a complex, highly distributed control application. The Ada tasking model and protected types provide multi-threaded behaviors and synchronization mechanisms required by the ICCS. The Shot Automation framework is designed to automate 4-hour shot sequences including derivation of shot goals from an experiment definition, set up of the laser and diagnostics, automatic alignment of laser beams, and a countdown to charge and fire the lasers. A typical sequence consists of one or more preparatory verification shots leading to an amplified system shot that is followed by post-shot analysis and archiving. The framework provides for flexible model-based workflow execution with work divided into data driven packets called "macro steps". The Shot Director program is the top-level orchestrating component of the shot automation framework, which manages the state machine that defines the structure of the shot sequence. Collaboration Supervisors translate shot lifecycle state commands from the Shot Director into sequences of "macro steps" that are distributed to subsystem shot supervisors while maintaining the order of macro steps for each subsystem and supporting collaboration between different macro steps. Each macro step has phases for database-driven verification and a scripted execution. This provides a highly flexible framework for performing a variety of NIF shot types. Database tables define the order of work and dependencies (workflow) of macro steps to be performed for a shot. A graphical model editor facilitates the definition and viewing of an execution model. A Change Manager tool enables "de-participation" of individual devices, of entire laser segments (beams, quads, or bundles of beams) or of individual diagnostics. This software has been successfully deployed to the NIF facility and is currently being used to support NIF laser commissioning shots and the build-out of additional laser bundles. The software will also be used to automate future target and experimental shot campaigns.