VLDB 2026 Research / reviewers in the wild / expert
John K. Bennett
dblp:b/JKBennett
· DBLP profile ↗
27ranked-venue papers
6as first author
0since 2021 · last 2016
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 11 · 4 first-authorApplied, interdisciplinary, general and emerging computing · 6Software engineering, systems software and programming languages · 4 · 3 first-authorArtificial intelligence and machine learning · 3Human-computer interaction and ubiquitous computing · 3Computer networks · 2Security and privacy · 1Graphics, computer vision, multimedia, augmented reality and games · 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.
| Artificial intelligence
3 papers |
Multi-agent systems · 77% Motion planning and robot control · 23% | |
| Computer architecture, parallel and distributed computing, and storage systems
9 papers |
Memory systems · 50% Parallel and multicore computing · 23% Processor architecture and microarchitecture · 8% |
Topics — the 23 heaviest of 25, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Knowledge, reasoning and agents › Multi-agent systems
consensus |
0.1 | 1 | 2008 | Convergence-Preserving Switching for Topology-Dependent Decentralized Systems · IEEE Trans. Robotics 2008 |
Robotics › Motion planning and robot control › multi-robot control
decentralized control |
0.1 | 1 | 2008 | Convergence-Preserving Switching for Topology-Dependent Decentralized Systems · IEEE Trans. Robotics 2008 |
Knowledge, reasoning and agents › Multi-agent systems › formation control
connectivity maintenance |
0.1 | 1 | 2006 | A Method of Cooperative Control using Occasional non-local Interactions · ICRA 2006 |
Knowledge, reasoning and agents › Multi-agent systems › multi-agent control
cooperative control |
0.1 | 1 | 2006 | A Method of Cooperative Control using Occasional non-local Interactions · ICRA 2006 |
Knowledge, reasoning and agents › Multi-agent systems
distributed control |
0.1 | 1 | 2006 | A Method of Cooperative Control using Occasional non-local Interactions · ICRA 2006 |
Knowledge, reasoning and agents › Multi-agent systems
multi-robot systems |
0.1 | 1 | 2006 | A Method of Cooperative Control using Occasional non-local Interactions · ICRA 2006 |
Memory systems › shared memory
distributed shared memory |
0.1 | 5 | 1998 | Using Multicast and Multithreading to Reduce Communication in Software DSM Systems · HPCA 1998 Techniques for Reducing Consistency-Related Communication in Distributed Shared-Memory Systems · ACM Trans. Comput. Syst. 1995 Implementation and Performance of Munin · SOSP 1991 |
Parallel and multicore computing
parallel programming models |
0.0 | 2 | 1998 | Using Multicast and Multithreading to Reduce Communication in Software DSM Systems · HPCA 1998 Implementation and Performance of Munin · SOSP 1991 |
Memory systems › memory consistency › memory consistency model
release consistency |
0.0 | 2 | 1995 | Techniques for Reducing Consistency-Related Communication in Distributed Shared-Memory Systems · ACM Trans. Comput. Syst. 1995 Implementation and Performance of Munin · SOSP 1991 |
Processor architecture and microarchitecture
multithreading |
0.0 | 1 | 1998 | Using Multicast and Multithreading to Reduce Communication in Software DSM Systems · HPCA 1998 |
Memory systems › shared memory › distributed shared memory
software distributed shared memory |
0.0 | 1 | 1998 | Using Multicast and Multithreading to Reduce Communication in Software DSM Systems · HPCA 1998 |
Memory systems
cache coherence |
0.0 | 3 | 1992 | Munin: Distributed Shared Memory Based on Type-Specific Memory Coherence · PPoPP 1990 Adaptive Software Cache Management for Distributed Shared Memory Architectures · ISCA 1990 Willow: A Scalable Shared Memory Multiprocessor · SC 1992 |
Parallel and multicore computing
speculative computation |
0.0 | 1 | 1996 | Parallel robot control using speculative computation · ICRA 1996 |
Distributed systems
consistency protocols |
0.0 | 1 | 1995 | Techniques for Reducing Consistency-Related Communication in Distributed Shared-Memory Systems · ACM Trans. Comput. Syst. 1995 |
Parallel and multicore computing › multiprocessor system
shared-memory multiprocessor |
0.0 | 1 | 1992 | Willow: A Scalable Shared Memory Multiprocessor · SC 1992 |
Memory systems
shared memory |
0.0 | 1 | 1991 | Implementation and Performance of Munin · SOSP 1991 |
Memory systems › cache coherence
software cache coherence |
0.0 | 1 | 1990 | Adaptive Software Cache Management for Distributed Shared Memory Architectures · ISCA 1990 |
Interconnection networks and networks-on-chip
multicast |
0.0 | 1 | 1998 | Using Multicast and Multithreading to Reduce Communication in Software DSM Systems · HPCA 1998 |
Parallel and multicore computing › parallelization strategies
coarse-grained parallelism |
0.0 | 1 | 1996 | Parallel robot control using speculative computation · ICRA 1996 |
Distributed systems
distributed object systems |
0.0 | 1 | 1987 | The Design and Implementation of Distributed Smalltalk · OOPSLA 1987 |
High-performance computing › cluster computing
network of workstations |
0.0 | 1 | 1995 | Techniques for Reducing Consistency-Related Communication in Distributed Shared-Memory Systems · ACM Trans. Comput. Syst. 1995 |
Runtime systems and virtual machines › garbage collection
distributed garbage collection |
0.0 | 1 | 1987 | The Design and Implementation of Distributed Smalltalk · OOPSLA 1987 |
Runtime systems and virtual machines
garbage collection |
0.0 | 1 | 1987 | The Design and Implementation of Distributed Smalltalk · OOPSLA 1987 |
Methods — techniques the papers use, named apart from their topics
stability analysis · 0.1hysteresis rule · 0.1acute angle switching · 0.1speculative computation · 0.0newton-euler formulation · 0.0application-level multithreading · 0.0adaptive multicast · 0.0performance criteria design · 0.0write-shared protocols · 0.0update-with-timeout · 0.0function shipping · 0.0simulation · 0.0loosely coherent memory · 0.0remote messaging · 0.0object mobility · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2016 | Computer Science Principles: Impacting Student Motivation & Learning Within and Beyond the ClassroomabstractThe Computer Science (CS) Principles framework seeks to broaden student participation and diversity in the field by focusing on the creative and social aspects of computing. As the pilot effort undergoes its early execution phases, this research contributes to the theoretical and practical application of CS Principles. We investigated the impact of CS Principles on student motivation and learning outcomes and sought to determine if the pedagogy created any lasting change on student perceptions of CS as a field of practice. Kara A. Behnke, Brittany Ann Kos, John K. Bennett |
ICER | 3 |
| 2014 | Must be 13 to play: Addressing children participation in networked games
Kara A. Behnke, Meg Leta Ambrose, John K. Bennett |
FDG | 3 |
| 2013 | Minding the gaps: cultural, technical and gender-based barriers to mobile use in oral-language Berber communities in MoroccoabstractThe proliferation of text-based applications in the Mobiles for Development (M4D) domain tends to privilege the conventional wisdom that texting is a ubiquitous skill among mobile phone users. This view obscures many real and present barriers to using SMS and mobile features, most critically where low literate and/or oral language-dependent communities cannot rely on text as a viable communications system. This paper investigates mobile "utility gaps" -- the spaces between high rates of mobile phone ownership and low use of productive features on mobile phones. These gaps preclude the adoption of many text-based development initiatives, which in turn affects the potential impact of such initiatives. Working with low-literate Berber-Muslim women in a predominantly oral-language community in rural southwest Morocco, we have found that an overall lack of functional literacy and numeracy is a major contributor to a mobile utility gap in that community. Non-standard mobile phone interfaces, a complex language environment with both Arabic and Berber dialects and multiple alphabets and gender-specific cultural norms also present significant impediments to using mobile phones as a development strategy in the Berber communities studied. Furthermore, we explore the paradox of social networks where a reliance on others to assist with phone use is often coupled with surveillance and a loss of privacy. These results are potentially relevant to projects involving other indigenous communities in North Africa. Leslie L. Dodson, S. Revi Sterling, John K. Bennett |
ICTD (1) | 3 |
| 2013 | A connective massive open online course for K-12 science, technology, engineering, and mathematics teachers in New Mexico Pueblo schoolsabstractThis note describes preliminary work directed toward developing a teacher-training project that is intended to increase Science, Technology, Engineering, and Mathematics (STEM) proficiency among elementary and high school teachers in Northern New Mexico Pueblo schools. This project builds upon prior work that trained K-8 teachers to use investigative teaching, which in turn had a significant positive impact on the math and science proficiency of Native-American and Hispanic students. The current project seeks to use Massive Open Online Course (MOOC) technology to capture and scale this professional development through the use of video, imagery, and community building in order to integrate Native-American learning processes. The overall objective is to enable Pueblo teachers to more effectively teach STEM subject matter, as measured by an increase in both teacher and student content knowledge scores. If successful, the use of MOOC technology should facilitate rapid expansion of the program across New Mexico and elsewhere. Josephine Kilde, John K. Bennett, Lorenzo Gonzales, S. Revi Sterling |
ICTD (2) | 2 |
| 2013 | The PartoPen in practice: evaluating the impact of digital pen technology on maternal health in KenyaabstractThis paper critically examines the use of digital pen technology at two key points in the healthcare system in Kenya: nursing student training and patient care in public labor wards. The PartoPen system -- a digital pen software designed to enhance the paper labor monitoring tool known as the partograph -- was evaluated with 95 nursing students at the University of Nairobi (UoN), and with 50 nurses in the labor ward at Kenyatta National Hospital (KNH). Students using the PartoPen had significantly higher scores on partograph worksheets than students using a silent PartoPen, especially on challenging and high-risk labor cases and on difficult sections of the partograph. In the maternity ward study, nurses unanimously reported positive improvements in the number of partographs they were able to complete, but these qualitative responses were not supported by the quantitative data. We discuss the results of both studies, and what these results suggest about the potential value of the PartoPen at different levels of the healthcare delivery and training hierarchy. Heather Underwood, S. Revi Sterling, John K. Bennett |
ICTD (1) | 3 |
| 2012 | Considering failure: eight years of ITID researchabstractThis paper examines forty articles published in the journal Information Technologies & International Development between 2003 and 2010 in an effort to identify commonalities among projects that failed to meet some or all of their development objectives. We considered whether the selected papers articulated clear development objectives, and whether baseline data was used to inform project design. We then considered two factors associated with how development objectives are implemented: the development perspective (top-down vs. bottom-up), and the project focus (the technology vs. the community). Our goal was not to find fault with our colleagues or their work, rather to advance the debate about the effectiveness of ICTD initiatives at a particularly important point in the history of the discipline. We conclude that top-down, technology-centric, goal-diffuse approaches to ICTD contribute to unsatisfactory development results. Careful consideration of development objectives, perspective and focus is essential in all phases of an ICTD project, from design to deployment. Honest and comprehensive reporting of failure (and success) helps ICTD researchers and practitioners focus on best practices in meeting critical development needs. Leslie L. Dodson, S. Revi Sterling, John K. Bennett |
ICTD | 3 |
| 2008 | Convergence-Preserving Switching for Topology-Dependent Decentralized SystemsabstractStability analysis of decentralized control mechanisms for networked coordinating systems has generally focused on specific controller implementations, such as nearest-neighbor and other types of proximity graph control laws. This approach often misses the need for the addition of other control structures to improve global characteristics of the network. An example of such a situation is the use of a Gabriel graph, which is essentially a nearest-neighbor rule modified to ensure global connectivity of the network if the agents are pairwise connected through their sensor inputs. We present a method of ensuring provable stability of decentralized switching systems by employing a hysteresis rule that uses a zero-sum consensus algorithm. We demonstrate the application of this result to several special cases, including nearest-neighbor control laws, Gabriel graph rules, diffuse target tracking, and hierarchical heterogeneous systems. Brian Shucker, Todd D. Murphey, John K. Bennett |
IEEE Trans. Robotics | 3 |
| 2007 | Frame shared memory: line-rate networking on commodity hardwareabstractNetwork processors provide an economical programmable platform to handle the high throughput and frame rates of modern and next-generation communication systems. However, these platforms have exchanged general-purpose capabilities for performance. John Giacomoni, John K. Bennett, Antonio Carzaniga, Douglas C. Sicker, Manish Vachharajani, Alexander L. Wolf |
ANCS | 2 |
| 2007 | Advancement through Interactive RadioabstractThis paper describes the rationale, design and implementation of a system for increasing the status and involvement of women in developing communities. AIR (Advancement through Interactive Radio) adds interactivity to community radio, giving community radio listeners, especially women, a voice with which to respond to programming, and to participate in the creation of programming content. We first describe the cost of excluding women from Information and Communication Technologies (ICT) for development, and explore how community radio represents a potential antidote to this exclusion. We draw upon ethnographic data collected through feasibility studies and site visits in Southeast Kenya to support the introduction of a mechanism that enables women to ldquotalk backrdquo to the community radio station, in order to better facilitate participation. Using the principles of Participatory Action Research (PAR), we argue that women will be more likely to benefit from technology-mediated opportunities for development if they themselves produce information that contributes to their advancement, rather than simply consuming information created for their use. Finally, we describe the design and implementation of simple communications device that supports this model. This hand-held device enables women to record voice feedback and news for community radio at the touch of a button. This feedback is then routed asynchronously back to the radio station through a probabilistic, delay-tolerant network, where the feedback can inform subsequent broadcasts and facilitate additional discussion. We conclude with a technical summary of the AIR prototype, which will be deployed in Kenya in Fall 2007. S. Revi Sterling, John O'Brien, John K. Bennett |
ICTD | 3 |
| 2006 | A Method of Cooperative Control using Occasional non-local InteractionsabstractCurrent approaches to distributed control involving many robots generally restrict interactions to pairs of robots within a threshold distance. While this allows for provable stability, there are performance costs associated with the lack of long-distance information. We introduce the acute angle switching algorithm, which allows a small number of long-range interactions in addition to interactions with nearby neighbors, without sacrificing provable stability. We prove several formal properties of the acute angle switching algorithm, including system-wide connectivity. Further, we show simulation results demonstrating the efficacy and robustness of multi-robot systems based on the acute angle switching algorithm Brian Shucker, Todd D. Murphey, John K. Bennett |
ICRA | 3 |
| 2006 | Using Location Dependence to Manage Mobile DataabstractFragmentation, (portions of data located on many separate devices), and versioning, (different versions of the same datum located on different devices), of user data are increasingly prevalent and important problems as users work on a more diverse array of mobile computing devices. A common solution to these problems is to cache data on the current device. This paper describes and evaluates a mechanism for addressing fragmentation and versioning using affinity relationships. Affinity relationships that represent the current data interests of users provide hints as to what data to cache on mobile computing devices. Trace data collected over a 15 month period has been used to inform the design of the affinity mechanism. Trace-based simulation demonstrates the effectiveness of an affinity-directed approach to reduce fragmentation and versioning with low overhead Daniel Crawl, Joseph Dunn, John K. Bennett, Avneesh Bhatnagar, William Evan Speight |
MobiQuitous | 3 |
| 2006 | A Practical Cross-Layer Mechanism For Fairness in 802.11 Networks
Joseph Dunn, Michael Neufeld, Anmol Sheth, Dirk Grunwald, John K. Bennett |
Mob. Networks Appl. | 5 |
| 2004 | A Practical Cross-Layer Mechanism For Fairness in 802.11 NetworksabstractMany companies, organizations and communities are providing wireless hotspots that provide networking access using 802.11b wireless networks. Since wireless networks are more sensitive to variations in bandwidth and environmental interference than wired networks, most networks support a number of transmission rates that have different error and bandwidth properties. Access points can communicate with multiple clients running at different rates, but this leads to unfair bandwidth allocation. If an access point communicates with a mix of clients using both 1 mb/s and 11 mb/s transmission rates, the faster clients are effectively throttled to 1 mb/s as well. This happens because the 802.11 MAC protocol approximate "station fairness", with each station given an equal chance to access the media. We provide a solution to provide "rate proportional fairness", where the 11 mb/s stations receive more bandwidth than the 1 mb/s stations. Unlike previous solutions to this problem, our mechanism is easy to implement, works with common operating systems and requires no change to the MAC protocol or the stations. Joseph Dunn, Michael Neufeld, Anmol Sheth, Dirk Grunwald, John K. Bennett |
BROADNETS | 5 |
| 2003 | Raptor: Integrating Checkpoints and Thread Migration for Cluster ManagementabstractSoftware distributed shared-memory (SDSM) provides the abstraction necessary to run shared-memory applications on cost-effective parallel platforms such as clusters of workstations. However, problems such as cluster component reliability and cluster management, which are not directly related to performance, need to be addressed before SDSM solutions can be widely adopted. This paper presents Raptor, an SDSM cluster management system based on checkpoint/recovery and thread migration. Raptor checkpoints decouple the runtime system and application data from application threads, allowing efficient load balancing, resource allocation, and rollback recovery. There are two important features of the system. First, it reduces checkpoint overhead by only saving application-specific data that cannot be recreated at recovery time. Second, by integrating thread migration capability both at running and recovery, it allows the addition or removal of computing resources from a running application, while adding little or no additional burden on the SDSM application programmer. Hazim Shafi, William Evan Speight, John K. Bennett |
SRDS | 3 |
| 1999 | Realizing the performance potential of the virtual interface architectureabstractThe Virtual Interface (VI) Architecture provides protected userlevel communication with high delivered bandwidth and low permessage latency, particularly for small messages.The VI Architecture attempts to reduce latency by eliminating user/kernel transitions on routine data transfers and by allowing direct use of user memory for network buffering.This results in significantly lower latencies than those achieved by network protocols such as TCP/IP and UDP.In this paper we examine the low-level performance of two VI implementations, one implemented in hardware, the other implemented in device driver software.Using a set of low-level benchmarks, we measure bandwidth, latency, and processor utilization as a function of message size for the GigaNet CLAN and Tandem ServerNet VI implementations.We report that both VI implementations offer significant performance advantage relative to the corresponding UDP implementation on the same hardware.We also investigate the problems associated with delivering this performance to distributed applications running on clustered multiprocessor workstations.Using an existing MPI library implemented using UDP as a baseline, we explore several performance and implementation issues that arise when adapting this library to use VI instead of UDP.Among these issues are memory registration costs, polling vs. blocking, reliability of delivery, and memory-to-memory copying.By eliminating explicit acknowledgements, reducing memory-tomemory copying, and choosing the most appropriate synchronization primitives, we reduced the message latency seen by user applications by an average of 55% across all message sizes.We also identify several areas that offer the potential for further performance enhancement. William Evan Speight, Hazim Abdel-Shafi, John K. Bennett |
International Conference on Supercomputing | 3 |
| 1998 | Using Multicast and Multithreading to Reduce Communication in Software DSM SystemsabstractThis paper examines the performance benefits of employing multicast communication and application-level multithreading in the Brazos software distributed shared memory (DSM) system. Application-level multithreading in Brazos allows programs to transparently take advantage of available local multiprocessing. Brazos uses multicast communication to reduce the number of consistency-related messages, and employs two adaptive mechanisms that reduce the detrimental side effects of using multicast communication. We compare three software DSM systems running on identical hardware: (1) a single-threaded point-to-point system, (2) a multithreaded point-to-point system, and (3) Brazos, which incorporates both multithreading and multicast communication. For the six applications studied, multicast and multithreading improve speedup on eight processors by an average of 38%. William Evan Speight, John K. Bennett |
HPCA | 2 |
| 1996 | The Performance Value of Shared Network Caches in Clustered Multiprocessor WorkstationsabstractThis paper evaluates the benefit of adding a shared cache to the network interface as a means of improving the performance of networked workstations configured as a distributed shared memory multiprocessor. A cache on the network interface offers the potential benefits of retaining evicted processor cache lines, providing implicit prefetching, and increasing intra-cluster sharing. Using simulation, eight parallel scientific applications were used to evaluate the performance impact of a shared network cache. In each case, we examined in detail the means by which processor cache misses were satisfied. For the applications studied, we found that the network cache offers substantial performance benefit when processor caches are too small to hold the application's primary working set, or when network contention limits application performance. The expected benefits of implicit prefetching and increased intra-cluster sharing did not contribute significantly to the performance enhancement of the network cache for most applications. Finally, the advantage afforded by the network cache diminishes as processor cache size increases and network contention decreases. John K. Bennett, Katherine E. Fletcher, William Evan Speight |
ICDCS | 1 |
| 1996 | Fault tolerance versus performance metrics for robot systemsabstractThe incorporation of fault tolerance techniques into robot systems improves the reliability, but also increases the hardware and computational requirements in the overall system. It is not always clear how to evaluate the merit, or 'effectiveness' of different fault tolerance approaches for a given application. We present a new set of performance criteria designed to measure and compare the effectiveness of robot fault tolerance strategies. The measures, which are designed to evaluate fault tolerance/performance/cost tradeoffs, can also be used to evaluate pure performance or pure fault tolerance strategies. We show their usefulness using a variety of proposed fault tolerance approaches in the literature focusing on multiprocessor control architectures. Deirdre L. Hamilton, Ian D. Walker, John K. Bennett |
ICRA | 3 |
| 1996 | Parallel robot control using speculative computationabstractDue to the coupling in the dynamics equations, coarse-grain parallelism of robot control algorithms is particularly difficult. We have developed a new algorithm based on the Newton-Euler dynamics formulation that overcomes the serial nature of these equations, allowing a high level of parallelism. Our controller uses data from a previous control step in current calculations to allow many more tasks to be executed in parallel, thus providing higher control update rates. The use of 'stale' data is an effective solution to the speedup problem, but presents some special difficulties. One stability issue when using 'stale' data that is encountered in previous approaches is discussed here, along with a partial solution to the problem. Deirdre L. Hamilton, Ian D. Walker, John K. Bennett |
ICRA | 3 |
| 1996 | Memory Organization in Multi-Channel Optical Networks: NUMA and COMA RevisitedabstractMulti-channel optical networks, although common in telecommunication applications, have only recently found application in computer systems.Multi-channel optical networks offer the potential for high performance interconnects for both local computer networks and multiprocessor systems.In addition to providing high bandwidth, multichannel optical networks exhibit the capability for scalable broadcast.The absence of scalable broadcast in conventional networks has governed the choice of memory system configuration for many systems, and has in particular favored cache-coherent non-uniform memory access (CC-NUMA) over cache-only memory access (COMA) architecture.Thk paper examines the choice of memory system architecture in the presence of high bandwidth and scalable broadcast.Using simulation, we compare the performance of CC-NUMA and COMA memory architectures in a multi-channel optical network multiprocessor system.Seven well-known parallel benchmarks are used in the study, Our results indicate that COMA consistently and significantly outperforms CC-NUMA in systems that support scalable broadcast, and confirm previous results, that in the absence of broadcast, CC-NUMA outperforms COMA for those applications exhibiting significant sharing. Yan Yang Xiao, John K. Bennett |
International Conference on Supercomputing | 2 |
| 1995 | Techniques for Reducing Consistency-Related Communication in Distributed Shared-Memory SystemsabstractDistributed shared memory (DSM) is an abstraction of shared memory on a distributed-memory machine. Hardware DSM systems support this abstraction at the architecture level; software DSM systems support the abstraction within the runtime system. One of the key problems in building an efficient software DSM system is to reduce the amount of communication needed to keep the distributed memories consistent. In this article we present four techniques for doing so: software release consistency; multiple consistency protocols; write-shared protocols; and an update-with-timeout mechanism. These techniques have been implemented in the Munin DSM system. We compare the performance of seven Munin application programs: first to their performance when implemented using message passing, and then to their performance when running on a conventional software DSM system that does not embody the preceding techniques. On a 16-processor cluster of workstations, Munin's performance is within 5% of message passing for four out of the seven applications. For the other three, performance is within 29 to 33%. Detailed analysis of two of these three applications indicates that the addition of a function-shipping capability would bring their performance to within 7% of the message-passing performance. Compared to a conventional DSM system, Munin achieves performance improvements ranging from a few to several hundred percent, depending on the application. John B. Carter, John K. Bennett, Willy Zwaenepoel |
ACM Trans. Comput. Syst. | 2 |
| 1992 | Willow: A Scalable Shared Memory MultiprocessorabstractThe authors are currently developing Willow, a shared memory multiprocessor whose design provides system capacity and performance capable of supporting over 1000 commercial microprocessors. Recently, they have focused their attention on the design of a 64-processor prototype that tests most of their ideas about scalability. In this paper, they describe the factors that traditionally limited the scalability of shared memory systems. These include enforcing sequential consistency, inefficient synchronization, memory latency and bandwidth limitations, bus and memory contention, the necessity to enforce inclusion on lower-level caches, and limited I/O (input/output) bandwidth. They then describe how the Willow architecture addresses each of these issues. Finally, they present data in order to evaluate the effect of the major architectural innovations in Willow on the performance of several parallel applications.> John K. Bennett, Sandhya Dwarkadas, Jay A. Greenwood, William Evan Speight |
SC | 1 |
| 1991 | Implementation and Performance of MuninabstractMunin is a distributed shared memory (DSM) system that allows shared memory parallel programs to be executed efficiently on distributed memory multiprocessors. Munin is unique among existing DSM systems in its use of multiple consistency protocols and in its use of release consistency. In Munin, shared program variables are annotated with their expected access pattern, and these annotations are then used by the runtime system to choose a consistency protocol best suited to that access pattern. Release consistency allows Munin to mask network latency and reduce the number of messages required to keep memory consistent. Munin's multiprotocol release consistency is implemented in software using a delayed update queue that buffers and merges pending outgoing writes. A sixteen-processor prototype of Munin is currently operational. We evaluate its implementation and describe the execution of two Munin programs that achieve performance within ten percent of message passing implementations of the same programs. Munin achieves this level of performance with only minor annotations to the shared memory programs. John B. Carter, John K. Bennett, Willy Zwaenepoel |
SOSP | 2 |
| 1990 | Adaptive Software Cache Management for Distributed Shared Memory ArchitecturesabstractAn adaptive cache coherence mechanism exploits semantic information about the expected or observed access behavior of particular data objects. We contend that, in distributed shared memory systems, adaptive cache coherence mechanisms will outperform static cache coherence mechanisms. We have examined the sharing and synchronization behavior of a variety of shared memory parallel programs. We have found that the access patterns of a large percentage of shared data objects fall in a small number of categories for which efficient software coherence mechanisms exist. In addition, we have performed a simulation study that provides two examples of how an adaptive caching mechanism can take advantage of semantic information. John K. Bennett, John B. Carter, Willy Zwaenepoel |
ISCA | 1 |
| 1990 | Munin: Distributed Shared Memory Based on Type-Specific Memory CoherenceabstractWe are developing Munin, a system that allows programs written for shared memory multiprocessors to be executed efficiently on distributed memory machines. Munin attempts to overcome the architectural limitations of shared memory machines, while maintaining their advantages in terms of ease of programming. Our system is unique in its use of loosely coherent memory, based on the partial order specified by a shared memory parallel program, and in its use of type-specific memory coherence. Instead of a single memory coherence mechanism for all shared data objects, Munin employs several different mechanisms, each appropriate for a different class of shared data object. These type-specific mechanisms are part of a runtime system that accepts hints from the user or the compiler to determine the coherence mechanism to be used for each object. This paper focuses on the design and use of Munin's memory coherence mechanisms, and compares our approach to previous work in this area. John K. Bennett, John B. Carter, Willy Zwaenepoel |
PPoPP | 1 |
| 1990 | Experience with Distributed SmalltalkabstractAbstract Distributed Smalltalk (DS) is an implementation of Smalltalk that supports the interaction of many Smalltalk users on many machines. It provides communication and interaction among remote Smalltalk users, direct access to remote objects, and a degree of object sharing among users. The distributed aspects of the system are largely user transparent. Many of the major design issues and implementation decisions associated with Distributed Smalltalk have previously been reported. This paper concentrates on the impact of those decisions and describes how DS is used to build distributed applications. Three example applications are described: remote file access, animated distributed objects, and offloading a compute‐intensive task to a non‐Smalltalk host. Based on our experience with DS, we present an evaluation of its design and implementation. John K. Bennett |
Softw. Pract. Exp. | 1 |
| 1987 | The Design and Implementation of Distributed SmalltalkabstractDistributed Smalltalk (DS) is an implementation of Smalltalk that allows objects on different machines to send and respond to messages. It also provides some capability for sharing objects among users. The distributed aspects of the system are largely user transparent and preserve the reactive quality of Smalltalk objects. Distributed Smalltalk is currently operational on a network of Sun workstations. The implementation includes an incremental distributed garbage collector and support for remote debugging, access control, and object mobility. This paper concentrates on the important design issues encountered and some of the more interesting implementation details. Performance measurements of the current implementation are included. John K. Bennett |
OOPSLA | 1 |