Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Chaiyasit Manovit

dblp:60/4669 · DBLP profile ↗
← Back
4ranked-venue papers
3as first author
0since 2021 · last 2006
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 4 · 3 first-authorSoftware engineering, systems software and programming languages · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
2 papers
Memory systems · 54% Electronic design automation · 23% Parallel and multicore computing · 16%
Software engineering, system software, and programming languages
1 paper
Program verification · 100%

Topics — the 5 heaviest of 5, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Memory systems › memory consistency
memory consistency model
0.122006
Completely verifying memory consistency of test program executions · HPCA 2006
TSOtool: A Program for Verifying Memory Systems Using the Memory Consistency Model · ISCA 2004
Program verification › hardware verification
memory consistency model verification
0.112006
Completely verifying memory consistency of test program executions · HPCA 2006
Electronic design automation › hardware verification and test
hardware verification
0.012004
TSOtool: A Program for Verifying Memory Systems Using the Memory Consistency Model · ISCA 2004
Parallel and multicore computing › multiprocessor system
shared-memory multiprocessor
0.022006
Completely verifying memory consistency of test program executions · HPCA 2006
TSOtool: A Program for Verifying Memory Systems Using the Memory Consistency Model · ISCA 2004
Hardware reliability and fault tolerance › memory fault tolerance
memory error detection
0.012004
TSOtool: A Program for Verifying Memory Systems Using the Memory Consistency Model · ISCA 2004

Methods — techniques the papers use, named apart from their topics

verification algorithm · 0.1pseudorandom testing · 0.1pseudo-random testing · 0.1pseudo-random program generation · 0.0polynomial time verification algorithm · 0.0
YearPublicationVenuePosition
2006 Testing implementations of transactional memory
abstract
Transactional memory is an attractive design concept for scalable multiprocessors because it offers efficient lock-free synchronization and greatly simplifies parallel software. Given the subtle issues involved with concurrency and atomicity, however, it is important that transactional memory systems be carefully designed and aggressively tested to ensure their correctness. In this paper, we propose an axiomatic framework to model the formal specification of a realistic transactional memory system which may contain a mix of transactional and non-transactional operations. Using this framework and extensions to analysis algorithms originally developed for checking traditional memory consistency, we show that the widely practiced pseudo-random testing methodology can be effectively applied to transactional memory systems. Our testing methodology was successful in finding previously unknown bugs in the implementation of TCC, a transactional memory system. We study two flavors of the underlying analysis algorithm, one incomplete and the other complete, and show that the complete algorithm while being theoretically intractable is very efficient in practice.
Chaiyasit Manovit, Sudheendra Hangal, Hassan Chafi, Austen McDonald, Christoforos E. Kozyrakis, Kunle Olukotun
PACT1
2006 Completely verifying memory consistency of test program executions
abstract
An important means of validating the design of commercial-grade shared memory multiprocessors is to run a large number of pseudo-random test programs on them. However, when intentional data races are placed in a test program, there may be many correct results according to the memory consistency model supported by the system. For popular memory models like SC and TSO, the problem of verifying correctness of an execution is known to be NP-complete. As a result, analysis techniques implemented in the past have been incomplete: violations of the memory model are flagged if provable, otherwise the result is inconclusive and it is assumed optimistically that the machine's results are correct. In this paper, we describe for the first time a practical, new algorithm which can solve this problem with certainty, thus ensuring that incorrect behavior of a large, complex multiprocessor cannot escape. We present results of our analysis algorithm on test programs run on a newly designed multiprocessor system built by Sun Microsystems. We show that our algorithm performs very well, typically analyzing a program with 512 K memory operations distributed across 60 processors within a few minutes. Our algorithm runs in less than 2.6 times the time taken by an incomplete baseline algorithm which may miss errors. Our approach greatly increases the confidence in the correctness of the results generated by the multiprocessor, and allows us to potentially uncover more bugs in the design than was previously possible.
Chaiyasit Manovit, Sudheendra Hangal
HPCA1
2005 Efficient algorithms for verifying memory consistency
abstract
One approach in verifying the correctness of a multiprocessor system is to show that its execution results comply with the memory consistency model it is meant to implement. It has been shown in prior work, however, that accurately verifying such compliance even of a single execution result is an NP-complete problem, for an unlimited number of processors. In this paper, we present a suite of post-mortem algorithms that perform the compliance check in an efficient, although not exhaustive, manner. Our algorithms employ the concept of vector clocks together with a heuristic made from a variation of the problem in P class. An implementation of these algorithms has been successful in efficiently detecting several bugs during the course of validating the design of commercial microprocessors and systems.Although our algorithms are presented with the Total Store Order (TSO) memory model, the ideas can also be applied to other models ranging from Sequential Consistency (SC) to a more relaxed one such as Relaxed Memory Order (RMO).
Chaiyasit Manovit, Sudheendra Hangal
SPAA1
2004 TSOtool: A Program for Verifying Memory Systems Using the Memory Consistency Model
abstract
In this paper, we describe TSOtool, a program to check the behavior of the memory subsystem in a shared memory multiprocessor. TSOtool runs pseudo-randomly generated programs with data races on a system compliant with the total store order (TSO) memory consistency model; it then checks the results of the program against the formal TSO specification. Such analysis can expose subtle memory errors like data corruption, atomicity violation and illegal instruction ordering. While verifying TSO compliance completely is an NP-complete problem, we describe a new polynomial time algorithm which is incorporated in TSOtool. In spite of being incomplete, it has been successful in detecting several bugs in the design of commercial microprocessors and systems, during both pre-silicon and post-silicon phases of validation.
Sudheendra Hangal, Durgam Vahia, Chaiyasit Manovit, Juin-Yeu Joseph Lu, Sridhar Narayanan
ISCA3