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

Martha Mercaldi Kim

dblp:m/MarthaMercaldi · also Martha Mercaldi · DBLP profile ↗
← Back
8ranked-venue papers
4as first author
0since 2021 · last 2008
—ORCID · none

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

Systems, architecture and hardware · 7 · 4 first-authorSoftware engineering, systems software and programming languages · 4 · 3 first-authorDatabases, data management, data science and information retrieval · 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
5 papers
Processor architecture and microarchitecture · 47% Interconnection networks and networks-on-chip · 26% Electronic design automation · 17%
Software engineering, system software, and programming languages
2 papers
Compilers and program optimization · 77% Program analysis · 23%

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

TopicWeightPapersLastEvidence papers
Processor architecture and microarchitecture
dataflow architecture
0.122007
The WaveScalar architecture · ACM Trans. Comput. Syst. 2007
Area-Performance Trade-offs in Tiled Dataflow Architectures · ISCA 2006
Processor architecture and microarchitecture
tiled architecture
0.122007
The WaveScalar architecture · ACM Trans. Comput. Syst. 2007
Area-Performance Trade-offs in Tiled Dataflow Architectures · ISCA 2006
Interconnection networks and networks-on-chip › network topology
reconfigurable topology
0.112008
Polymorphic On-Chip Networks · ISCA 2008
Compilers and program optimization
instruction scheduling
0.112006
Instruction scheduling for a tiled dataflow architecture · ASPLOS 2006
Compilers and program optimization › parsing
parser generation
0.112006
XML screamer: an integrated approach to high performance XML parsing, validation and deserialization · WWW 2006
Electronic design automation › multi-objective optimization
area-time tradeoff
0.112006
Area-Performance Trade-offs in Tiled Dataflow Architectures · ISCA 2006
Electronic design automation
design space exploration
0.112006
Area-Performance Trade-offs in Tiled Dataflow Architectures · ISCA 2006
Processor architecture and microarchitecture
instruction scheduling
0.112006
Instruction scheduling for a tiled dataflow architecture · ASPLOS 2006
Processor architecture and microarchitecture
chip multiprocessor
0.012007
Architectural implications of brick and mortar silicon manufacturing · ISCA 2007
Interconnection networks and networks-on-chip
on-chip interconnect
0.012007
The WaveScalar architecture · ACM Trans. Comput. Syst. 2007
Program analysis
schema validation
0.012006
XML screamer: an integrated approach to high performance XML parsing, validation and deserialization · WWW 2006
Program analysis
static analysis
0.012006
XML screamer: an integrated approach to high performance XML parsing, validation and deserialization · WWW 2006
Interconnection networks and networks-on-chip › network topology
hierarchical interconnection network
0.012006
Area-Performance Trade-offs in Tiled Dataflow Architectures · ISCA 2006

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

profile-driven scheduling · 0.1design space exploration · 0.1area-performance analysis · 0.1simulation · 0.1fluidic self-assembly · 0.1parser generation · 0.1pareto analysis · 0.1cycle-level simulation · 0.1compilation · 0.1RTL modeling · 0.1
YearPublicationVenuePosition
2008 Polymorphic On-Chip Networks
abstract
As the number of cores per die increases, be they processors, memory blocks, or custom accelerators, the on-chip interconnect the cores use to communicate gains importance. We begin this study with an area-performance analysis of the interconnect design space. We find that there is no single network design that yields optimal performance across a range of traffic patterns. This indicates that there is an opportunity to gain performance by customizing the interconnect to a particular application or workload. We propose polymorphic on-chip networks to enable per-application network customization. This network can be configured prior to application runtime, to have the topology and buffering of arbitrary network designs. This paper proposes one such polymorphic network architecture. We demonstrate its modes of configurability, and evaluate the polymorphic network architecture design space, producing polymorphic fabrics that minimize the network area overhead. Finally, we expand the network on chip design space to include a polymorphic network design, showing that a single polymorphic network is capable of implementing all of the pareto optimal fixed-network designs.
Martha Mercaldi Kim, John D. Davis, Mark Oskin, Todd M. Austin
ISCA1
2007 Architectural implications of brick and mortar silicon manufacturing
abstract
We introduce a novel chip fabrication technique called "brick and mortar", in which chips are made from small, pre-fabricated ASIC bricks and bonded in a designer-specified arrangement to an inter-brick communication backbone chip. The goal of brick and mortar assembly is to provide a low-overhead method to produce custom chips, yet with performance that tracks an ASIC more closely than an FPGA. This paper examines the architectural design choices in this chip-design system. These choices include the definition of reasonable bricks, both in functionality and size, as well as the communication interconnect that the I/O cap provides. To do this we synthesize candidate bricks, analyze their area and bandwidth demands, and present an architectural design for the inter-brick communication network. We discuss a sample chip design, a 16-way CMP, and analyze the costs and benefits of designing chips with brick and mortar. We find that this method of producing chips incurs only a small performance loss (8%) compared to a fully custom ASIC, which is significantly less than the degradation seen from other low-overhead chip options, such as FPGAs. Finally, we measure the effect that architectural design decisions have on the behavior of the proposed physical brick assembly technique, fluidic self-assembly.
Martha Mercaldi Kim, Mojtaba Mehrara, Mark Oskin, Todd M. Austin
ISCA1
2007 The WaveScalar architecture
abstract
Silicon technology will continue to provide an exponential increase in the availability of raw transistors. Effectively translating this resource into application performance, however, is an open challenge that conventional superscalar designs will not be able to meet. We present WaveScalar as a scalable alternative to conventional designs. WaveScalar is a dataflow instruction set and execution model designed for scalable, low-complexity/high-performance processors. Unlike previous dataflow machines, WaveScalar can efficiently provide the sequential memory semantics that imperative languages require. To allow programmers to easily express parallelism, WaveScalar supports pthread-style, coarse-grain multithreading and dataflow-style, fine-grain threading. In addition, it permits blending the two styles within an application, or even a single function. To execute WaveScalar programs, we have designed a scalable, tile-based processor architecture called the WaveCache. As a program executes, the WaveCache maps the program's instructions onto its array of processing elements (PEs). The instructions remain at their processing elements for many invocations, and as the working set of instructions changes, the WaveCache removes unused instructions and maps new ones in their place. The instructions communicate directly with one another over a scalable, hierarchical on-chip interconnect, obviating the need for long wires and broadcast communication. This article presents the WaveScalar instruction set and evaluates a simulated implementation based on current technology. For single-threaded applications, the WaveCache achieves performance on par with conventional processors, but in less area. For coarse-grain threaded applications the WaveCache achieves nearly linear speedup with up to 64 threads and can sustain 7--14 multiply-accumulates per cycle on fine-grain threaded versions of well-known kernels. Finally, we apply both styles of threading to equake from Spec2000 and speed it up by 9x compared to the serial version.
Steven Swanson, Andrew Schwerin, Martha Mercaldi Kim, Andrew Petersen 0001, Andrew Putnam, Ken Michelson, Mark Oskin, Susan J. Eggers
ACM Trans. Comput. Syst.3
2006 Reducing control overhead in dataflow architectures
abstract
In recent years, computer architects have proposed tiled architectures in response to several emerging problems in processor design, such as design complexity, wire delay, and fabrication reliability. One of these architectures, WaveScalar, uses a dynamic, tagged-token dataflow execution model to simplify the design of the processor tiles and their interconnection network and to achieve good parallel performance. However, using a dataflow execution model reawakens old problems, including the instruction overhead required for control flow. Previous work compiling the functional language Id to the Monsoon Dataflow System found this overhead to be 2–3× that of programs written in C and targeted to a MIPS R3000.In this paper, we present and analyze three compiler optimizations that significantly reduce control overhead with minimal additional hardware. We begin by describing how to translate imperative code into dataflow assembly and analyze the resulting control overhead. We report a similar 2–4× instruction overhead, which suggests that the execution model, rather than a specific source language or target architecture, is responsible. Then, we present the compiler optimizations, each of which is designed to eliminate a particular type of control overhead, and analyze the extent to which they were able to do so. Finally, we evaluate the effect using all optimizations together has on program performance. Together, the optimizations reduce control overhead by 80% on average, increasing application performance between 21–37%.
Andrew Petersen 0001, Andrew Putnam, Martha Mercaldi Kim, Andrew Schwerin, Susan J. Eggers, Steven Swanson, Mark Oskin
PACT3
2006 Instruction scheduling for a tiled dataflow architecture
abstract
This paper explores hierarchical instruction scheduling for a tiled processor. Our results show that at the top level of the hierarchy, a simple profile-driven algorithm effectively minimizes operand latency. After this schedule has been partitioned into large sections, the bottom-level algorithm must more carefully analyze program structure when producing the final schedule.Our analysis reveals that at this bottom level, good scheduling depends upon carefully balancing instruction contention for processing elements and operand latency between producer and consumer instructions. We develop a parameterizable instruction scheduler that more effectively optimizes this trade-off. We use this scheduler to determine the contention-latency sweet spot that generates the best instruction schedule for each application. To avoid this application-specific tuning, we also determine the parameters that produce the best performance across all applications. The result is a contention-latency setting that generates instruction schedules for all applications in our workload that come within 17% of the best schedule for each.
Martha Mercaldi Kim, Steven Swanson, Andrew Petersen 0001, Andrew Putnam, Andrew Schwerin, Mark Oskin, Susan J. Eggers
ASPLOS1
2006 Area-Performance Trade-offs in Tiled Dataflow Architectures
abstract
Tiled architectures, such as RAW, SmartMemories, TRIPS, and WaveScalar, promise to address several issues facing conventional processors, including complexity, wire-delay, and performance. The basic premise of these architectures is that larger, higher-performance implementations can be constructed by replicating the basic tile across the chip. This paper explores the area-performance trade-offs when designing one such tiled architecture, WaveScalar. We use a synthesizable RTL model and cycle-level simulator to perform an area/performance pareto analysis of over 200 WaveScalar processor designs ranging in size from 19mm2to 575mm2and having a 22 FO4 cycle time. We demonstrate that, for multi-threaded workloads, WaveScalar performance scales almost ideally from 19 to 101mm2when optimized for area efficiency and from 44 to 202mm2when optimized for peak performance. Our analysis reveals that WaveScalar's hierarchical interconnect plays an important role in overall scalability, and that WaveScalar achieves the same (or higher) performance in substantially less area than either an aggressive out-of-order superscalar or Sun's Niagara CMP processor
Steven Swanson, Andrew Putnam, Martha Mercaldi Kim, Ken Michelson, Andrew Petersen 0001, Andrew Schwerin, Mark Oskin, Susan J. Eggers
ISCA3
2006 Modeling instruction placement on a spatial architecture
abstract
In response to current technology scaling trends, architects are developing a new style of processor, known as spatial computers. A spatial computer is composed of hundreds or even thousands of simple, replicated processing elements (or PEs), frequently organized into a grid. Several current spatial computers, such as TRIPS, RAW, SmartMemories, nanoFabrics and WaveScalar, explicitly place a program's instructions onto the grid. Designing instruction placement algorithms is an enormous challenge, as there are an exponential (in the size of the application) number of different mappings of instructions to PEs, and the choice of mapping greatly affects program performance. In this paper we develop an instruction placement performance model which can inform instruction placement. The model comprises three components, each of which captures a different aspect of spatial computing performance: inter-instruction operand latency, data cache coherence overhead, and contention for processing element resources. We evaluate the model on one spatial computer, WaveScalar, and find that predicted and actual performance correlate with a coefficient of -0.90. We demonstrate the model's utility by using it to design a new placement algorithm, which outperforms our previous algorithms. Although developed in the context of WaveScalar, the model can serve as a foundation for tuning code, compiling software, and understanding the microarchitectural trade-offs of spatial computers in general.
Martha Mercaldi Kim, Steven Swanson, Andrew Petersen 0001, Andrew Putnam, Andrew Schwerin, Mark Oskin, Susan J. Eggers
SPAA1
2006 XML screamer: an integrated approach to high performance XML parsing, validation and deserialization
abstract
This paper describes an experimental system in which customized high performance XML parsers are prepared using parser generation and compilation techniques. Parsing is integrated with Schema-based validation and deserialization, and the resulting validating processors are shown to be as fast as or in many cases significantly faster than traditional nonvalidating parsers. High performance is achieved by integration across layers of software that are traditionally separate, by avoiding unnecessary data copying and transformation, and by careful attention to detail in the generated code. The effect of API design on XML performance is also briefly discussed..
Margaret Gaitatzes Kostoulas, Morris Matsa, Noah Mendelsohn, Eric Perkins, Abraham Heifets, Martha Mercaldi Kim
WWW6