Key Topics

22

description

Key Topics. NIF Overview Distributed Component Architecture Distribution Complexity Connection Management Diagnostic Framework Shot Automation Commissioning Tools Software Framework Evolution. NIF Facility flyover. NIF is a stadium-sized facility that will contain - - PowerPoint PPT Presentation

Transcript of Key Topics

Page 1: Key Topics
Page 2: Key Topics

Key Topics

NIF Overview

Distributed Component Architecture

Distribution Complexity

Connection Management

Diagnostic Framework

Shot Automation

Commissioning Tools

Software Framework Evolution

Page 3: Key Topics

NIF Facility flyover

NIF is a stadium-sized facility that will contain - a 192-beam, 1.8-Megajoule, 500-Terawatt, ultraviolet laser system a 10-meter diameter target chamber with room for nearly 100 diagnostics

Page 4: Key Topics

Symmetry & nomenclature

National Ignition Facility

“Quads” and “Bundles” are the basic building blocks of the NIF

Page 5: Key Topics

The Integrated Computer Control System (ICCS) for NIF is based on a scalable software framework

Object-oriented Ada95, Java, CORBA

Ada implements control system semantics

Java implements GUI layer and COTS integration

CORBA provides transparent language binding and distributed

communication using TCP/IP transport

60,000 control points, 140,000 CORBA objects, 750 computers

Page 6: Key Topics

Framework Approach

Framework Toolkit

CommonServices

Distribution Mechanism

texttext

CustomizableSoftware

Components

BuildSubsystems

NIF Control System

“Plug-in” Interconnections

ConfigurationLoggingArchive

etc.

Front-EndProcessors

LRU actuators, sensors, devices

SupervisoryControls

AutomaticControls

Operators

BundleManagers

texttextApplication

Patterns

Architecture &Environment

Page 7: Key Topics

ICCS Distributed Component Architecture

CORBA

FEP

devicedevice

FWL

GUINavigator

FWL

FrameworkServer

FWL

Status & Control

Supervisor

FWL

Process Kind Process

Counts

CORBA

Objects

Framework Server 10 338

Status & Control Supervisor 219 3736

Shot Supervisor 249 3864

Front-End Processors (FEP) 700 134916

GUI Navigator 50 250

Totals 1228 143104

ShotSupervisor

FWL

A framework layer (FWL) resides in each process

Page 8: Key Topics

Common Application Process Architecture

Connection Objects

Object Factory

C

O

R

B

A

T

C

P

HeartbeatStartup/Shutdown

Framework Agents

Application Objects

SystemManager

Status Monitor

MessageLog Alerts Events Reservations

Shot Archive

Machine History

Config/Name Service

• Common startup and shutdown protocol• Behavior of application processes is completely data driven• Service distribution encapsulated by Framework Service APIs

Diagnostic Agent

UDP

Page 9: Key Topics

Distribution Complexity

Layered client-server computer architecture

340 distinct CORBA interfaces

700 Front-End Processors (Power PC, x86, Sun) interface to

various sensors, actuators, instruments

50 server class computers (Sun) host supervisor software and

framework servers

14 console PCs host Java GUIs in the control room

Bundle-based hardware partitioning eliminates scaling risk by

bounding CORBA object populations and TCP connections

CORBA provides transparent language binding (Java, Ada95) and

location independent inter-process communication

Policies define interface de-coupling mechanisms and common

exception pattern

Page 10: Key Topics

ICCS employs a component-based communication architecture with connection management

Decoupled inter-process communications reduces deadlock

potential

Object reconnection allows transparent process restarts

Subscription management restores all subscription services

Process heartbeats verify process health

Status health heartbeats provide positive status health feedback

Timed remote invocations protect clients from problematic services

ICCS provides fault resilience – degraded operation in the presence of server failure and recovery upon server restoration

Page 11: Key Topics

Diagnostic Architecture Framework

“Out-of-CORBA-band” probes (UDP)

System Level Diagnostics

Network, I/O, memory, CPU

SNMP based

Process Level Diagnostics

Diagnostic Agent embedded into ICCS process architecture

Custom diagnostic objects register with the Diagnostic Agent

Remotely activated and displayed

Stored for off-line analysis

Supports framework and application diagnostic classes

Page 12: Key Topics
Page 13: Key Topics

Shot Automation Framework

Requirements derived from NIF Early Light experience

Intensive, year long, design and development effort

Achieves NIF scale through bundle partitioning

State machine guides operators through 10 well defined shot cycle states

Shot model describes (in data) subsystem activities and dependencies

A workflow engine executes the shot model

Calculated participation based on laser beam destination and diagnostic use

(only control components that are in the beam path)

Support error recovery

Operators given Pause/Play, Stop, Manual Step, Retry, and Resume Automation semantics

Can de-participate non-performing non-critical components/segments

Shot model editor provides flexibility to define different NIF operating

scenarios

Page 14: Key Topics
Page 15: Key Topics

Commissioning Tools facilitate NIF build-out

Tools that enable efficient calibration/qualification of laser

components

Framework utilizes existing device layer CORBA interfaces and

separates displays from algorithms via autonomous threads

Contain complex algorithms that send commands to collections of

devices and aggregate/process data

Results stored in a configuration database for use in integrated shot

operations

Page 16: Key Topics
Page 17: Key Topics

ICCS Framework Evolution

Developed over the past 4+ years

Iterative process – requirements, design, and refinement

April and Sept 2001 releases of Framework 1.0 and 2.0 contained common

services and templates

April 2002 release of Framework 3.0 satisfied significant portions of

connection management and fault tolerant performance requirements

Application layers built on Framework 3.x supported NIF Early Light

activation and experimental campaigns through summer of 2004

Sept 2003 release of Framework 4.0 contained migration to new versions of

COTS (OS, Database, ORBs, compilers, CM systems)

Nov 2004 release of Framework 4.1 contained Diagnostic, Shot Automation,

and Commissioning Tool Frameworks

Jan 2006 release of Framework 5.0 contains additional commissioning tools

and refinements to Alert, Reservation, and Shot Automation

Page 18: Key Topics

ICCS is positioned for June 2006 multi-bundle milestone with framework release 5.0

Connection Management minimizes impact of process failures

Distribution complexity is mitigated through hardware partitioning

and de-coupled interface design patterns

Model-driven shot automation provides flexibility to operate the NIF

in different ways

Highly data-driven architecture allows modification of run-time

behavior without new software releases

Run-time diagnostics for collecting and evaluating system

performance

Commissioning tools help meet rapid laser construction schedule

Rigorous manual and automated formal software testing program

removes >95% of software defects before deployment

Page 19: Key Topics
Page 20: Key Topics

Status of the use of Large-Scale CORBA-Distributed Software Framework for

NIF Controls

R. Carey, R. Bettenhausen, C. Estes, J. Fisher, J. Krammen, L. Lagin,

A. Ludwigsen, D. Mathisen, J. Matone, R. Patterson, C. Reynolds,

R. Sanchez, E. Stout, J. Tappero, P. VanArsdall

National Ignition Facility

Lawrence Livermore National Laboratory

ICALEPCS 2005October 10-14, 2005

The work was performed under the auspices of the U.S. Department of Energy National Nuclear Security Administration by the University of California Lawrence Livermore National Laboratory under Contract No. W-7405-ENG-48.

Page 21: Key Topics

Test suite characterized detailed effects of CORBA failure modes

Failures under different socket conditions:

Server fails before/after initial client connection

Client fails after server connection

Failures during request processing:

Server fails during processing

Client fails during a request

Client registers callback; client fails, restarts, and re-registers. Server attempts client call-back

Client sends request to server. Server hangs

Solaris

TCP/IP

OISVisibroker

Objects---------------- CORBA---------------- Transport---------------- OS

JavaClients

JavaServers

AdaClients

AdaServers

VxWorks

TCP/IP

OIS

Objects---------------- CORBA---------------- Transport---------------- OS

AdaClients

AdaServersN

etw

ork

CORBA failure modes are handled by Connection Management Framework

Page 22: Key Topics

Plug-and-play component architecture is designed to scale up

ICCS Core Supervisor Consoles

Front End Processors

Software Distribution Bus (CORBA over network)

DeviceControl

StatusMonitor

DeviceReservation

Controller

Interface

DeviceHistory

Configuration Archive History Message Log Alerts, Events Reservations Shot Set Up

SystemManager

SupervisorControl Units

DeviceEmulation

Servers Graphical UserInterfaces