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

Leonidas I. Kontothanassis

dblp:03/1036 · DBLP profile ↗
← Back
16ranked-venue papers
10as first author
0since 2021 · last 2005
—ORCID · none

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

Systems, architecture and hardware · 14 · 9 first-authorSoftware engineering, systems software and programming languages · 3 · 1 first-authorApplied, interdisciplinary, general and emerging computing · 1 · 1 first-author

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
14 papers
Memory systems · 71% Parallel and multicore computing · 17% Interconnection networks and networks-on-chip · 8%
Computer networks
1 paper
Content delivery and video streaming · 91% Transport protocols and congestion control · 9%

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

TopicWeightPapersLastEvidence papers
Memory systems › shared memory
distributed shared memory
0.152005
Shared memory computing on clusters with symmetric multiprocessors and system area networks · ACM Trans. Comput. Syst. 2005
The Effect of Network Total Order, Broadcast, and Remote-Write Capability on Network-Based Shared Memory Computing · HPCA 2000
Comparative Evaluation of Fine- and Coarse-Grain Approaches for Software Distributed Shared Memory · HPCA 1999
Memory systems › shared memory › distributed shared memory
software distributed shared memory
0.152005
Shared memory computing on clusters with symmetric multiprocessors and system area networks · ACM Trans. Comput. Syst. 2005
The Effect of Network Total Order, Broadcast, and Remote-Write Capability on Network-Based Shared Memory Computing · HPCA 2000
Comparative Evaluation of Fine- and Coarse-Grain Approaches for Software Distributed Shared Memory · HPCA 1999
Memory systems
cache coherence
0.172005
The Interaction of Parallel Programming Constructs and Coherence Protocols · PPoPP 1997
VM-Based Shared Memory on Low-Latency, Remote-Memory-Access Networks · ISCA 1997
Shared memory computing on clusters with symmetric multiprocessors and system area networks · ACM Trans. Comput. Syst. 2005
Memory systems › cache coherence
cache coherence protocol
0.122005
Shared memory computing on clusters with symmetric multiprocessors and system area networks · ACM Trans. Comput. Syst. 2005
The Interaction of Parallel Programming Constructs and Coherence Protocols · PPoPP 1997
Content delivery and video streaming
content delivery network
0.012004
A transport layer for live streaming in a content delivery network · Proc. IEEE 2004
Content delivery and video streaming
live streaming
0.012004
A transport layer for live streaming in a content delivery network · Proc. IEEE 2004
Content delivery and video streaming › multimedia delivery
streaming media delivery
0.012004
A transport layer for live streaming in a content delivery network · Proc. IEEE 2004
Interconnection networks and networks-on-chip
cluster interconnect
0.022005
The Effect of Network Total Order, Broadcast, and Remote-Write Capability on Network-Based Shared Memory Computing · HPCA 2000
Shared memory computing on clusters with symmetric multiprocessors and system area networks · ACM Trans. Comput. Syst. 2005
Parallel and multicore computing
synchronization
0.031997
Scheduler-Conscious Synchronization · ACM Trans. Comput. Syst. 1997
High Performance Synchronization Algorithms for Multiprogrammed Multiprocessors · PPoPP 1995
Using Scheduler Information to Achieve Optimal Barrier Synchronization Performance · PPoPP 1993
Memory systems › memory consistency › memory consistency model
release consistency
0.021997
VM-Based Shared Memory on Low-Latency, Remote-Memory-Access Networks · ISCA 1997
Lazy Release Consistency for Hardware-Coherent Multiprocessors · SC 1995
Parallel and multicore computing › synchronization
barrier synchronization
0.021997
Scheduler-Conscious Synchronization · ACM Trans. Comput. Syst. 1997
Using Scheduler Information to Achieve Optimal Barrier Synchronization Performance · PPoPP 1993
Memory systems
shared memory
0.031997
Cashmere-2L: Software Coherent Shared Memory on a Clustered Remote-Write Network · SOSP 1997
Using Memory-Mapped Network Interfaces to Improve the Performance of Distributed Shared Memory · HPCA 1996
Software Cache Coherence for Large Scale Multiprocessors · HPCA 1995
Memory systems › cache coherence › coherence granularity
coarse-grain coherence
0.011999
Comparative Evaluation of Fine- and Coarse-Grain Approaches for Software Distributed Shared Memory · HPCA 1999
Memory systems › cache coherence
coherence granularity
0.011999
Comparative Evaluation of Fine- and Coarse-Grain Approaches for Software Distributed Shared Memory · HPCA 1999
Parallel and multicore computing › synchronization
mutual exclusion lock
0.011997
Scheduler-Conscious Synchronization · ACM Trans. Comput. Syst. 1997
Parallel and multicore computing › parallel computing › parallel communication
user-level communication
0.012005
Shared memory computing on clusters with symmetric multiprocessors and system area networks · ACM Trans. Comput. Syst. 2005
Processor architecture and microarchitecture
latency hiding
0.011996
Hiding Communication Latency and Coherence Overhead in Software DSMs · ASPLOS 1996
Interconnection networks and networks-on-chip › network interface
memory-mapped network interface
0.011996
Using Memory-Mapped Network Interfaces to Improve the Performance of Distributed Shared Memory · HPCA 1996
Transport protocols and congestion control
transport layer
0.012004
A transport layer for live streaming in a content delivery network · Proc. IEEE 2004
Memory systems › memory consistency › memory consistency model › release consistency
lazy release consistency
0.011995
Lazy Release Consistency for Hardware-Coherent Multiprocessors · SC 1995
Memory systems › cache coherence
software cache coherence
0.011995
Software Cache Coherence for Large Scale Multiprocessors · HPCA 1995
Memory systems
cache
0.011994
Cache performance in vector supercomputers · SC 1994
Memory systems › cache
cache behavior
0.011994
Cache performance in vector supercomputers · SC 1994
Parallel and multicore computing › multiprocessor system
shared-memory multiprocessor
0.011999
Comparative Evaluation of Fine- and Coarse-Grain Approaches for Software Distributed Shared Memory · HPCA 1999
Operating systems › resource management › process management
CPU scheduling
0.011997
Scheduler-Conscious Synchronization · ACM Trans. Comput. Syst. 1997
Operating systems › resource management › process management
multiprogramming
0.011997
Scheduler-Conscious Synchronization · ACM Trans. Comput. Syst. 1997
High-performance computing
cluster computing
0.011997
Cashmere-2L: Software Coherent Shared Memory on a Clustered Remote-Write Network · SOSP 1997
Parallel and multicore computing › parallel programming models
message passing
0.011996
Using Memory-Mapped Network Interfaces to Improve the Performance of Distributed Shared Memory · HPCA 1996
Interconnection networks and networks-on-chip › network interface
programmable network interface
0.011996
Hiding Communication Latency and Coherence Overhead in Software DSMs · ASPLOS 1996
Processor architecture and microarchitecture › multiprocessor architecture
cache-coherent multiprocessor
0.011995
Lazy Release Consistency for Hardware-Coherent Multiprocessors · SC 1995

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

performance measurement · 0.1simulation · 0.1execution-driven simulation · 0.0protocol variant evaluation · 0.0emulation · 0.0virtual memory coherence · 0.0instrumentation · 0.0spin locks · 0.0reduction · 0.0performance evaluation · 0.0barriers · 0.0multiprogramming-aware scheduling · 0.0
YearPublicationVenuePosition
2005 Shared memory computing on clusters with symmetric multiprocessors and system area networks
abstract
Cashmere is a software distributed shared memory (S-DSM) system designed for clusters of server-class machines. It is distinguished from most other S-DSM projects by (1) the effective use of fast user-level messaging, as provided by modern system-area networks, and (2) a “two-level” protocol structure that exploits hardware coherence within multiprocessor nodes. Fast user-level messages change the tradeoffs in coherence protocol design; they allow Cashmere to employ a relatively simple directory-based coherence protocol. Exploiting hardware coherence within SMP nodes improves overall performance when care is taken to avoid interference with inter-node software coherence.We have implemented Cashmere on a Compaq AlphaServer/Memory Channel cluster, an architecture that provides fast user-level messages. Experiments indicate that a one-level, version of the Cashmere protocol provides performance comparable to, or slightly better than, that of TreadMarks' lazy release consistency. Comparisons to Compaq's Shasta protocol also suggest that while fast user-level messages make finer-grain software DSMs competitive, VM-based systems continue to outperform software-based access control for applications without extensive fine-grain sharing.Within the family of Cashmere protocols, we find that leveraging intranode hardware coherence provides a 37% performance advantage over a more straightforward one-level implementation. Moreover, contrary to our original expectations, noncoherent hardware support for remote memory writes, total message ordering, and broadcast, provide comparatively little in the way of additional benefits over just fast messaging for our application suite.
Leonidas I. Kontothanassis, Robert Stets, Galen C. Hunt, Umit Rencuzogullari, Gautam Altekar, Sandhya Dwarkadas, Michael L. Scott
ACM Trans. Comput. Syst.1
2004 A transport layer for live streaming in a content delivery network
abstract
Streaming media on the Internet has experienced rapid growth over the last few years and will continue to increase in importance as broadband technologies and authoring tools continue to improve. As the Internet becomes an increasingly popular alternative to traditional communications media, Internet streaming will become a significant component of many content providers' communications strategies. Internet streaming, however, poses significant challenges for content providers, since it has significant distribution problems. Scalability, quality, reliability, and cost are all issues that have to be addressed in a successful streaming media offering. Streaming content delivery networks (streaming CDNs) attempt to provide solutions to the bottlenecks encountered by streaming applications on the Internet. However, only a small number of them has been deployed, and little is known about the internal organization of these systems. In this paper, we discuss the design choices made during the evolution of Akamai's CDN for streaming media. In particular, we look at the design choices made to ensure the network's scalability, quality of delivered content, and reliability while keeping costs low. Performance studies conducted on the evolving system indicate that our design scores highly on all of the above categories.
Leonidas I. Kontothanassis, Ramesh K. Sitaraman, Joel Wein, Duke Hong, Robert D. Kleinberg, Brian Mancuso, David Shaw, Daniel Stodolsky
Proc. IEEE1
2000 The Effect of Network Total Order, Broadcast, and Remote-Write Capability on Network-Based Shared Memory Computing
abstract
Emerging system-area networks provide a variety of features that can dramatically reduce network communication overhead. In this paper, we evaluate the impact of such features on the implementation of Software Distributed Shared Memory (SDSM), and on the Cashmere system in particular. Cashmere has been implemented on the Compaq Memory Channel network, which supports low-latency messages, protected remote memory writes, in-expensive broadcast, and total ordering of network packets. Our evaluation is based on several Cashmere protocol variants, ranging from a protocol that fully leverages the Memory Channel's special features to one that uses the network only for fast messaging. We find that the special features improve performance by 18-44% for three of our applications, but less than 12% for our other seven applications. We also find that home node migration, an optimization available only in the message-based protocol, can improve performance by as much as 67%. These results suggest that for systems of modest size, low latency is much more important for SDSM performance than are remote writes, broadcast, or total ordering. At the same time, results on an emulated 32-node system indicate that broadcast based on remote writes of widely-shared data may improve performance by up to 51% for some applications. If hardware broadcast or multicast facilities can be made to scale, they can be beneficial in future system-area networks.
Robert Stets, Sandhya Dwarkadas, Leonidas I. Kontothanassis, Umit Rencuzogullari, Michael L. Scott
HPCA3
1999 Comparative Evaluation of Fine- and Coarse-Grain Approaches for Software Distributed Shared Memory
abstract
Symmetric multiprocessors (SMPs) connected with low-latency networks provide attractive building blocks for software distributed shared memory systems. Two distinct approaches have been used: the fine-grain approach that instruments application loads and stores to support a small coherence granularity, and the coarse-grain approach based on virtual memory hardware that provides coherence at a page granularity. Fine-grain systems offer a simple migration path for applications developed on hardware multiprocessors by supporting coherence protocols similar to those implemented in hardware. On the other hand, coarse-grain systems can potentially provide higher performance through more optimized protocols and larger transfer granularities, while avoiding instrumentation overheads. Numerous studies have examined each approach individually, but major differences in experimental platforms and applications make comparison of the approaches difficult. This paper presents a detailed comparison of two mature systems, Shasta and Cashmere, representing the fine- and coarse-grain approaches, respectively. Both systems are tuned to run on the same commercially available, state-of-the-art cluster of AlphaServer SMPs connected via a Memory Channel network. As expected, our results show that Shasta provides robust performance for applications tuned for hardware multiprocessors, and can better tolerate fine-grain synchronization. In contrast, Cashmere is highly sensitive to fine-grain synchronization, but provides a performance edge for applications with coarse-grain behavior. Interestingly, we found that the performance gap between the systems can often be bridged by program modifications that address coherence and synchronization granularity. In addition, our study reveals some unexpected results related to the interaction of current compiler technology with application instrumentation, and the ability of SMP-aware protocols to avoid certain performance disadvantages of coarse-grain approaches.
Sandhya Dwarkadas, Kourosh Gharachorloo, Leonidas I. Kontothanassis, Daniel J. Scales, Michael L. Scott, Robert Stets
HPCA3
1997 VM-Based Shared Memory on Low-Latency, Remote-Memory-Access Networks
abstract
Recent technological advances have produced network interfaces that provide users with very low-latency access to the memory of remote machines. We examine the impact of such networks on the implementation and performance of software DSM. Specifically, we compare two DSM systems---Cashmere and TreadMarks---on a 32-processor DEC Alpha cluster connected by a Memory Channel network.Both Cashmere and TreadMarks use virtual memory to maintain coherence on pages, and both use lazy, multi-writer release consistency. The systems differ dramatically, however, in the mechanisms used to track sharing information and to collect and merge concurrent updates to a page, with the result that Cashmere communicates much more frequently, and at a much finer grain.Our principal conclusion is that low-latency networks make DSM based on fine-grain communication competitive with more coarse-grain approaches, but that further hardware improvements will be needed before such systems can provide consistently superior performance. In our experiments, Cashmere scales slightly better than TreadMarks for applications with false sharing. At the same time, it is severely constrained by limitations of the current Memory Channel hardware. In general, performance is better for TreadMarks.
Leonidas I. Kontothanassis, Galen C. Hunt, Robert Stets, Nikos Hardavellas, Michal Cierniak, Srinivasan Parthasarathy 0001, Wagner Meira Jr., Sandhya Dwarkadas, Michael L. Scott
ISCA1
1997 The Interaction of Parallel Programming Constructs and Coherence Protocols
abstract
Some of the most common parallel programming idioms include locks, barriers, and reduction operations. The interaction of these programming idioms with the multiprocessor's coherence protocol has a significant impact on performance. In addition, the advent of machines that support multiple coherence protocols prompts the question of how to best implement such parallel constructs, i.e. what combination of implementation and coherence protocol yields the best performance. In this paper we study the running time and communication behavior of (1) centralized (ticket) and MCS spin locks, (2) centralized, dissemination, and tree-based barriers, and (3) parallel and sequential reductions, under pure and competitive update coherence protocols; results for write-invalidate protocol are presented mostly for comparison purposes. Our experiments indicate that parallel programming techniques that are well-established for write invalidate protocols, such as MCS locks and parallel reductions, are often inappropriate for update-based protocols. In contrast, techniques such as dissemination and tree barriers achieve superior performance under update-based protocols. Our results also show that the implementation of parallel programming idioms must take the coherence protocol into account, since update-based protocols often lead to different design decisions than write invalidate protocols. Our main conclusion is that protocol-conscious implementation of parallel programming structures can significantly improve application performance; for multiprocessors that can support more than one coherence protocol both the protocol and implementation should betaken into account when exploiting parallel constructs.
Ricardo Bianchini, Enrique V. Carrera, Leonidas I. Kontothanassis
PPoPP3
1997 Cashmere-2L: Software Coherent Shared Memory on a Clustered Remote-Write Network
abstract
Low-latency remote-write networks, such as DEC's Memory Channel, provide the possibility of transparent, inexpensive, huge-scale shared-memory parallel computing on clusters of shared memory multiprocessors (SMPs).The challenge is to take advantage of hardwaresharedmemoryfor sharing within an SMI: and to ensure that software overheadis incurredonly when actively sharing data across SMPs in the cluster.In this paper, we describe a 'Ywolevel" software coherent shared memory system-Cashmere-2Lthat meets this challenge.CashmereSL uses hardware to share memory within a node, while exploiting the Memory Channel's remote-write capabilities to implement "moderately lazy" release consistency with multiple concurrent writers, directories, home nodes, and page-size coherence blocks across nodes.Cashmere-2L employs a novel coherence protocol that allows a high level of asynchrony by eliminating global directory locks and the needfor TLB shootdown.Remote interrupts are minimized by exploiting the remote-write capabilities of the Memory Channel network Cashmere-2L currently runs on an &node, 32-processor DEC AlphaServersystem.Speedups rangefrom 8 to 31 on 32processors for our benchmark suite, depending on the application's characteristics.We quanhfi the importance of ourprotocol optimizations by comparing perjormance to that of several alternative protocols that do not share memory in hardware within an SMP, and require more synchronization.In comparison to a one-level protocol that does not share memory in hardware within an SMP Cashmere-2L improves performance by up to 46%.
Robert Stets, Sandhya Dwarkadas, Nikos Hardavellas, Galen C. Hunt, Leonidas I. Kontothanassis, Srinivasan Parthasarathy 0001, Michael L. Scott
SOSP5
1997 Scheduler-Conscious Synchronization
abstract
Efficient synchronization is important for achieving good performance in parallel programs, especially on large-scale multiprocessors. Most synchronization algorithms have been designed to run on a dedicated machine, with one application process per processor, and can suffer serious performance degradation in the presence of multiprogramming. Problems arise when running processes block or, worse, busy-wait for action on the part of a process that the scheduler has chosen not to run. We show that these problems are particularly severe for scalable synchronization algorithms based on distributed data structures. We then describe and evaluate a set of algorithms that perform well in the presence of multiprogramming while maintaining good performance on dedicated machines. We consider both large and small machines, with a particular focus on scalability, and examine mutual-exclusion locks, reader-writer locks, and barriers. Our algorithms vary in the degree of support required from the kernel scheduler. We find that while it is possible to avoid pathological performance problems using previously proposed kernel mechanisms, a modest additional widening of the kernel/user interface can make scheduler-conscious synchronization algorithms significantly simpler and faster, with performance on dedicated machines comparable to that of scheduler-oblivious algorithms.
Leonidas I. Kontothanassis, Robert W. Wisniewski, Michael L. Scott
ACM Trans. Comput. Syst.1
1996 Hiding Communication Latency and Coherence Overhead in Software DSMs
abstract
In this paper we propose the use of a PCI-based programmable protocol controller for hiding communication and coherence overheads in software DSMs. Our protocol controller provides three different types of overhead tolerance: a) moving basic communication and coherence tasks away from computation processors; b) prefetching of diffs; and c) generating and applying diffs with hardware assistance. We evaluate the isolated and combined impact of these features on the performance of TreadMarks. We also compare performance against two versions of the Shrimp-based AURC protocol. Using detailed execution-driven simulations of a 16-node network of workstations, we show that the greatest performance benefits provided by our protocol controller come from our hardware-supported diffs. Reducing the burden of communication and coherence transactions on the computation processor is also beneficial but to a smaller extent. Prefetching is not always profitable. Our results show that our protocol controller can improve running time performance by up to 50% for TreadMarks, which means that it can double the TreadMarks speedups. The overlapping implementation of TreadMarks performs as well or better than AURC for 5 of our 6 applications. We conclude that the simple hardware support we propose allows for the implementation of high-performance software DSMs at low cost. Based on this conclusion, we are building the NCP2 parallel system at COPPE/UFRJ.
Ricardo Bianchini, Leonidas I. Kontothanassis, Raquel Pinto, M. De Maria, M. Abud, Claudio Luis de Amorim
ASPLOS2
1996 Using Memory-Mapped Network Interfaces to Improve the Performance of Distributed Shared Memory
abstract
Shared memory is widely believed to provide an easier programming model than message passing for expressing parallel algorithms. Distributed Shared Memory (DSM) systems provide the illusion of shared memory on top of standard message passing hardware at very low implementation cost, but provide acceptable performance for only a limited class of applications. We argue that the principal sources of overhead overhead in DSM systems can be dramatically reduced with modest amounts of hardware support (substantially less than is required for hardware cache coherence). Specifically, we present and evaluate a family of protocols designed to exploit hardware support for a global, but non-coherent, physical address space. We consider systems both with and without remote cache fills, fine-grain access faults, "doubled" writes to local and remote memory, and merging write buffers. We also consider varying levels of latency and bandwidth. We evaluate our protocols using execution driven simulation, comparing them to each other and to a state-of-the-art protocol for traditional message-based networks. For the programs in our application suite, protocols taking advantage of the global address space improve performance by a minimum of 50% and sometimes by as much as an order of magnitude.
Leonidas I. Kontothanassis, Michael L. Scott
HPCA1
1995 Software Cache Coherence for Large Scale Multiprocessors
abstract
Shared memory is an appealing abstraction for parallel programming. It must be implemented with caches in order to perform well, however and caches require a coherence mechanism to ensure that processors reference current data. Hardware coherence mechanisms for large-scale machines are complex and costly, but existing software mechanisms for message-passing machines have not provided a performance-competitive solution. We claim that an intermediate hardware option-memory-mapped network interfaces that support a global physical address space-can provide most of the performance benefits of hardware cache coherence. We present a software coherence protocol that runs on this class of machines and greatly narrows the performance gap between hardware and software coherence. We compare the performance of the protocol to that of existing software and hardware alternatives and evaluate the tradeoffs among various cache-write policies. We also observe that simple program changes can greatly improve performance. For the programs in our test suite and with the changes in place, software coherence is often faster and never more than 55% slower than hardware coherence.>
Leonidas I. Kontothanassis, Michael L. Scott
HPCA1
1995 High Performance Synchronization Algorithms for Multiprogrammed Multiprocessors
abstract
Scalable busy-wait synchronization algorithms are essential for achieving good parallel program performance on large scale multiprocessors. Such algorithms include mutual exclusion locks, reader-writer locks, and barrier synchronization. Unfortunately, scalable synchronization algorithms are particularly sensitive to the effects of multiprogramming: their performance degrades sharply when processors are shared among different applications, or even among processes of the same application. In this paper we describe the design and evaluation of scalable scheduler-conscious mutual exclusion locks, reader-writer locks, and barriers, and show that by sharing information across the kernel/application interface we can improve the performance of scheduler-oblivious implementations by more than an order of magnitude.
Robert W. Wisniewski, Leonidas I. Kontothanassis, Michael L. Scott
PPoPP2
1995 Lazy Release Consistency for Hardware-Coherent Multiprocessors
abstract
Release consistency is a widely accepted memory model for distributed shared memory systems. Eager release consistency represents the state of the art in release consistent protocols for hardware-coherent multiprocessors, while lazy release consistency has been shown to provide better performance for software distributed shared memory (DSM). Several of the optimizations performed by lazy protocols have the potential to improve the performance of hardware-coherent multiprocessors as well, but their complexity has precluded a hardware implementation. With the advent of programmable protocol processors it may become possible to use them after all. We present and evaluate a lazy release-consistent protocol suitable for machines with dedicated protocol processors. This protocol admits multiple concurrent writers, sends write notices concurrently with computation, and delays invalidations until acquire operations. We also consider a lazier protocol that delays sending write notices until release operations. Our results indicate that the first protocol outperforms eager release consistency by as much as 20% across a variety of applications. The lazier protocol, on the other hand, is unable to recoup its high synchronization overhead. This represents a qualitative shift from the DSM world, where lazier protocols always yield performance improvements. Based on our results, we conclude that machines with flexible hardware support for coherence should use protocols based on lazy release consistency, but in a less ''aggressively lazy'' form than is appropriate for DSM.
Leonidas I. Kontothanassis, Michael L. Scott, Ricardo Bianchini
SC1
1995 High Performance Software Coherence for Current and Future Architectures
abstract
Shared memory provides an attractive and intuitive programming model for large-scale parallel computing, but requires a coherence mechanism to allow caching for performance while ensuring that processors do not use stale data in their computation. Implementation options range from distributed shared memory emulations on networks of workstations to tightly coupled fully cache-coherent distributed shared memory multiprocessors. Previous work indicates that performance varies dramatically from one end of this spectrum to the other. Hardware cache coherence is fast, but also costly and time-consuming to design and implement, while DSM systems provide acceptable performance on only a limit class of applications. We claim that an intermediate hardware option-memory-mapped network interfaces that support a global physical address space, without cache coherence-can provide most of the performance benefits of fully cache-coherent hardware, at a fraction of the cost. To support this claim we present a software coherence protocol that runs on this class of machines, and use simulation to conduct a performance study. We look at both programming and architectural issues in the context of software and hardware coherence protocols. Our results suggest that software coherence on NCC-NUMA machines in a more cost-effective approach to large-scale shared-memory multiprocessing than either pure distributed shared memory or hardware cache coherence.
Leonidas I. Kontothanassis, Michael L. Scott
J. Parallel Distributed Comput.1
1994 Cache performance in vector supercomputers
abstract
Traditional supercomputers use a flat multi-bank SRAM memory organization to supply high bandwidth at low latency. Most other computers use a hierarchical organization with a small SRAM cache and a slower, cheaper DRAM for the main memory. Such systems rely heavily on data locality for achieving optimum performance. This paper evaluates cache-based memory systems for vector supercomputers. We develop a simulation model for a cache-based version of the Cray Research C90 and use the NAS parallel benchmarks to provide a large-scale workload. We show that while caches reduce memory traffic and improve the performance of plain DRAM memory, they still lag behind cacheless SRAM. We identify the performance bottlenecks in DRAM-based memory systems and quantify their contribution to program performance degradation. We find the data fetch strategy to be a significant parameter affecting performance, we evaluate the performance of several fetch policies, and we show that small fetch sizes improve performance by maximizing the use of available memory bandwidth.>
Leonidas I. Kontothanassis, Rabin A. Sugumar, Greg Faanes, James E. Smith 0001, Michael L. Scott
SC1
1993 Using Scheduler Information to Achieve Optimal Barrier Synchronization Performance
abstract
Parallel programs frequently use barriers to synchronize successive steps in an algorithm. In the presence of multiprogramming the choice of spinning versus blocking barriers can have a significant impact on performance. We demonstrate how competitive spinning techniques previously designed for locks can be extended to barriers, and we evaluate their performance. We design an additional competitive spinning technique that adapts more quickly in a dynamic environment. We then propose and evaluate a new method that obtains better peformance than previous techniques by using scheduler information to decide between spinning and blocking. The scheduler information technique makes optimal choices incurring little overhead.
Leonidas I. Kontothanassis, Robert W. Wisniewski
PPoPP1