Search For:

Displaying 1-7 out of 7 total
A Safety-First Approach to Memory Models
Found in: IEEE Micro
By Abhayendra Singh,Satish Narayanasamy,Daniel Marino,Todd Millstein,Madanlal Musuvathi
Issue Date:May 2013
pp. 96-104
Recent efforts to standardize concurrency semantics for programming languages require programmers to explicitly annotate all memory accesses that can participate in a data race ("unsafe" accesses). This requirement allows the compiler and hardwar...
 
End-to-end sequential consistency
Found in: Proceedings of the 39th Annual International Symposium on Computer Architecture (ISCA '12)
By Abhayendra Singh, Daniel Marino, Madanlal Musuvathi, Satish Narayanasamy, Todd Millstein
Issue Date:June 2012
pp. 524-535
Sequential consistency (SC) is arguably the most intuitive behavior for a shared-memory multithreaded program. It is widely accepted that language-level SC could significantly improve programmability of a multiprocessor system. However, efficiently support...
     
A case for an SC-preserving compiler
Found in: Proceedings of the 32nd ACM SIGPLAN conference on Programming language design and implementation (PLDI '11)
By Abhayendra Singh, Daniel Marino, Madanlal Musuvathi, Satish Narayanasamy, Todd Millstein
Issue Date:June 2011
pp. 123-128
The most intuitive memory consistency model for shared-memory multi-threaded programming is sequential consistency (SC). However, current concurrent programming languages support a relaxed model, as such relaxations are deemed necessary for enabling import...
     
JavaCOP: Declarative pluggable types for java
Found in: ACM Transactions on Programming Languages and Systems (TOPLAS)
By Chris Andreae, Daniel Marino, James Noble, Matthew Esquivel, Shane Markstrum, Todd Millstein
Issue Date:January 2010
pp. 1-37
Pluggable types enable users to enforce multiple type systems in one programming language. We have developed a suite of tools, called the JavaCOP framework, that allows developers to create pluggable type systems for Java. JavaCOP provides a simple declara...
     
LiteRace: effective sampling for lightweight data-race detection
Found in: Proceedings of the 2009 ACM SIGPLAN conference on Programming language design and implementation (PLDI '09)
By Daniel Marino, Madanlal Musuvathi, Satish Narayanasamy
Issue Date:June 2009
pp. 1-22
Data races are one of the most common and subtle causes of pernicious concurrency bugs. Static techniques for preventing data races are overly conservative and do not scale well to large programs. Past research has produced several dynamic data race detect...
     
A generic type-and-effect system
Found in: Proceedings of the 4th international workshop on Types in language design and implementation (TLDI '09)
By Daniel Marino, Todd Millstein
Issue Date:January 2009
pp. 1-2
Type-and-effect systems are a natural approach for statically reasoning about a program's execution. They have been used to track a variety of computational effects, for example memory manipulation, exceptions, and locking. However, each type-and-effect sy...
     
Enforcing and validating user-defined programming disciplines
Found in: Proceedings of the 7th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering (PASTE '07)
By Brian Chin, Daniel Marino, Shane Markstrum, Todd Millstein
Issue Date:June 2007
pp. 85-86
At the University of Maryland, we have been working to improve the reliability and security of software by developing new, effective static analysis tools. These tools scan software for bug patterns or show that the software is free from a particular class...
     
 1