6 research outputs found
A method for rigorous development of fault-tolerant systems
PhD ThesisWith the rapid development of information systems and our increasing
dependency on computer-based systems, ensuring their dependability becomes
one the most important concerns during system development. This
is especially true for the mission and safety critical systems on which we
rely not to put signi cant resources and lives at risk.
Development of critical systems traditionally involves formal modelling
as a fault prevention mechanism. At the same time, systems typically
support fault tolerance mechanisms to mitigate runtime errors. However,
fault tolerance modelling and, in particular, rigorous de nitions of fault
tolerance requirements, fault assumptions and system recovery have not
been given enough attention during formal system development.
The main contribution of this research is in developing a method for
top-down formal design of fault tolerant systems. The re nement-based
method provides modelling guidelines presented in the following form:
a set of modelling principles for systematic modelling of fault tolerance,
a fault tolerance re nement strategy, and
a library of generic modelling patterns assisting in disciplined integration
of error detection and error recovery steps into models.
The method supports separation of normal and fault tolerant system behaviour
during modelling. It provides an environment for explicit modelling
of fault tolerance and modal aspects of system behaviour which
ensure rigour of the proposed development process.
The method is supported by tools that are smoothly integrated into an
industry-strength development environment.
The proposed method is demonstrated on two case studies. In particular,
the evaluation is carried out using a medium-scale industrial case study
from the aerospace domain.
The method is shown to provide support for explicit modelling of fault
tolerance, to reduce the development e orts during modelling, to support
reuse of fault tolerance modelling, and to facilitate adoption of formal
methods.DEPLOY:
The TrAmS Grant:
The School of Computing Science, Newcastle University
Optimal program variant generation for hybrid manycore systems
Field Programmable Gate Arrays promise to deliver superior energy efficiency in heterogeneous high performance computing, as compared to multicore CPUs and GPUs. The rate of adoption is however hampered by the relative difficulty of programming FPGAs. High-level synthesis tools such as Xilinx Vivado, Altera OpenCL or Intel's HLS address a large part of the programmability issue by synthesizing a Hardware Description Languages representation from a high-level specification of the application, given in programming languages such as OpenCL C, typically used to program CPUs and GPUs. Although HLS solutions make programming easier, they fail to also lighten the burden of optimization. Application developers must rely on expert knowledge to manually optimize their applications for each target device, meaning that traditional HLS solutions do not offer a solution to the issue of performance portability. This state of fact prompted the development of compiler frameworks such as TyTra that operate at an even higher level of abstraction that is amenable to the use of Design Space Exploration (DSE). With DSE the initial program specification can be seen as the starting location in a search-space of correct-by-construction program transformations. In TyTra the search-space is generated from the transitive-closure of term-level transformations derived from type-level transformations. Compiler frameworks such as TyTra theoretically solve the issue of performance portability by providing a way to automatically generate alternative correct program variants. They however suffer from the very practical issue that the generated space is often too large to fully explore. As a consequence, the globally optimal solution may be overlooked.
In this work we provide a novel solution to issue performance portability by deriving an efficient yet effective DSE strategy for the TyTra compiler framework. We make use of categorical data types to derive categorical semantics for the formal languages that describe the terms, types, cost-performance estimates and their transformations. From these we define a category of interpretations for TyTra applications, from which we derive a DSE strategy that finds the globally optimal transformation sequence in polynomial time. This is achieved by reducing the size of the generated search space. We formally state and prove a theorem for this claim and then show that the polynomial run-time for our DSE strategy has practically negligible coefficients leading to sub-second exploration times for realistic applications
Rethinking the law school
Law, by its very nature, tends to think locally, not globally. This book has a broader scope in terms of the range of nations and offers a succinct journey through law schools on different continents and subject matters. It covers education, research, impact and societal outreach, and governance. It illustrates that law schools throughout the world have much in common in terms of values, duties, challenges, ambitions and hopes. It provides insights into these aspirations, whilst presenting a thought provoking discussion for a more global agenda on the future of law schools. Written from the perspective of a former dean, the book offers a unique understanding of the challenges facing legal education and research