Today's state-of-the-art concurrent programming models either provide weak safety guarantees, making it easy to write code with subtle errors, or are limited in the class of programs that they can express. I believe that a concurrent programming model should offer strong safety guarantees such as data race freedom, atomicity, and optional determinism, while being flexible enough to express the wide range of uses for concurrency in realistic programs, and offering good performance and scalability. In my thesis research, I have defined a new concurrent programming model called tasks with effects (TWE) that is intended to fulfill these goals. The core unit of work in this model is a dynamically-created task. The model's key feature is that eac...
We propose a multicore-ready programming language based on a two-level shared memory model. Concurre...
With the development of multi-core processors, concurrent programs are becoming more and more popula...
Automated software verification can prove the correctness of a program with respect to a given speci...
Today's state-of-the-art concurrent programming models either provide weak safety guarantees, making...
Concurrent programming has become ubiquitous, but today’s widely-used concurrent programming models ...
This thesis presents a new, Java-based object-oriented parallel language called Deterministic Paral...
Concurrency is ubiquitous in modern software. The computing base of systems software, including oper...
Original paper can be found at: http://dl.acm.org/ Copyright ACM [Full text of this conference paper...
Writing correct shared-memory concurrent programs is hard. Not only must a programmer reason about ...
AbstractEvolving and refactoring concurrent Java software can be error-prone, resulting in race cond...
Multicore and manycore computers are the norm nowadays, and users have expectations that their progr...
With the rising variety of hardware designs for multi-core systems, the effectiveness in exploiting ...
Multithreaded programs are hard to develop and test. In order for programs to avoid unexpected concu...
Recent trends in programming models for server-side development have shown an increasing popularity ...
In this thesis, we address the problem of verifying the functional correctness of concurrent program...
We propose a multicore-ready programming language based on a two-level shared memory model. Concurre...
With the development of multi-core processors, concurrent programs are becoming more and more popula...
Automated software verification can prove the correctness of a program with respect to a given speci...
Today's state-of-the-art concurrent programming models either provide weak safety guarantees, making...
Concurrent programming has become ubiquitous, but today’s widely-used concurrent programming models ...
This thesis presents a new, Java-based object-oriented parallel language called Deterministic Paral...
Concurrency is ubiquitous in modern software. The computing base of systems software, including oper...
Original paper can be found at: http://dl.acm.org/ Copyright ACM [Full text of this conference paper...
Writing correct shared-memory concurrent programs is hard. Not only must a programmer reason about ...
AbstractEvolving and refactoring concurrent Java software can be error-prone, resulting in race cond...
Multicore and manycore computers are the norm nowadays, and users have expectations that their progr...
With the rising variety of hardware designs for multi-core systems, the effectiveness in exploiting ...
Multithreaded programs are hard to develop and test. In order for programs to avoid unexpected concu...
Recent trends in programming models for server-side development have shown an increasing popularity ...
In this thesis, we address the problem of verifying the functional correctness of concurrent program...
We propose a multicore-ready programming language based on a two-level shared memory model. Concurre...
With the development of multi-core processors, concurrent programs are becoming more and more popula...
Automated software verification can prove the correctness of a program with respect to a given speci...