Vijay Saraswat

Learn More
This paper addresses the static analysis of an important class of X10 programs, namely those with finish/async parallelism, and affine loops and array reference structure as in the polyhedral model. For such programs our analysis can certify whenever a program is deterministic or flags races. Our key contributions are (i) adaptation of array dataflow(More)
GPU architectures have emerged as a viable way of considerably improving performance for appropriate applications. Program fragments (kernels) appropriate for GPU execution can be implemented in CUDA or OpenCL and glued into an application via an API. While there is plenty of evidence of performance improvements using this approach, there are many issues(More)
The Global Matrix Library (GML) is a distributed matrix library in the X10 language. GML is designed to simplify the development of scalable linear algebra applications. By hiding the communication and parallelism details, GML programs are written in a sequential style that is easy to use and understand by non expert programmers. Resilience is becoming a(More)
One of many approaches to better take advantage of parallelism, which has now become mainstream, is the introduction of parallel programming languages. However, parallelism is by nature nondeterministic, and not all parallel bugs can be avoided by language design. This paper proposes a method for guaranteeing absence of data races in the polyhedral subset(More)
Processes can be seen as resources; if they can be consumed, we say that they are linear, else we say that they are persistent. In this paper we present a study of linear and persistent processes wrt to the kind of system they can model. We choose π-calculus, perhaps the main representative of process calculi, as a framework to conduct our study. We(More)
We present a framework that couples the syntax and semantics of natural language sentences in a generative model, in order to develop a semantic parser that jointly infers the syntactic, morphological, and semantic representations of a given sentence under the guidance of background knowledge. To generate a sentence in our framework, a semantic statement is(More)
The advent of multicore processors has made concurrent programming languages mandatory. However, most concurrent programming models come with two major pitfalls: non-determinism and deadlocks. By determinism, we mean the output behavior of the program is independent of the scheduling choices (e.g., the operating system) and depends only on the input(More)
The primary task of the lungs is to maintain oxygenation of the blood and eliminate carbon dioxide through the network of capillaries alongside alveoli. This is maintained by utilising ventilatory reserve capacity and by changes in lung mechanics. Induction of anaesthesia impairs pulmonary functions by the loss of consciousness, depression of reflexes,(More)