Computers have brought us inestimable convenience in recent years. We have become dependent on them and more sensitive to their performance. During the past decades, we have been trying to improve program efficiency. The invention of multi-core systems is regarded as the new era of boosting performance of computer programs. When we focus on improving program efficiency, we also need to pay attention to program correctness. In some specific areas, errors, aka bugs, of programs can cause disastrous consequences. The dominant approach to bug detection is testing, which is conducted by executing a program against test cases generated based on scenarios. A bug is found when the output of the program does not match the expected output defined in ...
With the spread of multi-core systems, the need to write concurrent programs in order to take advant...
Given its pervasiveness, it is unfortunate that writing multi-threaded software is an in-tricate and...
Transactional Memory (TM) provides programmers with a high-level and composable concurrency control ...
Computers have brought us inestimable convenience in recent years. We have become dependent on them ...
AbstractModel checking is a proven successful technology for verifying hardware. It works, however, ...
Model checking transactional memories (TMs) is difficult because of the unbounded number, length, an...
Model checking is a proven successful technology for verifying hardware. It works, however, on only ...
When a program is compiled and run on a modern architecture, different optimizations may be applied ...
Debugging complex software systems is a major problem. Proving properties of software systems can be...
In the ever-developing world of technology, more and more situations arise where the life of many pe...
Model-checking tools classicaly verify concurrent programs under the traditional Sequential Consiste...
Formal verification of multithreaded software running on multi-core hardware has for long been chall...
Cache coherency is one of the major issues in multicore systems. Formal methods, in particular model...
The work covered in this thesis concerns automatic analysis of correctness of parallel programs runn...
Concurrency libraries can facilitate the development of multi-threaded programs by providing concurr...
With the spread of multi-core systems, the need to write concurrent programs in order to take advant...
Given its pervasiveness, it is unfortunate that writing multi-threaded software is an in-tricate and...
Transactional Memory (TM) provides programmers with a high-level and composable concurrency control ...
Computers have brought us inestimable convenience in recent years. We have become dependent on them ...
AbstractModel checking is a proven successful technology for verifying hardware. It works, however, ...
Model checking transactional memories (TMs) is difficult because of the unbounded number, length, an...
Model checking is a proven successful technology for verifying hardware. It works, however, on only ...
When a program is compiled and run on a modern architecture, different optimizations may be applied ...
Debugging complex software systems is a major problem. Proving properties of software systems can be...
In the ever-developing world of technology, more and more situations arise where the life of many pe...
Model-checking tools classicaly verify concurrent programs under the traditional Sequential Consiste...
Formal verification of multithreaded software running on multi-core hardware has for long been chall...
Cache coherency is one of the major issues in multicore systems. Formal methods, in particular model...
The work covered in this thesis concerns automatic analysis of correctness of parallel programs runn...
Concurrency libraries can facilitate the development of multi-threaded programs by providing concurr...
With the spread of multi-core systems, the need to write concurrent programs in order to take advant...
Given its pervasiveness, it is unfortunate that writing multi-threaded software is an in-tricate and...
Transactional Memory (TM) provides programmers with a high-level and composable concurrency control ...