15 research outputs found
A ProActive Backend for ABS: from Modelling to Deployment
ABS is an object-oriented modeling language that is based on a concurrent object group model, derived itself from the active object model. Its goal is to describe distributed and concurrent applications in order to verify their properties and make them safer. Thanks to the ABS Tool Suite, ABS programs can be translated into the Java programming language (among others), and executed in the JVM. This paper presents a new ABS backend that translates ABS programs into ProActive programs. ProActive is a well known active object Java library that provides support for distribution of applications across clusters or grids. The benefit of this work is to be able to easily distribute ABS programs, so that ABS models can also be experimented in a large scale setting. Our contribution includes the ProActive backend itself, the complete description of our translation strategy, and a realistic experiment that shows the benefits of the ProActive backend
An Optimal Broadcast Algorithm for Content-Addressable Networks -- Extended Version
Structured peer-to-peer networks are powerful underlying structures for communication and storage systems in large-scale setting. In the context of the Content-Addressable Network (CAN), this paper addresses the following challenge: how to perform an efficient broadcast while the local view of the network is restricted to a set of neighbours? In existing approaches, either the broadcast is inefficient (there are duplicated messages) or it requires to maintain a particular structure among neighbours, e.g. a spanning tree. We define a new broadcast primitive for CAN that sends a minimum number of messages while covering the whole network, without any global knowledge. Currently, no other algorithm achieves those two goals in the context of CAN. In this sense, the contribution we propose in this paper is threefold. First, we provide an algorithm that sends exactly one message per recipient without building a global view of the network. Second, we prove the absence of duplicated messages and the coverage of the whole network when using this algorithm. Finally, we show the practical benefits of the algorithm throughout experiments.Ce document présente un nouvel algorithme de broadcast pour réseaux pair-à-pair de type CAN. Cet algorithme de broadcast est optimal dans le sens où tous les pairs ne reçoivent le message qu'une seule fois, sans connaissances globales. Après avoir introduit les étapes fondamentales de cet algorithme, ses principales propriétés sont exposées et prouvées. Des expériences à taille réelle montrent la validité de cet algorithme et ses bénéfices
In-situ regolith seismic velocity measurement at the InSight landing site on Mars
InSight's seismometer package SEIS was placed on the surface of Mars at about 1.2 m distance from the thermal properties instrument HP3 that includes a self-hammering probe. Recording the hammering noise with SEIS provided a unique opportunity to estimate the seismic wave velocities of the shallow regolith at the landing site. However, the value of studying the seismic signals of the hammering was only realised after critical hardware decisions were already taken. Furthermore, the design and nominal operation of both SEIS and HP3 are non-ideal for such high-resolution seismic measurements. Therefore, a series of adaptations had to be implemented to operate the self-hammering probe as a controlled seismic source and SEIS as a high-frequency seismic receiver including the design of a high-precision timing and an innovative high-frequency sampling workflow. By interpreting the first-arriving seismic waves as a P-wave and identifying first-arriving S-waves by polarisation analysis, we determined effective P- and S-wave velocities of vP = 114+43-20 m/s and vS = 60+11-7 m/s, respectively, from around 2,000 hammer stroke recordings. These velocities likely represent bulk estimates for the uppermost several 10's of cm of regolith. An analysis of the P-wave incidence angles provided an independent vP/vS ratio estimate of 1.84+0.89-0.35 that compares well with the traveltime based estimate of 1.92+0.52-0.28. The low seismic velocities are consistent with those observed for low-density unconsolidated sands and are in agreement with estimates obtained by other methods
From Modelling to Systematic Deployment of Distributed Active Objects – Extended Version
In the context of the expansion of actors and active objects,we are still facing a gap between the safety guaranteed by modellingand verification languages and the efficiency of distributed middlewares.In this paper, we reconcile two active object-based languages, ABS andProActive, that respectively target the aforementioned goals. We compile ABS programs into ProActive, making possible to benefit fromthe strengths of both languages, while requiring no modification on thesource code. After introducing the translational semantics, we establishthe properties and the correctness of the translation. Overall, this paperpresents an approach to running di↵erent active object models in distributed environments, and more generally studies the implementationof programming languages based on active objects
From Modelling to Systematic Deployment of Distributed Active Objects
International audienceIn the context of the expansion of actors and active objects, we are still facing a gap between the safety guaranteed by modelling and verification languages and the efficiency of distributed middlewares. In this paper, we reconcile two active object-based languages, ABS and ProActive, that respectively target the aforementioned goals. We compile ABS programs into ProActive, making possible to benefit from the strengths of both languages, while requiring no modification on the source code. After introducing the translational semantics, we establish the properties and the correctness of the translation. Overall, this paper presents an approach to running different active object models in distributed environments, and more generally studies the implementation of programming languages based on active objects
Multiactive objects and their applications
In order to tackle the development of concurrent and distributed systems, theactive object programming model provides a high-level abstraction to programconcurrent behaviours. There exists already a variety of active objectframeworks targeted at a large range of application domains: modelling,verification, efficient execution. However, among these frameworks, very fewconsider a multi-threaded execution of active objects. Introducing controlledparallelism within active objects enables overcoming some of their limitations.In this paper, we present a complete framework around the multi-active objectprogramming model. We present it through ProActive, the Java library thatoffers multi-active objects, and through MultiASP, the programming languagethat allows the formalisation of our developments. We then show how to compilean active object language with cooperative multi-threading into multi-activeobjects. This paper also presents different use cases and the developmentsupport to illustrate the practical usability of our language. Formalisation ofour work provides the programmer with guarantees on the behaviour of themulti-active object programming model and of the compiler
Multiactive objects and their applications
In order to tackle the development of concurrent and distributed systems, the
active object programming model provides a high-level abstraction to program
concurrent behaviours. There exists already a variety of active object
frameworks targeted at a large range of application domains: modelling,
verification, efficient execution. However, among these frameworks, very few
consider a multi-threaded execution of active objects. Introducing controlled
parallelism within active objects enables overcoming some of their limitations.
In this paper, we present a complete framework around the multi-active object
programming model. We present it through ProActive, the Java library that
offers multi-active objects, and through MultiASP, the programming language
that allows the formalisation of our developments. We then show how to compile
an active object language with cooperative multi-threading into multi-active
objects. This paper also presents different use cases and the development
support to illustrate the practical usability of our language. Formalisation of
our work provides the programmer with guarantees on the behaviour of the
multi-active object programming model and of the compiler
Deployment and surface operations of the SEIS instrument onboard the InSight mission
International audienceOn November 26th 2018, the InSight spacecraft successfully landed on Mars after a 6-month journey. After a long deployment and commissioning phase, the SEIS (Seismic Experiment for Interior Structure) instrument was ready to monitor seismic events on the Elysium Planitia plain on the surface of Mars, coupled with the APSS (Auxiliary Payload Sensor Suite) weather station equipped with a magnetometer, wind sensors, and a pressure sensor. The InSight mission goal is to characterize the deep interior structure of Mars, including the thickness and structure of the crust, the composition and structure of the mantle, and the size of the core. Its nominal duration of two years (2019-2020) has yielded unprecedented results with the detection of the first Martian seismic events ever recorded, and the in-depth characterization of its atmosphere with the best weather station ever deployed on Mars. InSight has collected an outstanding amount of high-quality measurements that the scientific community will spend many years analyzing.The extended mission has started and covers the years 2021 and 2022. This paper will describe the operations of the SEIS experiment on Mars since landing, as well as the challenges of operating this instrument. Energy becomes increasingly limited for payloads on Mars due to a significant amount of dust accumulated on the solar panels and the many dust storms in the Martian atmosphere. A new activity was decided for the extended mission in 2021 which consisted in burying the seismometer cable (or tether) with Martian regolith collected locally using the robotic arm, in order to reduce the seismic noise from that subsystem. Preparation activities, testing, results, associated challenges and lessons learned will be presented. Moreover, the paper will address the challenges faced in carrying out operations with COVID-related constraints, as finding oneself operating a seismometer on Mars from home can be challenging. Finally, management of periods of solar conjunctions, during which communication between Earth and Mars is unavailable, will be addressed
Physical Mechanisms of Fatigue in Neat Polyamide 6,6
The fatigue durability of polyamide
6,6 has been studied for various maximal stresses. We focus on the
identification of the microscopic mechanisms responsible for damaging
in fatigue regime. We show that the apparent stiffness, or dynamic
modulus, decreases linearly as a function of the logarithm of the
number of cycles during fatigue tests, except at the very end of the
lifetime, prior to failure. This suggests a progressive, accumulative,
and generalized damage in the material. This damage mechanism has
been characterized at various scales with electron microscopy and
X-ray scattering. These analyses show that low density domains are
formed at nanometric scale at the early stages of fatigue. The number
and size of these domains increase as a function of the number of
cycles, explaining the logarithmic decrease of dynamic modulus. These
low density domains become anisotropic and evolve into crazes at the
ultimate stages of fatigue. The size distribution, density, and form
factor of the defects have been characterized during fatigue. The
damaging mechanisms and the different steps of damage are discussed
in the context of a recent theoretical model
A survey of active object languages
To program parallel systems efficiently and easily, a wide range of programming models have been proposed, each with different choices concerning synchronization and communication between parallel entities. Among them, the actor model is based on loosely coupled parallel entities that communicate by means of asynchronous messages and mailboxes. Some actor languages provide a strong integration with object-oriented concepts; these are often called active object languages. This article reviews four major actor and active object languages and compares them according to carefully chosen dimensions that cover central aspects of the programming paradigms and their implementation