Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Bernard Virot is active.

Publication


Featured researches published by Bernard Virot.


Theoretical Computer Science | 1997

Formal validation of data-parallel programs: a two-component assertional proof system for a simple language

Luc Bougé; David Cachera; Yann Le Guyadec; Gil Utard; Bernard Virot

Abstract We present a proof system for a simple data-parallel kernel language called L. This proof system is based on a two-component assertion language. We define a weakest preconditions calculus and analyze its definability properties. This calculus is used to prove the completeness of the proof system. We also present a two-phase proof methodology, yielding proofs similar to those for scalar languages. We finally discuss other approaches.


Journal of Parallel and Distributed Computing | 1998

A Structured Synchronization and Communication Model Fitting Irregular Data Accesses

Emmanuel Melin; Bruno Raffin; Xavier Rebeuf; Bernard Virot

In this paper, we present a parallel programming and execution model based on alogicalordering of control flows. We show that it is possible to provide a unifying framework consisting of a synchronous programming model, thereby facilitating the mastery of programs, and an asynchronous execution model yielding efficient executions. Our approach is based on a SPMD and task parallel programming language, called SCL?Chan. Communications take place through channels and rely on explicit send/receive instructions. In contrast to classical message passing models, synchronizations and communications are dissociated. We show that it is possible to perform a data-driven automatic translation of sequential and arbitrary DOACROSS loops into SCL?Chan, by using nonmatching send/receive instructions. Our parallelization technique allows us to handle irregular control and leads to optimizations of communications in irregular computations.


Parallel Processing Letters | 1996

SEQUENTIAL-LIKE PROOFS OF DATA-PARALLEL PROGRAMS

Y. Le Guyadec; Bernard Virot

We define a proof system a la Hoare for a common kernel of existing data-parallel languages. It includes conditioning constructs and non-local control transfers such as data-parallel break and continue. Assertions are usual predicates and manipulations of the extent of parallelism are translated into explicit assignments. Therefore, proofs reuse the classical assertional setting of sequential Hoare Logic.


Advances in Computers | 1996

Formal Validation of Data Parallel Programs: Introducting the Assertional Approach

Luc Bougé; David Cachera; Yann Le Guyadec; Gil Utard; Bernard Virot

We present a proof system for a simple data parallel kernel language. This proof system is based on two-component assertions, where the current extent of parallelism is explicitly described. We define a weakest preconditions (WP) calculus and discuss the associated definability property. Thanks to this weakest preconditions calculus, we establish the completeness of the proof system. We finally discuss other approaches.


european conference on parallel processing | 1999

A Cost Model for Asynchronous and Structured Message Passing

Emmanuel Melin; Bruno Raffin; Xavier Rebeuf; Bernard Virot

We present a cost model that relies on an asynchronous and structured parallel execution model for message passing. We show that it is possible to define a complexity function for programs that yields a symbolic date for each communication event. By ordering these dates, an upper bound for the network load can be computed. In contrast to classical approaches this cost computation can handle asynchronism for message passing and communication/computation overlap.


Archive | 1994

On the expressivity of a weakest precondition calculus for a simple data-parallel programming language (short version)

Luc Bougé; Yann Le Guyadec; Gil Utard; Bernard Virot

We present a weakest preconditions calculus a la Dijkstra for a small common kernel of existing data-parallel languages. We use two-part assertions, where the current extent of parallelism is specified by a separate boolean vector expression. Our main contribution is concerned with the conditioning construct where which modifies the current extent of parallelism. We prove that the weakest (strict) preconditions of a where block is definable by an assertion as soon as its body is. This is not the case with its weakest liberal preconditions. This sheds a new light on the deep semantic nature of the data-parallel conditioning construct.


high level parallel programming models and supportive environments | 1997

SCL-Chan: an asynchronous data-parallel language for irregular algorithms

Emmanuel Melin; Bruno Raffin; Xavier Rebeuf; Bernard Virot

Parallelism suffers from a lack of programming languages both simple to handle and able to take advantage of the power of present parallel computers. If parallelism expression is too high level, compilers have to perform complex optimizations leading often to poor performances. One the other hand, too low level parallelism transfers difficulties toward the programmer. We propose a programming language that integrates both a synchronous data parallel programming model and an asynchronous execution model. The synchronous data parallel programming model allows safe program design. The asynchronous execution model yields an efficient execution on present MIMD architectures without any program transformation. Our language relies an logical instruction ordering exploited by specific send/receive communications. It allows one to express only the effective data dependences between processors. This ability is enforced by a possible send/receive unmatching, useful for irregular algorithms. A sparse vector computation exemplifies our language potentialities.


european conference on parallel processing | 1996

A Loosely Synchronized Execution Model for a Simple Data-Parallel Language (Extended Abstract)

Yann Le Guyadec; Emmanuel Melin; Bruno Raffin; Xavier Rebeuf; Bernard Virot

Data-parallel languages offer a programming model structured and easy to understand. The challenge consists in taking advantage of the power of present parallel architectures by a compilation process allowing to reduce the number and the complexity of synchronizations. In this paper, we clearly separate the synchronous programming model from the asynchronous execution model by the way of a translation from a synchronous data-parallel programming language into an asynchronous target language. The synchronous data-parallel programming language allows to temporarily mask local computations. The asynchronous target language handles explicit and partial synchronizations through the use of structural clocks.


Archive | 1995

A Loosely Synchronized Execution Model for a Simple Data-Parallel Language.

Yann Le Guyadec; Emmanuel Melin; Bruno Raffin; Xavier Rebeuf; Bernard Virot


Archive | 1996

Structural Clocks for a Loosely Synchronized Data-Parallel Language

Yann Le Guyadec; Emmanuel Melin; Bruno Raffin; Xavier Rebeuf; Bernard Virot

Collaboration


Dive into the Bernard Virot's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Gil Utard

École normale supérieure de Lyon

View shared research outputs
Top Co-Authors

Avatar

Luc Bougé

École normale supérieure de Lyon

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

David Cachera

École normale supérieure de Lyon

View shared research outputs
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge