471 research outputs found
CAWET: Context-Aware Worst-Case Execution Time Estimation Using Transformers
This paper presents CAWET, a hybrid worst-case program timing estimation technique. CAWET identifies the longest execution path using static techniques, whereas the worst-case execution time (WCET) of basic blocks is predicted using an advanced language processing technique called Transformer-XL. By employing Transformers-XL in CAWET, the execution context formed by previously executed basic blocks is taken into account, allowing for consideration of the micro-architecture of the processor pipeline without explicit modeling. Through a series of experiments on the TacleBench benchmarks, using different target processors (Arm Cortex M4, M7, and A53), our method is demonstrated to never underestimate WCETs and is shown to be less pessimistic than its competitors
Sciduction: Combining Induction, Deduction, and Structure for Verification and Synthesis
Even with impressive advances in automated formal methods, certain problems
in system verification and synthesis remain challenging. Examples include the
verification of quantitative properties of software involving constraints on
timing and energy consumption, and the automatic synthesis of systems from
specifications. The major challenges include environment modeling,
incompleteness in specifications, and the complexity of underlying decision
problems.
This position paper proposes sciduction, an approach to tackle these
challenges by integrating inductive inference, deductive reasoning, and
structure hypotheses. Deductive reasoning, which leads from general rules or
concepts to conclusions about specific problem instances, includes techniques
such as logical inference and constraint solving. Inductive inference, which
generalizes from specific instances to yield a concept, includes algorithmic
learning from examples. Structure hypotheses are used to define the class of
artifacts, such as invariants or program fragments, generated during
verification or synthesis. Sciduction constrains inductive and deductive
reasoning using structure hypotheses, and actively combines inductive and
deductive reasoning: for instance, deductive techniques generate examples for
learning, and inductive reasoning is used to guide the deductive engines.
We illustrate this approach with three applications: (i) timing analysis of
software; (ii) synthesis of loop-free programs, and (iii) controller synthesis
for hybrid systems. Some future applications are also discussed
Safety-related challenges and opportunities for GPUs in the automotive domain
GPUs have been shown to cover the computing performance needs of autonomous driving (AD) systems. However, since the GPUs used for AD build on designs for the mainstream market, they may lack fundamental properties for correct operation under automotive's safety regulations. In this paper, we analyze some of the main challenges in hardware and software design to embrace GPUs as the reference computing solution for AD, with the emphasis in ISO 26262 functional safety requirements.Authors would like to thank Guillem Bernat from Rapita Systems for his technical feedback on this work. The research leading to this work has received funding from the European Re-search Council (ERC) under the European Union's Horizon 2020 research and innovation programme (grant agreement No. 772773). This work has also been partially supported by the Spanish Ministry of Science and Innovation under grant TIN2015-65316-P and the HiPEAC Network of Excellence. Jaume Abella has been partially supported by the Ministry of Economy and Competitiveness under Ramon y Cajal postdoctoral fellowship number RYC-2013-14717. Carles Hernández is jointly funded by the Spanish Ministry of Economy and Competitiveness and FEDER funds through grant TIN2014-60404-JIN.Peer ReviewedPostprint (author's final draft
Designing Neural Networks for Real-Time Systems
Artificial Neural Networks (ANNs) are increasingly being used within
safety-critical Cyber-Physical Systems (CPSs). They are often co-located with
traditional embedded software, and may perform advisory or control-based roles.
It is important to validate both the timing and functional correctness of these
systems. However, most approaches in the literature consider guaranteeing only
the functionality of ANN based controllers. This issue stems largely from the
implementation strategies used within common neural network frameworks -- their
underlying source code is often simply unsuitable for formal techniques such as
static timing analysis. As a result, developers of safety-critical CPS must
rely on informal techniques such as measurement based approaches to prove
correctness, techniques that provide weak guarantees at best. In this work we
address this challenge. We propose a design pipeline whereby neural networks
trained using the popular deep learning framework Keras are compiled to
functionally equivalent C code. This C code is restricted to simple constructs
that may be analysed by existing static timing analysis tools. As a result, if
compiled to a suitable time-predictable platform all execution bounds may be
statically derived. To demonstrate the benefits of our approach we execute an
ANN trained to drive an autonomous vehicle around a race track. We compile the
ANN to the Patmos time-predictable controller, and show that we can derive
worst case execution timings.Comment: 4 pages, 2 figures. IEEE Embedded Systems Letters, 202
A Model-Derivation Framework for Software Analysis
Model-based verification allows to express behavioral correctness conditions
like the validity of execution states, boundaries of variables or timing at a
high level of abstraction and affirm that they are satisfied by a software
system. However, this requires expressive models which are difficult and
cumbersome to create and maintain by hand. This paper presents a framework that
automatically derives behavioral models from real-sized Java programs. Our
framework builds on the EMF/ECore technology and provides a tool that creates
an initial model from Java bytecode, as well as a series of transformations
that simplify the model and eventually output a timed-automata model that can
be processed by a model checker such as UPPAAL. The framework has the following
properties: (1) consistency of models with software, (2) extensibility of the
model derivation process, (3) scalability and (4) expressiveness of models. We
report several case studies to validate how our framework satisfies these
properties.Comment: In Proceedings MARS 2017, arXiv:1703.0581
Efficient and Effective Multi-Objective Optimization for Real-Time Multi-Task Systems
Embedded real-time multi-task systems must often not only comply with timing constraints but also need to meet energy requirements. However, optimizing energy consumption might lead to higher Worst-Case Execution Time (WCET), leading to an un-schedulable system, as frequently executed code can easily differ from timing-critical code. To handle such an impasse in this paper, we formulate a Metaheuristic Algorithm-based Multi-objective Optimization (MAMO) for multi-task real-time systems. But, performing multiple WCET, energy, and schedulability analyses to solve a MAMO poses a bottleneck concerning compilation times. Therefore, we propose two novel approaches - Path-based Constraint Approach (PCA) and Impact-based Constraint Approach (ICA) - to reduce the solution search space size and to cope with this problem. Evaluations showed that PCA and ICA reduced compilation times by 85.31% and 77.31%, on average, over MAMO. For all the task sets, out of all solutions found by ICA-FPA, on average, 88.89% were on the final Pareto front
Incorporating temporal-bounded CBR techniques in real-time agents
Nowadays, MAS paradigm tries to move Computation to a new level of abstraction: Computation as interaction,
where large complex systems are seen in terms of the services they offer, and consequently in
terms of the entities or agents providing or consuming services. However, MAS technology is found to
be lacking in some critical environments as real-time environments. An interaction-based vision of a
real-time system involves the purchase of a responsibility by any entity or agent for the accomplishment
of a required service under possibly hard or soft temporal conditions. This vision notably increases the
complexity of these kinds of systems. The main problem in the architecture development of agents in
real-time environments is with the deliberation process where it is difficult to integrate complex
bounded deliberative processes for decision-making in a simple and efficient way. According to this, this
work presents a temporal-bounded deliberative case-based behaviour as an anytime solution. More specifically,
the work proposes a new temporal-bounded CBR algorithm which facilitates deliberative processes
for agents in real-time environments, which need both real-time and deliberative capabilities.
The paper presents too an application example for the automated management simulation of internal
and external mail in a department plant. This example has allowed to evaluate the proposal investigating
the performance of the system and the temporal-bounded deliberative case-based behaviour.
2010 Elsevier Ltd. All rights reserved.This work is supported by TIN2006-14630-C03-01 projects of the Spanish government, GVPRE/2008/070 project, FEDER funds and CONSOLIDER-INGENIO 2010 under Grant CSD2007-00022.Navarro Llácer, M.; Heras Barberá, SM.; Julian Inglada, VJ.; Botti Navarro, VJ. (2011). Incorporating temporal-bounded CBR techniques in real-time agents. Expert Systems with Applications. 38(3):2783-2796. https://doi.org/10.1016/j.eswa.2010.08.070S2783279638
A Model-Derivation Framework for Software Analysis
Model-based verification allows to express behavioral correctness conditions
like the validity of execution states, boundaries of variables or timing at a
high level of abstraction and affirm that they are satisfied by a software
system. However, this requires expressive models which are difficult and
cumbersome to create and maintain by hand. This paper presents a framework that
automatically derives behavioral models from real-sized Java programs. Our
framework builds on the EMF/ECore technology and provides a tool that creates
an initial model from Java bytecode, as well as a series of transformations
that simplify the model and eventually output a timed-automata model that can
be processed by a model checker such as UPPAAL. The framework has the following
properties: (1) consistency of models with software, (2) extensibility of the
model derivation process, (3) scalability and (4) expressiveness of models. We
report several case studies to validate how our framework satisfies these
properties.Comment: In Proceedings MARS 2017, arXiv:1703.0581
- …