EDBT 2026 Demo / reviewers in the wild / expert
Ramakrishnan Rajamony
dblp:82/438 · also Ram Rajamony
· DBLP profile ↗
15ranked-venue papers
2as first author
0since 2021 · last 2015
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 12 · 2 first-authorSoftware engineering, systems software and programming languages · 5 · 1 first-authorComputer networks · 1Applied, interdisciplinary, general and emerging computing · 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
10 papers |
Memory systems · 73% Parallel and multicore computing · 6% High-performance computing · 6% | |
| Computer networks
1 paper |
Cellular and mobile networks · 100% |
Topics — the 30 heaviest of 36, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Memory systems
cache design |
0.2 | 2 | 2010 | Design exploration of hybrid caches with disparate memory technologies · ACM Trans. Archit. Code Optim. 2010 Hybrid cache architecture with disparate memory technologies · ISCA 2009 |
Memory systems › cache › cache technology
hybrid cache |
0.2 | 2 | 2010 | Design exploration of hybrid caches with disparate memory technologies · ACM Trans. Archit. Code Optim. 2010 Hybrid cache architecture with disparate memory technologies · ISCA 2009 |
Memory systems › memory hierarchy
cache hierarchy |
0.2 | 2 | 2010 | Design exploration of hybrid caches with disparate memory technologies · ACM Trans. Archit. Code Optim. 2010 Adaptive Mechanisms and Policies for Managing Cache Hierarchies in Chip Multiprocessors · ISCA 2005 |
Memory systems › memory hierarchy › cache hierarchy
3d stacked cache |
0.1 | 1 | 2010 | Design exploration of hybrid caches with disparate memory technologies · ACM Trans. Archit. Code Optim. 2010 |
Memory systems › non-volatile memory
non-volatile memory cache |
0.1 | 1 | 2010 | Design exploration of hybrid caches with disparate memory technologies · ACM Trans. Archit. Code Optim. 2010 |
Memory systems › shared memory
distributed shared memory |
0.1 | 4 | 1999 | Combining compile-time and run-time support for efficient software distributed shared memory · Proc. IEEE 1999 Compiler and Software Distributed Shared Memory Support for Irregular Applications · PPoPP 1997 A Comparison of Entry Consistency and Lazy Release Consistency Implementations · HPCA 1996 |
Memory systems › cache management
chip multiprocessor cache management |
0.1 | 1 | 2005 | Adaptive Mechanisms and Policies for Managing Cache Hierarchies in Chip Multiprocessors · ISCA 2005 |
Integrated circuit design
interconnect |
0.1 | 1 | 2005 | On the Feasibility of Optical Circuit Switching for High Performance Computing Systems · SC 2005 |
Interconnection networks and networks-on-chip › high-speed networks
supercomputer interconnect |
0.1 | 1 | 2005 | On the Feasibility of Optical Circuit Switching for High Performance Computing Systems · SC 2005 |
High-performance computing › supercomputing
supercomputing systems |
0.1 | 1 | 2005 | On the Feasibility of Optical Circuit Switching for High Performance Computing Systems · SC 2005 |
Memory systems › shared memory › distributed shared memory
software distributed shared memory |
0.0 | 2 | 1999 | Combining compile-time and run-time support for efficient software distributed shared memory · Proc. IEEE 1999 Compiler and Software Distributed Shared Memory Support for Irregular Applications · PPoPP 1997 |
Cellular and mobile networks › mobility management › network mobility
TCP connection handoff |
0.0 | 1 | 2002 | Half-Pipe Anchoring: An Efficient Technique for Multiple Connection Handoff · ICNP 2002 |
Energy-efficient computing › power management › memory power management
cache energy reduction |
0.0 | 1 | 2010 | Design exploration of hybrid caches with disparate memory technologies · ACM Trans. Archit. Code Optim. 2010 |
Energy-efficient computing
power management |
0.0 | 1 | 2010 | Design exploration of hybrid caches with disparate memory technologies · ACM Trans. Archit. Code Optim. 2010 |
Memory systems › non-volatile memory
magnetic random access memory |
0.0 | 1 | 2009 | Hybrid cache architecture with disparate memory technologies · ISCA 2009 |
Memory systems
non-volatile memory |
0.0 | 1 | 2009 | Hybrid cache architecture with disparate memory technologies · ISCA 2009 |
Memory systems
cache coherence |
0.0 | 2 | 1996 | A Comparison of Entry Consistency and Lazy Release Consistency Implementations · HPCA 1996 Software Versus Hardware Shared-Memory Implementation: A Case Study · ISCA 1994 |
Parallel and multicore computing › parallel computing › parallel program analysis
dynamic dependence analysis |
0.0 | 1 | 1997 | Performance Debugging Shared Memory Parallel Programs Using Run-Time Dependence Analysis · SIGMETRICS 1997 |
Parallel and multicore computing › parallel algorithms
irregular algorithms |
0.0 | 1 | 1997 | Compiler and Software Distributed Shared Memory Support for Irregular Applications · PPoPP 1997 |
Parallel and multicore computing › parallel computing › parallel applications
irregular applications |
0.0 | 1 | 1997 | Compiler and Software Distributed Shared Memory Support for Irregular Applications · PPoPP 1997 |
Performance modeling and evaluation › performance diagnosis
performance debugging |
0.0 | 1 | 1997 | Performance Debugging Shared Memory Parallel Programs Using Run-Time Dependence Analysis · SIGMETRICS 1997 |
Parallel and multicore computing › synchronization
synchronization optimization |
0.0 | 1 | 1997 | Performance Debugging Shared Memory Parallel Programs Using Run-Time Dependence Analysis · SIGMETRICS 1997 |
Processor architecture and microarchitecture
chip multiprocessor |
0.0 | 1 | 2005 | Adaptive Mechanisms and Policies for Managing Cache Hierarchies in Chip Multiprocessors · ISCA 2005 |
High-performance computing
collective communication |
0.0 | 1 | 2005 | On the Feasibility of Optical Circuit Switching for High Performance Computing Systems · SC 2005 |
Memory systems › memory consistency
memory consistency model |
0.0 | 1 | 1996 | A Comparison of Entry Consistency and Lazy Release Consistency Implementations · HPCA 1996 |
Memory systems › memory consistency › memory consistency model
weak memory model |
0.0 | 1 | 1996 | A Comparison of Entry Consistency and Lazy Release Consistency Implementations · HPCA 1996 |
Memory systems › memory architecture › parallel memory system
software shared memory |
0.0 | 1 | 1994 | Software Versus Hardware Shared-Memory Implementation: A Case Study · ISCA 1994 |
Cloud and datacenter computing
cluster resource management and scheduling |
0.0 | 1 | 2002 | Half-Pipe Anchoring: An Efficient Technique for Multiple Connection Handoff · ICNP 2002 |
High-performance computing › cluster computing
server cluster |
0.0 | 1 | 2002 | Half-Pipe Anchoring: An Efficient Technique for Multiple Connection Handoff · ICNP 2002 |
Parallel and multicore computing
parallel programming models |
0.0 | 1 | 1999 | Combining compile-time and run-time support for efficient software distributed shared memory · Proc. IEEE 1999 |
Methods — techniques the papers use, named apart from their topics
full-system simulation · 0.2design space exploration · 0.1kernel implementation · 0.1write-back redirection · 0.1simulation · 0.1history table · 0.1dynamic run-time policies · 0.1compiler techniques · 0.1memory access detection · 0.0automatic data caching · 0.0message passing · 0.0prefetching · 0.0inspector-executor · 0.0demand paging · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2015 | An updated performance comparison of virtual machines and Linux containersabstractCloud computing makes extensive use of virtual machines because they permit workloads to be isolated from one another and for the resource usage to be somewhat controlled. In this paper, we explore the performance of traditional virtual machine (VM) deployments, and contrast them with the use of Linux containers. We use KVM as a representative hypervisor and Docker as a container manager. Our results show that containers result in equal or better performance than VMs in almost all cases. Both VMs and containers require tuning to support I/Ointensive applications. We also discuss the implications of our performance results for future cloud architectures. Wes Felter, Ramakrishnan Rajamony, Juan C. Rubio |
ISPASS | 3 |
| 2013 | The power 775 architecture at scaleabstractWe describe the IBM Power 775, a supercomputing system that was designed to provide high performance at very large scales. The system recently attained world record performance numbers for three important, communication-heavy supercomputing benchmarks: RandomAccess, PTRANS, and Global FFT (while the Power 775 currently holds the number two spot in Global FFT, its efficiency when computing the FFT exceeds that of the number one system's by over 3.5 times). At the heart of the Power 775's performance is the "hub module", which is a high-radix router containing forty-seven copper and optical links with a switching capacity of over 1.1 Tbyte/second. This level of bandwidth is unprecedented for typical systems of the scale we discuss in this paper. As a result, we were forced to develop a complete software stack to fully leverage the communication capabilities of the system. In this paper we evaluate the Power 775 server at scales up to 2 Petaflops (63,360 POWER7 cores), discuss hardware and software tradeoffs considered during the design process, and finally present some lessons learned. Ramakrishnan Rajamony, Mark Stephenson, William Evan Speight |
ICS | 1 |
| 2012 | Mapping strategies for the PERCS architectureabstractThe PERCS system was designed by IBM in response to a DARPA challenge that called for a high-productivity high-performance computing system. The IBM PERCS architecture is a two level direct network having low diameter and high bisection bandwidth. Mapping and routing strategies play an important role in the performance of applications on such a topology. In this paper, we study mapping strategies for PERCS architecture, that examine how to map tasks of a given job on to the physical processing nodes. We develop and present fundamental principles for designing good mapping strategies that minimize congestion. This is achieved via a theoretical study of some common communication patterns under both direct and indirect routing mechanisms supported by the architecture. Venkatesan T. Chakaravarthy, Monu Kedia, Yogish Sabharwal, Naga Praveen Kumar Katta, Ramakrishnan Rajamony, Aruna Ramanan |
HiPC | 5 |
| 2010 | Enigma: architectural and operating system support for reducing the impact of address translationabstractMost modern microprocessors provide hardware support for rapidly translating a program logical address to a system physical address (PA). Translation typically sits on the critical path of every memory access, since an access cannot usually be performed until after it has been translated. Enigma is a novel approach to address translation that defers the bulk of the work associated with address translation until data must be retrieved from physical memory. Enigma replaces the address translation unit that exists in each conventional core with a simpler unit to translate from the logical address space to a new intermediate address (IA) space. Intermediate addresses are unique across the entire system except where sharing is required or desired, and their use sidesteps the "synonym" problem present in logically tagged caches. All cache addressing, as well as I/O and coherence traffic, is carried out using IA. Enigma translates an IA to a PA only when no cache in the entire CMP can satisfy the request and memory or I/O must be accessed. A central translation unit attached to the system bus performs translations on IA that must be resolved to a PA. Deferring the bulk of address translation work and removing it from each individual processor core in this manner affords many benefits. Lixin Zhang 0002, William Evan Speight, Ramakrishnan Rajamony, Jiang Lin |
ICS | 3 |
| 2010 | Design exploration of hybrid caches with disparate memory technologiesabstractTraditional multilevel SRAM-based cache hierarchies, especially in the context of chip multiprocessors (CMPs), present many challenges in area requirements, core--to--cache balance, power consumption, and design complexity. New advancements in technology enable caches to be built from other technologies, such as Embedded DRAM (EDRAM), Magnetic RAM (MRAM), and Phase-change RAM (PRAM), in both 2D chips or 3D stacked chips. Caches fabricated in these technologies offer dramatically different power-performance characteristics when compared with SRAM-based caches, particularly in the areas of access latency, cell density, and overall power consumption. In this article, we propose to take advantage of the best characteristics that each technology has to offer through the use of Hybrid Cache Architecture (HCA) designs. We discuss and evaluate two types of hybrid cache architectures: intercache-Level HCA (LHCA), in which the levels in a cache hierarchy can be made of disparate memory technologies; and intracache-level or cache-Region-based HCA (RHCA), where a single level of cache can be partitioned into multiple regions, each of a different memory technology. We have studied a number of different HCA architectures and explored the potential of hardware support for intracache data movement and power consumption management within HCA caches. Utilizing a full-system simulator that has been validated against real hardware, we demonstrate that an LHCA design can provide a geometric mean 6% IPC improvement over a baseline 3-level SRAM cache design under the same area constraint across a collection of 30 workloads. A more aggressive RHCA-based design provides 10% IPC improvement over the baseline. A 2-layer 3D cache stack (3DHCA) of high density memory technology within the same chip footprint gives 16% IPC improvement over the baseline. We also achieve up to a 72% reduction in power consumption over a baseline SRAM-only design. Energy-delay and thermal evaluation for 3DHCA are also presented. In addition to the fast-slow region based RHCA, we further evaluate read-write region based RHCA designs. Xiaoxia Wu, Jian Li 0059, Lixin Zhang 0002, William Evan Speight, Ramakrishnan Rajamony, Yuan Xie 0001 |
ACM Trans. Archit. Code Optim. | 5 |
| 2009 | Hybrid cache architecture with disparate memory technologiesabstractCaching techniques have been an efficient mechanism for mitigating the effects of the processor-memory speed gap. Traditional multi-level SRAM-based cache hierarchies, especially in the context of chip multiprocessors (CMPs), present many challenges in area requirements, core-to-cache balance, power consumption, and design complexity. New advancements in technology enable caches to be built from other technologies, such as Embedded DRAM (EDRAM), Magnetic RAM (MRAM), and Phase-change RAM (PRAM), in both 2D chips or 3D stacked chips. Caches fabricated in these technologies offer dramatically different power and performance characteristics when compared with SRAM-based caches, particularly in the areas of access latency, cell density, and overall power consumption. In this paper, we propose to take advantage of the best characteristics that each technology offers, through the use of Hybrid Cache Architecture (HCA) designs. We discuss and evaluate two types of hybrid cache architectures: inter cache Level HCA (LHCA), in which the levels in a cache hierarchy can be made of disparate memory technologies; and intra cache level or cache Region based HCA (RHCA), where a single level of cache can be partitioned into multiple regions, each of a different memory technology. We have studied a number of different HCA architectures and explored the potential of hardware support for intra-cache data movement and power consumption management within HCA caches. Utilizing a full-system simulator that has been validated against real hardware, we demonstrate that an LHCA design can provide a geometric mean 7% IPC improvement over a baseline 3-level SRAM cache design under the same area constraint across a collection of 25 workloads. A more aggressive RHCA-based design provides 12% IPC improvement over the baseline. Finally, a 2-layer 3D cache stack (3DHCA) of high density memory technology within the same chip footprint gives 18% IPC improvement over the baseline. Furthermore, up to 70% reduction in power consumption over a baseline SRAM-only design is achieved. Xiaoxia Wu, Jian Li 0059, Lixin Zhang 0002, William Evan Speight, Ramakrishnan Rajamony, Yuan Xie 0001 |
ISCA | 5 |
| 2005 | Adaptive Mechanisms and Policies for Managing Cache Hierarchies in Chip MultiprocessorsabstractWith the ability to place large numbers of transistors on a single silicon chip, manufacturers have begun developing chip multiprocessors (CMPs) containing multiple processor cores, varying amounts of level 1 and level 2 caching, and on-chip directory structures for level 3 caches and memory. The level 3 cache may be used as a victim cache for both modified and clean lines evicted from on-chip level 2 caches. Efficient area and performance management of this cache hierarchy is paramount given the projected increase in access latency to off-chip memory. This paper proposes simple architectural extensions and adaptive policies for managing the L2 and L3 cache hierarchy in a CMP system. In particular, we evaluate two mechanisms that improve cache effectiveness. First, we propose the use of a small history table to provide hints to the L2 caches as to which lines are resident in the L3 cache. We employ this table to eliminate some unnecessary clean write backs to the L3 cache, reducing pressure on the L3 cache and utilization of the on-chip bus. Second, we exam-ine the performance benefits of allowing write backs from L2 caches to be placed in neighboring, on-chip L2 caches rather than forcing them to be absorbed by the L3 cache. This not only reduces the capacity pressure on the L3 cache but also makes subsequent accesses faster since L2-W-L2 cache transfers have typically lower latencies than accesses to a large L3 cache array. We evaluate the performance improvement of these two designs, and their combined effect, on four commercial workloads and observe a reduction in the overall execution time of up to 13%. William Evan Speight, Hazim Shafi, Lixin Zhang 0002, Ramakrishnan Rajamony |
ISCA | 4 |
| 2005 | On the Feasibility of Optical Circuit Switching for High Performance Computing SystemsabstractThe interconnect plays a key role in both the cost and performance of large-scale HPC systems. The cost of future high-bandwidth electronic interconnects mushrooms due to expensive optical transceivers needed between electronic switches. We describe a potentially cheaper and more power-efficient approach to building high-performance interconnects. Through empirical analysis of HPC applications, we find that the bulk of inter-processor communication (barring collectives) is bounded in degree and changes very slowly or never. Thus we propose a two-network interconnect: An Optical Circuit Switching (OCS) network handling long-lived bulk data transfers, using optical switches; and a secondary lower-bandwidth Electronic Packet Switching (EPS) network. An OCS could be significantly cheaper, as it uses fewer optical transceivers than an electronic network. Collectives and transient communication packets traverse the electronic network. We present compiler techniques and dynamic run-time policies, using this two-network interconnect. Simulation results show that our approach provides high performance at low cost. Kevin J. Barker, Alan F. Benner, Raymond R. Hoare, Adolfy Hoisie, Alex K. Jones, Darren J. Kerbyson, Rami G. Melhem, Ramakrishnan Rajamony, Eugen Schenfeld, Shuyi Shao, Craig B. Stunkel, Peter Walker |
SC | 9 |
| 2002 | Half-Pipe Anchoring: An Efficient Technique for Multiple Connection HandoffabstractWe present half-pipe anchoring, a technique that enables multiple connection handoff mechanisms that are efficient and easy to implement. In a server cluster, these mechanisms result in better resource utilization and improved scalability. More importantly, half-pipe anchoring supports the only connection handoff mechanism that operates efficiently in heterogeneous clusters composed of specialized nodes. The key idea behind our approach is to decouple the two unidirectional half-pipes that make up a TCP connection between a client and a cluster. We anchor the unidirectional half-pipe from the client to the cluster at a designated server while allowing the half-pipe from the cluster to the client to migrate on a per-request basis to an optimal server where the request is best serviced We describe the design and implementation of a multiple connection handoff mechanism in the Linux kernel that demonstrates the benefits of our technique. Ravi Kokku, Ramakrishnan Rajamony, Lorenzo Alvisi, Harrick M. Vin |
ICNP | 2 |
| 2002 | Critical power slope: understanding the runtime effects of frequency scalingabstractEnergy efficiency is becoming an increasingly important feature for both mobile and high-performance server systems. Most processors designed today include power management features that provide processor operating points which can be used in power management algorithms. However, existing power management algorithms implicitly assume that lower performance points are more energy efficient than higher performance points. Our empirical observations indicate that for many systems, this assumption is not valid.We introduce a new concept called critical power slope to explain and capture the power-performance characteristics of systems with power management features. We evaluate three systems - a clock throttled Pentium laptop, a frequency scaled PowerPC platform, and a voltage scaled system to demonstrate the benefits of our approach. Our evaluation is based on empirical measurements of the first two systems, and publicly available data for the third. Using critical power slope, we explain why on the Pentium-based system, it is energy efficient to run only at the highest frequency, while on the PowerPC-based system, it is energy efficient to run at the lowest frequency point. We confirm our results by measuring the behavior of a web serving benchmark. Furthermore, we extend the critical power slope concept to understand the benefits of voltage scaling when combined with frequency scaling. We show that in some cases, it may be energy efficient not to reduce voltage below a certain point. Akihiko Miyoshi, Charles Lefurgy, Eric Van Hensbergen, Ramakrishnan Rajamony, Ragunathan Rajkumar |
ICS | 4 |
| 1999 | Combining compile-time and run-time support for efficient software distributed shared memoryabstractWe describe an integrated compile time and run time system for efficient shared memory parallel computing on distributed memory machines. The combined system presents the user with a shared memory programming model. The run time system implements a consistent shared memory abstraction using memory access detection and automatic data caching. The compiler improves the efficiency of the shared memory implementation by directing the run time system to exploit the message passing capabilities of the underlying hardware. To do so, the compiler analyzes shared memory accesses and transforms the code to insert calls to the run time system that provide it with the access information computed by the compiler. The run time system is augmented with the appropriate entry points to use this information to implement bulk data transfer and to reduce the overhead of run time consistency maintenance. In those cases where the compiler analysis succeeds for the entire program, we demonstrate that the combined system achieves performance comparable to that produced by compilers that directly target message passing. If the compiler analysis is successful only for parts of the program, for instance, because of irregular accesses to some of the arrays, the resulting optimizations can be applied to those parts for which the analysis succeeds. If the compiler analysis fails entirely, we rely on the run time maintenance of shared memory and thereby avoid the complexity and the limitations of compilers that directly target message passing. The result is a single system that combines efficient support for both regular and irregular memory access patterns. Sandhya Dwarkadas, Honghui Lu, Alan L. Cox, Ramakrishnan Rajamony, Willy Zwaenepoel |
Proc. IEEE | 4 |
| 1997 | Compiler and Software Distributed Shared Memory Support for Irregular ApplicationsabstractWe investigate the use of a software distributed shared memory (DSM) layer to support irregular computations on distributed memory machines. Software DSM supports irregular computation through demand fetching of data in response to memory access faults. With the addition of a very limited form of compiler support, namely the identification of the section of the indirection array accessed by each processor, many of these on-demand page fetches can be aggregated into a single message, and prefetched prior to the access fault.We have measured the performance of this approach for two irregular applications, moldyn and nbf, using the Tread-Marks DSM system on an 8-processor IBM SP2. We find that it has similar performance to the inspector-executor method supported by the CHAOS run-time library, while requiring much simpler compile-time support. For moldyn, it is up to 23% faster than CHAOS, depending on the input problem's characteristics; and for nbf, it is no worse than 14% slower. If we include the execution time of the inspector, the software DSM-based approach is always faster than CHAOS. The advantage of this approach increases as the frequency of changes to the indirection array increases. The disadvantage of this approach is the potential for false sharing overhead when the data set is small or has poor spatial locality. Honghui Lu, Alan L. Cox, Sandhya Dwarkadas, Ramakrishnan Rajamony, Willy Zwaenepoel |
PPoPP | 4 |
| 1997 | Performance Debugging Shared Memory Parallel Programs Using Run-Time Dependence AnalysisabstractWe describe a new approach to performance debugging that focuses on automatically identifying computation transformations to reduce synchronization and communication. By grouping writes together into equivalence classes, we are able to tractably collect information from long-running programs. Our performance debugger analyzes this information and suggests computation transformations in terms of the source code. We present the transformations suggested by the debugger on a suite of four applications. For Barnes-Hut and Shallow, implementing the debugger suggestions improved the performance by a factor of 1.32 and 34 times respectively on an 8-processor IBM SP2. For Ocean, our debugger identified excess synchronization that did not have a significant impact on performance. ILINK, a genetic linkage analysis program widely used by geneticists, is already well optimized. We use it only to demonstrate the feasibility of our approach to long-running applications.We also give details on how our approach can be implemented. We use novel techniques to convert control dependences to data dependences, and to compute the source operands of stores. We report on the impact of our instrumentation on the same application suite we use for performance debugging. The instrumentation slows down the execution by a factor of between 4 and 169 times. The log files produced during execution were all less than 2.5 Mbytes in size. Ramakrishnan Rajamony, Alan L. Cox |
SIGMETRICS | 1 |
| 1996 | A Comparison of Entry Consistency and Lazy Release Consistency ImplementationsabstractThis paper compares several implementations of entry consistency (EC) and lazy release consistency (LRC), two relaxed memory models in use with software distributed shared memory (DSM) systems. We use six applications in our study: SOR, Quicksort, Water, Barnes-Hut, IS, and 3D-FFT. For these applications, EC's requirement that all shared data be associated with a synchronization object leads to a fair amount of additional programming effort. We identify, in particular, extra synchronization, lock rebinding, and object granularity as sources of extra complexity. In terms of performance, for the set of applications and for the computing environment utilized neither model is consistently better than the other. For SOR and IS, execution times are about the same, but LRC is faster for Water (33%) and Barnes-Hut (41%) and EC is faster for Quicksort (14%) and 3D-FFT (10%). Sarita V. Adve, Alan L. Cox, Sandhya Dwarkadas, Ramakrishnan Rajamony, Willy Zwaenepoel |
HPCA | 4 |
| 1994 | Software Versus Hardware Shared-Memory Implementation: A Case StudyabstractCompares the performance of software-supported shared memory on a general-purpose network to hardware-supported shared memory on a dedicated interconnect. Up to eight processors, the results are based on the execution of a set of application programs on a SGI 4D/480 multiprocessor and on TreadMarks, a distributed shared memory system that runs on a Fore ATM LAN of DECstation-5000/240s. Since the DECstation and the 4D/480 use the same processor, primary cache, and compiler, the shared-memory implementation is the principal difference between the systems. Beyond eight processors, the results are based on execution-driven simulation. Specifically, the authors compare a software implementation on a general-purpose network of uniprocessor nodes, a hardware implementation using a directory-based protocol on a dedicated interconnect, and a combined implementation using software to provide shared memory between multiprocessor nodes with hardware implementing shared memory within a node.> Alan L. Cox, Sandhya Dwarkadas, Peter J. Keleher, Honghui Lu, Ramakrishnan Rajamony, Willy Zwaenepoel |
ISCA | 5 |