31
LHC Software Architecture – Evolution Toward LHC Beam Commissioning 17/10/2007 ICALEPCS 2007 - Knoxville Grzegorz Kruk on behalf of the LSA Team

LHC Software Architecture – Evolution Toward LHC Beam Commissioning

  • Upload
    bridie

  • View
    33

  • Download
    0

Embed Size (px)

DESCRIPTION

LHC Software Architecture – Evolution Toward LHC Beam Commissioning. 17/10/2007 ICALEPCS 2007 - Knoxville Grzegorz Kruk on behalf of the LSA Team. Agenda. Project essentials Challenges LSA scope & key concepts Implementation Recent developments Summary. Agenda. Project essentials - PowerPoint PPT Presentation

Citation preview

Page 1: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

LHC Software Architecture – Evolution Toward LHC Beam Commissioning

17/10/2007

ICALEPCS 2007 - KnoxvilleGrzegorz Kruk on behalf of the LSA Team

Page 2: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

Agenda

•Project essentials•Challenges•LSA scope & key concepts •Implementation•Recent developments•Summary

Page 3: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

Agenda

•Project essentials•Challenges•LSA scope & key concepts •Implementation•Recent developments•Summary

Page 4: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

417/10/2007 LHC Software Architecture – ICALEPCS 2007 – Grzegorz Kruk

Project essentials

• Mission: Provide homogenous software

to operate the SPS, its transfer lines and the LHC

Note: high level application software

• Project shared between controls and operations

• Entirely written in Java

Page 5: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

5

Agenda

•Project essentials•Challenges•LSA scope & key concepts •Implementation•Recent developments•Summary

Page 6: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

617/10/2007 LHC Software Architecture – ICALEPCS 2007 – Grzegorz Kruk

LHC ChallengeWhat will be LSA used for?

• Accelerate 2 beams to a very high energy around 27 km long ring

• In two pipes of a few cm diameter

• Squeeze them down to a size smaller than the diameter of a hair

• Get them collide

• Keep them colliding for at least 10 hours

Page 7: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

7

Machine diversity challenge

•Different accelerators: cycling and non-cycling

•Different hardware types and front-ends

•Different philosophy of operating these machines

•Different users (operators)

Page 8: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

817/10/2007 LHC Software Architecture – ICALEPCS 2007 – Grzegorz Kruk

Cycling vs. non-cycling machines

SPS is a cycling machine• Sequence of cycles (super cycle) is played

repeatedly in a synchronous way• Length of all cycles is fixed

Fixed target p+ cycle MD cycle

Super Cycle

SPS Ring

Injection line

Page 9: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

917/10/2007 LHC Software Architecture – ICALEPCS 2007 – Grzegorz Kruk

Cycling vs. non-cycling machinesLHC is different – there are no cycles• Sequence of processes (i.e. injection, ramp, squeeze, physics)

executed asynchronously• Length of some of these processes is unknown in advance e.g.

physics

0

14000

-3000 -2000 -1000 0 1000 2000 3000

Time [s]

MB

cu

rre

nt

0

1

2

3

4

5

6

7

8

9

B [

T]

RAMP DOWNSTART RAMP

PHYSICS

PREPAREPHYSICS

BEAM DUMP

PREINJECTIONPLATEAU

INJECTION

T0 Tinj

SQUEEZE

PHYSICS

Ramp down 18 Mins

Pre-I njection Plateau 15 Mins

I njection 15 Mins

Ramp 28 MinsSqueeze 5 Mins

Prepare Physics 10 MinsPhysics 10 - 20 Hrs

Page 10: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

1017/10/2007 LHC Software Architecture – ICALEPCS 2007 – Grzegorz Kruk

And the system has to be..

•Reliable 100% availability when there

is a beam in the machine

•Secure From unauthorized access Against unwanted actions

•User friendly Large amount of devices and data

Page 11: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

11

Agenda

•Project essentials•Challenges•LSA scope & key concepts •Implementation•Recent developments•Summary

Page 12: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

1217/10/2007 LHC Software Architecture – ICALEPCS 2007 – Grzegorz Kruk

What is covered by LSA?

• Optics Information about all devices Machine layout Twiss parameters ..

• Settings generation Generation of initial settings based on optics

• Settings management & trim Management of values for all parameters Coherent modifications History of changes and rollback

• Hardware exploitation Equipment control Sending settings to the hardware

• Equipment & beam measurements

Page 13: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

1317/10/2007 LHC Software Architecture – ICALEPCS 2007 – Grzegorz Kruk

Key Concepts

• Parameter Settable or measurable entity on a device (real or virtual) e.g. LHCBEAM/QPH, MPLH.41994/K, MPLH4199/IREF

• Context Cycle in a Super Cycle Beam process (LHC)

• Setting Value of a parameter for a given context

Context

Parameter Setting

Fixed target p+ cycle MD cycle

Super Cycle

SPS Ring

TT10

Page 14: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

1417/10/2007 LHC Software Architecture – ICALEPCS 2007 – Grzegorz Kruk

Parameters Space• Parameters are organized in

hierarchies

• Each hierarchy describes relations between parameters

Change of a parameter affects all its dependant parameters

• Roots usually physics parameters

e.g. momentum, tune, chromaticity,…

• Leaves hardware parameters

e.g. reference current on power converters

LSS4_EXT_BUMP/KNOB

MPLH.419994/K MPSH.42198/K

MPLH.419994/I MPSH.42198/I

MPLH4199/IREF MPSH4219/IREF

Page 15: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

1517/10/2007 LHC Software Architecture – ICALEPCS 2007 – Grzegorz Kruk

LHC Parameters Space

Page 16: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

1617/10/2007 LHC Software Architecture – ICALEPCS 2007 – Grzegorz Kruk

Domain model•The domain model is quite complex

> 100 domain objects ~350K lines of code Currently ~40 GUI applications using services

provided by LSA

•It still evolves…

•Without a good architecture it would be very difficult to handle that complexity…

Page 17: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

17

Agenda

•Project essentials•Challenges•LSA scope & key concepts •Implementation•Recent developments•Summary

Page 18: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

1817/10/2007 LHC Software Architecture – ICALEPCS 2007 – Grzegorz Kruk

Architecture - 3-tier approach

• We wanted to deploy the system in 3 physical layers due to:

Central access to the database and to the hardware Central security Caching Reduced network traffic Reduced load on client consoles Scalability Ease of web development

• With a minimal cost of 3-tier architectures Complexity of programming Testing & debugging Deployment

• Plus we needed support for standard services Transactions, remote access,…

tier, tire or tyre ??

Page 19: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

1917/10/2007 LHC Software Architecture – ICALEPCS 2007 – Grzegorz Kruk

Spring Framework• Leading lightweight container

Alternative to Enterprise Java Beans (EJB)

• Plain Java Object (POJO) programming model None or minimum dependency on the framework

• All standard services provided Components orchestration, transactions, remoting, security,

• Seamless deployment in 2- and 3-tier mode

• Integration with many 3rd party products

• Very little effort to maintain the infrastructure

Page 20: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

2017/10/2007 LHC Software Architecture – ICALEPCS 2007 – Grzegorz Kruk

What we use from Spring• XML based configuration (wiring)

Extremely simplified in Spring 2.0

• Database access Spring JDBC abstraction layer

• Transactions management

• HTTP based remoting

• Testing framework Excellent to test Data Access Objects

• Caching Home made mechanism Based on Spring AOP – method call interception Uses ehcache Annotation based configuration

Page 21: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

2117/10/2007 LHC Software Architecture – ICALEPCS 2007 – Grzegorz Kruk

Applications

DatastoreDevices

JAPC CMW/RDA

JAPC

Spring JDBC

Data Access Object (DAO)

LSA Client API

LSA CORE(Settings, Trim, Trim History, Generation,

Optics, Exploitation, Fidel)

LSA Client implementation

LSA Client API

Spring HTTP Remoting / Proxies

Business Tier (Web Container)

Client Tier

CORBA IIOP JDBC

HTTP

Architecture

•Modular

•Layered

•Distributed

Page 22: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

2217/10/2007 LHC Software Architecture – ICALEPCS 2007 – Grzegorz Kruk

Data model•The system is highly data-driven•Single model (database schema)

for all machines SPS, LEIR, LHC,…

•Result of several iterations•Rationalized but nevertheless

quite complex ~170 tables

Page 23: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

2317/10/2007 LHC Software Architecture – ICALEPCS 2007 – Grzegorz Kruk

Generic ApplicationsData model & business logic are common for all

accelerators we can reuse applications

SPSLHC

Page 24: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

24

Agenda

•Project essentials•Challenges•LSA scope & key concepts •Implementation•Recent developments•Summary

Page 25: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

2517/10/2007 LHC Software Architecture – ICALEPCS 2007 – Grzegorz Kruk

LHC Timing

• All LHC processes (e.g. injection, ramp,...) will be synchronized and triggered using timing events

Sent by the LHC Timing System [see J.Lewis’ talk on Friday]

• LSA provides service to manage these events

Creation, modification Loading to and unloading from

the Timing System

LSA

Timing module

LHC Timing System

Other modules

Page 26: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

2617/10/2007 LHC Software Architecture – ICALEPCS 2007 – Grzegorz Kruk

LHC is dangerous

Airbus A380 at 700 kph

Aircraft carrier at 11 knots

Energy stored in the LHC magnet system1

LHC Beam energy2

(1) R.Schmidt „Status of the LHC accelerator“, November 2005(2) M.Lamont, “LHC Collimators review”, 30 June 2004

We have to be very careful…

• RBAC

• MCS

• MAD

Page 27: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

2717/10/2007 LHC Software Architecture – ICALEPCS 2007 – Grzegorz Kruk

Role Based Access Control• Created in the frame of the LHC at FermiLab Software (LAFS) collaboration

• Helps to protect: Against unauthorized access to the equipment i.e. sending settings

by inappropriate people From doing bad things at bad time Functionality reserved for specified groups of users (experts)

• When sending settings to the hardware - verification of credentials is done by the middleware (CMW)

• Seamless integration in LSA thanks to the Spring remoting

No need to modify the API

Page 28: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

2817/10/2007 LHC Software Architecture – ICALEPCS 2007 – Grzegorz Kruk

Management of Machine Critical Settings (MCS)

• Aimed for the most critical and potentially dangerous devices/settings

• Complementary to the RBAC Second layer of security

• Based on a digital signature scheme To ensure data integrity

• Verified on the front-end level (FESA framework – next talk)

V. Kain “Management of Critical Settings and Parameters for LHC Machine Protection Equipment”, Functional Specification, CERN, 2006

Page 29: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

29

Methodical Accelerator Design (MAD)

• Modeling and simulation tool for particle accelerators and beam lines

• Simulation of settings changes before applying them to the hardware

Page 30: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

30

Agenda

•Project essentials•Challenges•LSA scope & key concepts •Implementation•Recent developments•Summary

Page 31: LHC Software Architecture – Evolution Toward LHC Beam Commissioning

3117/10/2007 LHC Software Architecture – ICALEPCS 2007 – Grzegorz Kruk

Summary

• Stable and reliable architecture We can concentrate on the domain which is complex

enough

• For all accelerators we have the same: Data model Core logic Applications

• System used currently for the SPS, its transfer lines, the LEIR and the LHC hardware commissioning

• Crucial functionality for the LHC in place

Good data model Commonalities