{'fraction_non_alphanumeric': 0.023888520238885203, 'fraction_numerical': 0.0019907100199071004, 'mean_word_length': 4.937007874015748, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
The VLTI real-time reflective memory data streaming and recording system

The VLTI control architecture is based on a real time distributed system involving dozens of specialized computers. Several control loops are required to run the VLTI, e.g. for fringe tracking, angle tracking, injection optimization and vibration cancellation. These control systems rely on a low latency, deterministic shared memory mechanism. It communicates in the form of a close ring, which includes all devices involved in those loops. Through this ring, sensor data, intermediate filtered signals, final actuator set-points and feedbacks flow at rates up to 8 kHz. Data in this ring can be consumed by any node asynchronously. In many cases, those signals are also the astronomical observable (e.g. the beam combiner fluxes for astrometry) or are used offline, in order to improve the quality of the scientific data reduction and to debug the system. With the purpose of relieving the control applications of the simultaneous need to record their signals, a centralized generic recording device has been designed and implemented at the VLTI. In this paper, we describe its architecture and show that by over-sampling, streaming and posterior filtering on a separate computer it is possible to overcome the asynchronous nature of the system. We demonstrate that it is feasible to capture data in real time, verify time reference consistency and store on disk at rates up to ~50 Mbit/s, fulfilling the current VLTI requirements.