Paper |
Title |
Page |
TUCOCB07 |
TANGO - Can ZMQ Replace CORBA ? |
964 |
|
- A. Götz, E.T. Taurel, P.V. Verdier
ESRF, Grenoble, France
- G. Abeillé
SOLEIL, Gif-sur-Yvette, France
|
|
|
TANGO (http://www.tango-controls.org) is a modern distributed device oriented control system toolkit used by a number of facilities to control synchrotrons, lasers and a wide variety of equipment for doing physics experiments. The performance of the network protocol used by TANGO is a key component of the toolkit. For this reason TANGO is based on the omniORB implementation of CORBA. CORBA offers an interface definition language with mappings to multiple programming languages, an efficient binary protocol, a data representation layer, and various services. In recent years a new series of binary protocols based on AMQP have emerged from the high frequency stock market trading business. A simplified version of AMQP called ZMQ (http://www.zeromq.org/) was open sourced in 2010. In 2011 the TANGO community decided to take advantage of ZMQ. In 2012 the kernel developers successfully replaced the CORBA Notification Service with ZMQ in TANGO V8. The first part of this paper will present the software design, the issues encountered and the resulting improvements in performance. The second part of this paper will present a study of how ZMQ could replace CORBA completely in TANGO.
|
|
|
Slides TUCOCB07 [1.328 MB]
|
|
|
TUCOCB10 |
TANGO V8 - Another Turbo Charged Major Release |
978 |
|
- A. Götz, J.M. Chaize, T.M. Coutinho, J.M. Meyer, F. Poncet, E.T. Taurel, P.V. Verdier
ESRF, Grenoble, France
- G. Abeillé, A. Buteau, N. Leclercq, F.E. Picca
SOLEIL, Gif-sur-Yvette, France
- S. Cleva, M. Lonza, L. Pivetta, C. Scafuri
Elettra-Sincrotrone Trieste S.C.p.A., Basovizza, Italy
- D.F.C. Fernández-Carreiras, S. Rubio-Manrique
CELLS-ALBA Synchrotron, Cerdanyola del Vallès, Spain
- I.A. Khokhriakov
HZG, Geesthacht, Germany
- S. Perez
CEA, Arpajon, France
- D.P. Spruce
MAX-lab, Lund, Sweden
|
|
|
The TANGO (http://tango-controls/org) collaboration continues to evolve and improve the TANGO kernel. A latest release has made major improvements to the protocol and, the language support in Java. The replacement of the CORBA Notificaton service with ZMQ for sending events has allowed a much higher performance, a simplification of the architecture and support for multicasting to be achieved. A rewrite of the Java device server binding using the latest features of the Java language has made the code much more compact and modern. Guidelines for writing device servers have been produced so they can be more easily shared. The test suite for testing the TANGO kernel has been re-written and the code coverage drastically improved. TANGO has been ported to new embedded platforms running Linux and mobile platforms running Android and iOS. Packaging for Debian and bindings to commercial tools have been updated and a new one (Panorama) added. The graphical layers have been extended. The latest figures on TANGO performance will be presented. Finally the paper will present the roadmap for the next major release.
|
|
|
Slides TUCOCB10 [1.469 MB]
|
|
|