EPICS Release 3.15 Bob Dalesio May 19, 2000. Features for 3.15 Support for large arrays Channel access priorities Portable server replacement of rsrv.

Slides:



Advertisements
Similar presentations
1 1999/Ph 514: Channel Access Concepts EPICS Channel Access Concepts Bob Dalesio LANL.
Advertisements

P5, M1, D1.
EPICS Base R and beyond Andrew Johnson Computer Scientist, AES Controls Group.
Channel Access Enhancements J. Hill. R3.14 Enhancements Large array support in the portable server –nearly complete –a priority for SNS Port syntax for.
The Premier Software Usage Analysis and Reporting Toolset CELUG Presentation – May 12, 2010 LT-Live : License Tracker’s License Server Monitor.
EPICS Architecture Version 3 Channel Access Client (CAC) Connection Data Transfers WAN/LAN/Local Connection Data Transfers Channel Access Server (CAS)
Powerpoint Templates Page 1 Powerpoint Templates Page 2 Something you own that has value There can be assets that gain value over time…. What is an Asset?
Electrical Engineering Department Software Systems Lab TECHNION - ISRAEL INSTITUTE OF TECHNOLOGY Persistent chat room Authors: Hazanovitch Evgeny Hazanovitch.
©Brooks/Cole, 2003 Chapter 7 Operating Systems Dr. Barnawi.
CS533 - Concepts of Operating Systems
V4 – Executive Summary 1.Provide online add/delete of I/O to support continuous operation. 2.Provide redundant control of remote I/O to support improved.
Computer Measurement Group, India Reliable and Scalable Data Streaming in Multi-Hop Architecture Sudhir Sangra, BMC Software Lalit.
Computers & Employment By Andrew Attard and Stephen Calleja.
M. Menelaou CCNA2 DYNAMIC ROUTING. M. Menelaou DYNAMIC ROUTING Dynamic routing protocols can help simplify the life of a network administrator Routing.
UNIX SVR4 COSC513 Zhaohui Chen Jiefei Huang. UNIX SVR4 UNIX system V release 4 is a major new release of the UNIX operating system, developed by AT&T.
Reliability Andy Jensen Sandy Cabadas.  Understanding Reliability and its issues can help one solve them in relatable areas of computing Thesis.
An Introduction to Software Architecture
Imperial College Tracker Slow Control & Monitoring.
Coupling and Cohesion Pfleeger, S., Software Engineering Theory and Practice. Prentice Hall, 2001.
J. Hill. Overview  Introduction  LANSCE Requirements  EPICS Event Queue  Event Queue Upgrade  Milestones.
Redundancy. 2. Redundancy 2 the need for redundancy EPICS is a great software, but lacks redundancy support which is essential for some highly critical.
DCE (distributed computing environment) DCE (distributed computing environment)
Software Performance Testing Based on Workload Characterization Elaine Weyuker Alberto Avritzer Joe Kondek Danielle Liu AT&T Labs.
EPICS Direction to Support Large Projects and Incorporate New Technology Leo R. Dalesio 09/21/99.
A U.S. Department of Energy Office of Science Laboratory Operated by The University of Chicago Argonne National Laboratory Office of Science U.S. Department.
© Janice Regan, CMPT 300, May CMPT 300 Introduction to Operating Systems Introduction to Concurrency.
7/26/ Design and Implementation of a Simple Totally-Ordered Reliable Multicast Protocol in Java.
1 Channel Access Concepts – EPICS Training – K.Furukawa – Mar EPICS Channel Access Concepts Kazuro Furukawa, KEK, ( ) (Bob Dalesio, LANL,
1 Concurrency Architecture Types Tasks Synchronization –Semaphores –Monitors –Message Passing Concurrency in Ada Java Threads.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
3.14 Work List IOC Core Channel Access. Changes to IOC Core Online add/delete of record instances Tool to support online add/delete OS independent layer.
ICALEPCS’ GenevaACS in ALMA1 Allen Farris National Radio Astronomy Observatory Lead, ALMA Control System.
Writing a Channel Access Client in EPICS Bob Dalesio, April 5, 2000.
Writing a Channel Access Client in EPICS Bob Dalesio, April 5, 2000.
EPICS EPICS Limitations Bob Dalesio Marty Kraimer.
Reliability/ Secure IOC / Outlook M. Clausen / DESY 1 CA-Put Logging BurtSave Warm Reboot Matthias Clausen DESY/ MKS.
EPICS Release 3.15 Bob Dalesio May 19, Features for 3.15 Support for large arrays - done for rsrv in 3.14 Channel access priorities - planned to.
GLOBAL EDGE SOFTWERE LTD1 R EMOTE F ILE S HARING - Ardhanareesh Aradhyamath.
Jefferson Lab Report Karen S. White 11/14/00. Overview  Status of Jefferson Lab Control System  Work In Progress  Transitioning to Operations.
State of Georgia Release Management Training
B. Dalesio, N. Arnold, M. Kraimer, E. Norum, A. Johnson EPICS Collaboration Meeting December 8-10, 2004 Roadmap for IOC.
Controls Zheqiao Geng Oct. 12, Autosave Additions/Upgrades and Experiences at SLAC Zheqiao Geng Controls Department SLAC National Accelerator Laboratory.
1 Channel Access Concepts – IHEP EPICS Training – K.F – Aug EPICS Channel Access Concepts Kazuro Furukawa, KEK (Bob Dalesio, LANL)
Parallel Computation of Skyline Queries Verification COSC6490A Fall 2007 Slawomir Kmiec.
Managed by UT-Battelle for the Department of Energy Kay Kasemir Jan Experimental Physics and Industrial Control System.
Control System Overview J. Frederick Bartlett Fermilab June 1,1999.
Berliner Elektronenspeicherringgesellschaft für Synchrotronstrahlung mbH (BESSY) CA Gateway Update Ralph Lange, BESSY Ken Evans Jr., APS Jeff Hill, LANL.
TTCN-3 Testing and Test Control Notation Version 3.
VTP VLAN Trunking Protocol Create once and send to the other switches. VTP is a messaging protocol that uses Layer 2 trunk frames to manage the addition,
Coupling and Cohesion Pfleeger, S., Software Engineering Theory and Practice. Prentice Hall, 2001.
Monitoring Dynamic IOC Installations Using the alive Record Dohn Arms Beamline Controls & Data Acquisition Group Advanced Photon Source.
SQL Database Management
Design Components are Code Components
Integration of Blu-Ice into
File Transfer and access
#01 Client/Server Computing
Software Design Lecture : 9.
An Introduction to Software Architecture
Design Components are Code Components
Chapter 2: Operating-System Structures
Writing a Channel Access Client in EPICS
Channel Access Concepts
EPICS: Experimental Physics and Industrial Control System
LHC BLM Software audit June 2008.
Chapter 2: Operating-System Structures
The Lua Chunk Vault, an enhancement to epics base
Message Passing Systems Version 2
Channel Access Concepts
#01 Client/Server Computing
Message Passing Systems
Presentation transcript:

EPICS Release 3.15 Bob Dalesio May 19, 2000

Features for 3.15 Support for large arrays Channel access priorities Portable server replacement of rsrv – multi thread locks, Remove gdd and use new abstract base class Put confirmation Variable length characters strings Unlimited PV name length Periodic Monitors Beyond – extend the channel access protocol to support archive data, multidimensional arrays, and statistical data

Support for Large Arrays The current limitation on the ability to send large arrays is in channel access. The limitation is that any value (array) is expected to be sent in 1 packet People have created an image record as a work around for passing large arrays This is the item that has been on out list of things to do in channel access the longest

Variable Length Character Strings, Unlimited Name Length Currently database fields are limited to 40 characters. This was a limitation of channel access that has been fixed The database is now in need of changing string handling to support this Variable length strings would support the ability to archive operator comments as the channel archiver already supports any type available in channel access. Channel name lengths are currently limited to 36 character. (I hope that no channel access clients have placed this number into the code)

Portable server replacement of RSRV, replace GDD with a new data object Currently there are two channel access servers to maintain: rsrv which serves the EPICS database and the portable server which serves all other data stores. This creates a problem for maintenance. The portable server requires GDD and until recently GDD has not been reliable. Now that GDD is reliable, it is still not lightweight. In the most common case, EPICS sends data along with a time stamp and alarm condition. For this case, GDD is about 2x bigger that the current approach. The new data object could improve the situation for composite data, by providing a mechanism for sending composite parameters only when they change. This would be made transparent for current channel access clients.

Synchronized Put w/ Confirmation / Rate Limited Monitors When an application requires puts to be made to all IOCs, there are several factors that make the time of the puts uncertain –for many puts, the buffer may be flushed from the client side in the middle –the delay to place the value into the database is dependent on the time it takes to scan all records and therefore different from IOC to IOC A new mechanism will be provided to place the put request into the IOC and state that it will be executed later. Execution is either at a certain time or when an execute command is received. Notification of a missed schedule would be important. Currently the database only supports monitor at the frequency of the record processing. New values are sent to clients when either a deadband is exceeded or the alarm condition changes. This causes a problem for a large channel access client like the archiver. If a channel is being archived, the rate to place the values on the disk may be set to control disk usage. When this rate is slower than the monitor rate, network and CPU bandwidth are wasted on the client computer. Rate limited monitors in the IOC would prevent this. Currently, the archiver has a threshold to determine if it should use monitor or caGet.

Database and Channel Access Priorities Interwoven Currently, the database supports three priorities for each scan mechanism. These are set in the process database with a database configuration tool. The priorities given to the scan tasks are only relative to the given scan mechanism. Highest priority is given to record processing and then the channel access client interface. This limits control over the degradation of the system by allowing the scanning of some less important records to inhibit an important client message (like synchronized put or close loop control between IOCs. The modification would use the priority field in the records to determine if the database scan task is to run above high priority channel access, above medium priority channel access, or above the current priority channel access.

Some Observations Regarding Release We have been taking between months between releases. Our releases have become more and more robust. Occasionally, a bug is introduced in a new release, however. You should proceed with caution. All releases are made in beta until they are fully installed on a major project (read APS), and have been running successfully in production. Beta releases are intended for use by members of the collaboration that are willing to help test the new code (or those that are working with test stands or absolutely must have the new features to meet requirements). The ability to improve this schedule is limited by several factors that are not uncommon in the world of software development: trained manpower limitations, the need to support people on the existing software tends to fall on the person that is most familiar with the code, to install a new set of functionality properly requires the programmer to fully understand the existing implementation. There is hope to fix this situation with the addition of some new talent. We have several excellent programmers (that have joined this meeting) that we hope to have actively working on IOC core.

Conclusions EPICS has been divided into IOC Core and extensions to allow the collaboration to make frequent and independent modifications to channel access client programs, new record support and new device/driver support. This has allowed frequent modification of these tools. Modifications to EPICS are always based on the input of experts in accelerator physics. It is only through their valuable experience that we learn how to make useful tools. We are grateful for each kind criticism that they are willing to share with the community. Their knowledge has been gained by years of experience and the sharing of this knowledge helps to teach us all how to make successful control systems at our home institutions. In the first training session, when we first talked about what EPICS is, there were many slides to describe the collaboration. That is because we are building a tool-set that is based on our combined knowledge and experience. Each new release reflects the introduction of new ideas from the people in our community.