VLDB 2026 Research / reviewers in the wild / expert
Matthew C. Merten
dblp:24/1918
· DBLP profile ↗
8ranked-venue papers
4as first author
0since 2021 · last 2002
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 8 · 4 first-authorSoftware engineering, systems software and programming languages · 3 · 2 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
6 papers |
Processor architecture and microarchitecture · 32% Memory systems · 30% Parallel and multicore computing · 18% | |
| Software engineering, system software, and programming languages
4 papers |
Compilers and program optimization · 73% Program analysis · 27% |
Topics — the 20 heaviest of 22, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Parallel and multicore computing
runtime optimization |
0.1 | 3 | 2001 | An Architectural Framework for Runtime Optimization · IEEE Trans. Computers 2001 A hardware mechanism for dynamic extraction and relayout of program hot spots · ISCA 2000 A Hardware-Driven Profiling Scheme for Identifying Program Hot Spots to Support Runtime Optimization · ISCA 1999 |
Memory systems
cache management |
0.0 | 2 | 1999 | Run-Time Cache Bypassing · IEEE Trans. Computers 1999 Run-Time Spatial Locality Detection and Optimization · MICRO 1997 |
Program analysis
dynamic analysis |
0.0 | 1 | 2002 | Vacuum packing: extracting hardware-detected program phases for post-link optimization · MICRO 2002 |
Compilers and program optimization › binary rewriting
post-link optimization |
0.0 | 1 | 2002 | Vacuum packing: extracting hardware-detected program phases for post-link optimization · MICRO 2002 |
Compilers and program optimization › dynamic optimization
profile-guided optimization |
0.0 | 1 | 2002 | Vacuum packing: extracting hardware-detected program phases for post-link optimization · MICRO 2002 |
Processor architecture and microarchitecture
branch prediction |
0.0 | 1 | 2001 | An Architectural Framework for Runtime Optimization · IEEE Trans. Computers 2001 |
Processor architecture and microarchitecture
instruction-level parallelism |
0.0 | 1 | 2001 | Modulo schedule buffers · MICRO 2001 |
Reconfigurable computing and FPGAs
modulo scheduling |
0.0 | 1 | 2001 | Modulo schedule buffers · MICRO 2001 |
Processor architecture and microarchitecture
instruction fetch |
0.0 | 1 | 2000 | A hardware mechanism for dynamic extraction and relayout of program hot spots · ISCA 2000 |
Processor architecture and microarchitecture › instruction fetch
trace cache |
0.0 | 1 | 2000 | A hardware mechanism for dynamic extraction and relayout of program hot spots · ISCA 2000 |
Memory systems › cache management › cache insertion policy
cache bypassing |
0.0 | 1 | 1999 | Run-Time Cache Bypassing · IEEE Trans. Computers 1999 |
Memory systems › memory hierarchy
cache hierarchy |
0.0 | 1 | 1999 | Run-Time Cache Bypassing · IEEE Trans. Computers 1999 |
Performance modeling and evaluation › profiling
hardware profiling |
0.0 | 1 | 1999 | A Hardware-Driven Profiling Scheme for Identifying Program Hot Spots to Support Runtime Optimization · ISCA 1999 |
Electronic design automation › physical design › lithography
lithography hotspot detection |
0.0 | 1 | 1999 | A Hardware-Driven Profiling Scheme for Identifying Program Hot Spots to Support Runtime Optimization · ISCA 1999 |
Memory systems
cache design |
0.0 | 1 | 1997 | Run-Time Spatial Locality Detection and Optimization · MICRO 1997 |
Memory systems › cache management
cache miss handling |
0.0 | 1 | 1997 | Run-Time Spatial Locality Detection and Optimization · MICRO 1997 |
Memory systems › cache
prefetching |
0.0 | 1 | 1997 | Run-Time Spatial Locality Detection and Optimization · MICRO 1997 |
Compilers and program optimization
dynamic optimization |
0.0 | 2 | 2001 | An Architectural Framework for Runtime Optimization · IEEE Trans. Computers 2001 A Hardware-Driven Profiling Scheme for Identifying Program Hot Spots to Support Runtime Optimization · ISCA 1999 |
Embedded and real-time systems › real-time operating systems
interrupt latency |
0.0 | 1 | 2001 | Modulo schedule buffers · MICRO 2001 |
Performance modeling and evaluation › simulation › discrete-event simulation
trace-driven simulation |
0.0 | 1 | 1999 | Run-Time Cache Bypassing · IEEE Trans. Computers 1999 |
Methods — techniques the papers use, named apart from their topics
out-of-order execution · 0.1instruction profiling · 0.1hardware speculation · 0.1branch target buffer · 0.1hardware performance counters · 0.0trace-driven simulation · 0.0code replication · 0.0code extraction · 0.0predication · 0.0modulo scheduling · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2002 | Vacuum packing: extracting hardware-detected program phases for post-link optimizationabstractThis paper presents Vacuum Packing, a new approach to profile-based program optimization. Instead of using traditional aggregate or summarized execution profile weights, this approach uses a transparent hardware profiler to automatically detect execution phases and record branch profile information for each new phase. The code extraction algorithm then produces code packages that are specially formed for their corresponding phases. The algorithm compensates for the incomplete and often incoherent branch profile information that arises due to the nature of hardware profilers. The technique avoids unnecessary code replication by focusing on hot code, making efficient connections between the original code and the new code, linking code packages at select points to facilitate phase transitions, and providing a platform for efficient optimization. We demonstrate that using a concise set of profile information from a hardware profiler, we can generate code packages, specialized for each phase of execution, that capture more than 80% of the average total program execution. We further show that the approach is very effective in extracting code regions that capture the phasing behavior of programs, that the code size increase is moderate, and that the code regions benefit from sample optimizations. Ronald D. Barnes, Erik M. Nystrom, Matthew C. Merten, Wen-Mei W. Hwu |
MICRO | 3 |
| 2001 | Modulo schedule buffersabstractAs VLIW/EPIC processors are increasingly used in realtime, signal-processing, and embedded applications, the importance of. minimizing code size and reducing power is growing. This paper describes a new architectural mechanism, called the Modulo Schedule Buffers, that provides an elegant interface for the execution of modulo scheduled loops. While the performance is similar to that of kernel-only modulo scheduling, this mechanism has a number of advantages, including minimal code expansion. Rather than generating fully-scheduled kernels, the compiler generates a sequential form of the modulo scheduled loop body. Using the sequential form, the hardware internally synthesizes the prologue, kernel, and epilogue. In addition, while loops can be scheduled with fewer constraints and fewer explicit prologues/epilogues than with existing mechanisms. Because the hardware controls loop execution, the burden of modulo schedule loop control is lifted from the predicate register file, allowing for a less rigorous predication implementation. Finally, hardware control limits the interrupt latency when using the EQ explicit latency model to the execution latency of one iteration, rather than the whole loop invocation. Matthew C. Merten, Wen-Mei W. Hwu |
MICRO | 1 |
| 2001 | An Architectural Framework for Runtime OptimizationabstractWide-issue processors continue to achieve higher performance by exploiting greater instruction-level parallelism. Dynamic techniques such as out-of-order execution and hardware speculation have proven effective at increasing instruction throughput. Runtime optimization promises to provide an even higher level of performance by adaptively applying aggressive code transformations on a larger scope. This paper presents a new hardware mechanism for generating and deploying runtime optimized code. The mechanism can be viewed as a filtering system that resides in the retirement stage of the processor pipeline, accepts an instruction execution stream as input, and produces instruction profiles and sets of linked, optimized traces as output. The code deployment mechanism uses an extension to the branch prediction mechanism to migrate execution into the new code without modifying the original code. These new components do not add delay to the execution of the program except during short bursts of reoptimization. This technique provides a strong platform for runtime optimization because the hot execution regions are extracted, optimized, and written to main memory for execution and because these regions persist across context switches. The current design of the framework supports a suite of optimizations, including partial function inlining (even into shared libraries), code straightening optimizations, loop unrolling, and peephole optimizations. Matthew C. Merten, Andrew R. Trick, Ronald D. Barnes, Erik M. Nystrom, Christopher N. George, John C. Gyllenhaal, Wen-Mei W. Hwu |
IEEE Trans. Computers | 1 |
| 2000 | A hardware mechanism for dynamic extraction and relayout of program hot spotsabstractThis paper presents a new mechanism for collecting and deploying runtime optimized code. The code-collecting component resides in the instruction retirement stage and lays out hot execution paths to improve instruction fetch rate as well as enable further code optimization. The code deployment component uses an extension to the Branch Target Buffer to migrate execution into the new code without modifying the original code. No significant delay is added to the total execution of the program due to these components. The code collection scheme enables safe runtime optimization along paths that span function boundaries. This technique provides a better platform for runtime optimization than trace caches, because the traces are longer and persist in main memory across context switches. Additionally, these traces are not as susceptible to transient behavior because they are restricted to frequently executed code. Empirical results show that on average this mechanism can achieve better instruction fetch rates using only 12KB of hardware than a trace cache requiring 15KB of hardware, while producing long, persistent traces more suited to optimization. Matthew C. Merten, Andrew R. Trick, Erik M. Nystrom, Ronald D. Barnes, Wen-Mei W. Hwu |
ISCA | 1 |
| 1999 | FreezeFrame: Compact Test Generation Using a Frozen Clock StrategyabstractTest application time is an important factor in the overall cost of VLSI chip testing. We present a new ATPG approach for generating compact test sequences for sequential circuits. Our approach combines a conventional ATPG algorithm, a technique based on the frozen clock testing strategy, and a dynamic compaction method based on a genetic algorithm. The frozen clock strategy temporarily suspends the sequential behavior of the circuit by stopping its clock and applying several vectors to increase the number of faults detected without changing the circuit state. Results show that test sets generated using the new approach are more compact than those generated by previous approaches for many circuits. Yanti Santoso, Matthew C. Merten, Elizabeth M. Rudnick, Miron Abramovici |
DATE | 2 |
| 1999 | A Hardware-Driven Profiling Scheme for Identifying Program Hot Spots to Support Runtime OptimizationabstractThis paper presents a novel hardware-based approach for identifying, profiling, and monitoring hot spots in order to support runtime optimization of general-purpose programs. The proposed approach consists of a set of tightly coupled hardware tables and control logic modules that are placed in the retirement stage of a processor pipeline removed from the critical path. The features of the proposed design include rapid detection of program hot spots after changes in execution behavior, runtime-tunable selection criteria for hot spot detection, and negligible overhead during application execution. Experiments using several SPEC95 benchmarks, as well as several large WindowsNT applications, demonstrate the promise of the proposed design. Matthew C. Merten, Andrew R. Trick, Christopher N. George, John C. Gyllenhaal, Wen-Mei W. Hwu |
ISCA | 1 |
| 1999 | Run-Time Cache BypassingabstractThe growing disparity between processor and memory performance has made cache misses increasingly expensive. Additionally, data and instruction caches are not always used efficiently, resulting in large numbers of cache misses. Therefore, the importance of cache performance improvements at each level of the memory hierarchy will continue to grow. In numeric programs, there are several known compiler techniques for optimizing data cache performance. However, integer (nonnumeric) programs often have irregular access patterns that are more difficult for the compiler to optimize. In the past, cache management techniques such as cache bypassing were implemented manually at the machine-language-programming level. As the available chip area grows, it makes sense to spend more resources to allow intelligent control over the cache management. In this paper, we present an approach to improving cache effectiveness, taking advantage of the growing chip area, utilizing run-time adaptive cache management techniques, optimizing both performance and cost of implementation. Specifically, we are aiming to increase data cache effectiveness for integer programs. We propose a microarchitecture scheme where the hardware determines data placement within the cache hierarchy based on dynamic referencing behavior. This scheme is fully compatible with existing instruction set architectures. This paper examines the theoretical upper bounds on the cache hit ratio that cache bypassing can provide for integer applications, including several Windows applications with OS activity. Then, detailed trace-driven simulations of the integer applications are used to show that the implementation described in this paper can achieve performance close to that of the upper bound. Teresa L. Johnson, Daniel A. Connors, Matthew C. Merten, Wen-Mei W. Hwu |
IEEE Trans. Computers | 3 |
| 1997 | Run-Time Spatial Locality Detection and OptimizationabstractAs the disparity between processor and main memory performance grows, the number of execution cycles spent waiting for memory accesses to complete also increases. As a result, latency hiding techniques are critical for improved application performance on future processors. We present a microarchitecture scheme which detects and adapts to varying spatial locality, dynamically adjusting the amount of data fetched on a cache miss. The spatial locality detection table, introduced in this paper, facilitates the detection of spatial locality across adjacent cached blocks. Results from detailed simulations of several integer programs show significant speedups. The improvements are due to the reduction of conflict and capacity misses by utilizing small blocks and small fetch sizes when, spatial locality is absent, and the prefetching effect of large fetch sizes when spatial locality exists. Teresa L. Johnson, Matthew C. Merten, Wen-Mei W. Hwu |
MICRO | 2 |