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

Matthew Curtis-Maury

dblp:44/1341 · DBLP profile ↗
← Back
17ranked-venue papers
8as first author
1since 2021 · last 2024
0009-0001-9466-155XORCID · corroborated

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

Systems, architecture and hardware · 16 · 7 first-author · 1 since 2021Databases, data management, data science and information retrieval · 2 · 1 first-author · 1 since 2021Software engineering, systems software and programming languages · 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
5 papers
Storage systems · 92% Parallel and multicore computing · 3% Energy-efficient computing · 2%
Software engineering, system software, and programming languages
1 paper
Operating systems · 50% Compilers and program optimization · 50%

Topics — the 12 heaviest of 14, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Storage systems
file systems
1.032024
Countering Fragmentation in an Enterprise Storage System · ACM Trans. Storage 2020
Storage Gardening: Using a Virtualization Layer for Efficient Defragmentation in the WAFL File System · FAST 2019
I/O in a Flash: Evolution of ONTAP to Low-Latency SSDs · FAST 2024
Storage systems › storage management › storage allocation › fragmentation management
defragmentation
0.822020
Countering Fragmentation in an Enterprise Storage System · ACM Trans. Storage 2020
Storage Gardening: Using a Virtualization Layer for Efficient Defragmentation in the WAFL File System · FAST 2019
Storage systems
flash and SSD
0.812024
I/O in a Flash: Evolution of ONTAP to Low-Latency SSDs · FAST 2024
Storage systems › flash and SSD › SSD performance
low-latency SSD
0.812024
I/O in a Flash: Evolution of ONTAP to Low-Latency SSDs · FAST 2024
Storage systems › storage management › storage allocation
fragmentation management
0.412020
Countering Fragmentation in an Enterprise Storage System · ACM Trans. Storage 2020
Operating systems › resource management › storage management
file systems
0.212016
To Waffinity and Beyond: A Scalable Architecture for Incremental Parallelization of File System Code · OSDI 2016
Compilers and program optimization
parallelization
0.212016
To Waffinity and Beyond: A Scalable Architecture for Incremental Parallelization of File System Code · OSDI 2016
Storage systems
storage virtualization
0.222020
Countering Fragmentation in an Enterprise Storage System · ACM Trans. Storage 2020
Storage Gardening: Using a Virtualization Layer for Efficient Defragmentation in the WAFL File System · FAST 2019
High-performance computing
scientific computing
0.112008
Prediction-Based Power-Performance Adaptation of Multithreaded Scientific Codes · IEEE Trans. Parallel Distributed Syst. 2008
Parallel and multicore computing › parallelization strategies
incremental parallelization
0.112016
To Waffinity and Beyond: A Scalable Architecture for Incremental Parallelization of File System Code · OSDI 2016
Parallel and multicore computing
parallel programming models
0.112016
To Waffinity and Beyond: A Scalable Architecture for Incremental Parallelization of File System Code · OSDI 2016
Performance modeling and evaluation
performance prediction
0.012008
Prediction-Based Power-Performance Adaptation of Multithreaded Scientific Codes · IEEE Trans. Parallel Distributed Syst. 2008

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

snapshot-aware defragmentation · 0.4block relocation · 0.4defragmentation · 0.4phase-aware prediction · 0.1multivariate regression · 0.1hardware event counters · 0.1
YearPublicationVenuePosition
2024 I/O in a Flash: Evolution of ONTAP to Low-Latency SSDs
Matthew Curtis-Maury, Ram Kesavan, Bharadwaj V. R., Nikhil Mattankot, Vania Fang, Yash Trivedi, Kesari Mishra
FAST1
2020 Scalable Coordination of Hierarchical Parallelism
abstract
Given continually increasing core counts, multiprocessor software scaling is critical. One set of applications that is especially difficult to parallelize efficiently are those that operate on hierarchical data. In such applications, correct execution relies on all threads coordinating their accesses within the hierarchy. At the same time, high-performance execution requires that this coordination be efficient and that it maximize parallelism.
Vinay Devadas, Matthew Curtis-Maury
ICPP2
2020 Countering Fragmentation in an Enterprise Storage System
abstract
As a file system ages, it can experience multiple forms of fragmentation. Fragmentation of the free space in the file system can lower write performance and subsequent read performance. Client operations as well as internal operations, such as deduplication, can fragment the layout of an individual file, which also impacts file read performance. File systems that allow sub-block granular addressing can gather intra-block fragmentation, which leads to wasted free space. Similarly, wasted space can also occur when a file system writes a collection of blocks out to object storage as a single large object, because the constituent blocks can become free at different times. The impact of fragmentation also depends on the underlying storage media. This article studies each form of fragmentation in the NetApp ® WAFL ® file system, and explains how the file system leverages a storage virtualization layer for defragmentation techniques that physically relocate blocks efficiently, including those in read-only snapshots. The article analyzes the effectiveness of these techniques at reducing fragmentation and improving overall performance across various storage media.
Ram Kesavan, Matthew Curtis-Maury, Vinay Devadas, Kesari Mishra
ACM Trans. Storage2
2019 Storage Gardening: Using a Virtualization Layer for Efficient Defragmentation in the WAFL File System
Ram Kesavan, Matthew Curtis-Maury, Vinay Devadas, Kesari Mishra
FAST2
2018 Efficient Search for Free Blocks in the WAFL File System
abstract
The WAFL® write allocator is responsible for assigning blocks on persistent storage to data in a way that maximizes both write throughput to the storage media and subsequent read performance of data. The ability to quickly and efficiently guide the write allocator toward desirable regions of available free space is critical to achieving that goal. This ability is influenced by several factors, such as any underlying RAID geometry, media-specific attributes such as erase-block size of solid state drives or zone size of shingled magnetic hard drives, and free space fragmentation. This paper presents and evaluates the techniques used by the WAFL write allocator to efficiently find regions of free space.
Ram Kesavan, Matthew Curtis-Maury, Mrinal K. Bhattacharjee
ICPP2
2017 Scalable Write Allocation in the WAFL File System
abstract
Enterprise storage systems must scale to increasing core counts to meet stringent performance requirements. Both the NetApp®Data ONTAP®storage operating system and its WAFL®file system have been incrementally parallelized over the years, but some components remain single-threaded. The WAFL write allocator, which is responsible for assigning blocks on persistent storage to dirty data in a way that maximizes write throughput to the storage media, is single-threaded and has become a major scalability bottleneck. This paper presents a new write allocation architecture, White Alligator, for the WAFL file system that scales performance on many cores. We also place the new architecture in the context of the historical parallelization of WAFL and discuss the architectural decisions that have facilitated this parallelism. The resulting system demonstrates increased scalability that results in throughput gains of up to 274% on a many-core storage system.
Matthew Curtis-Maury, Ram Kesavan, Mrinal K. Bhattacharjee
ICPP1
2016 Think Global, Act Local: A Buffer Cache Design for Global Ordering and Parallel Processing in the WAFL File System
abstract
Given the enormous disparity in access speeds between main memory and storage media, modern storage servers must leverage highly effective buffer cache policies to meet demanding performance requirements. At the same time, these page replacement policies need to scale efficiently with ever-increasing core counts and memory sizes, which necessitate parallel buffer cache management. However, these requirements of effectiveness and scalability are at odds, because centralized processing does not scale with more processors and parallel policies are a challenge to implement with maximum effectiveness. We have overcome this difficulty in the NetApp Data ONTAP WAFL file system by using a sophisticated technique to simultaneously allow global buffer prioritization while providing parallel management operations. In addition, we have extended the buffer cache to provide a soft isolation of different workloads' buffer cache usage, which is akin to buffer cache quality of server (QoS). This paper presents the design and implementation of these significant extensions in the buffer cache of a high-performance commercial file system.
Peter R. Denz, Matthew Curtis-Maury, Vinay Devadas
ICPP2
2016 To Waffinity and Beyond: A Scalable Architecture for Incremental Parallelization of File System Code
Matthew Curtis-Maury, Vinay Devadas, Vania Fang
OSDI1
2010 Comparing Scalability Prediction Strategies on an SMP of CMPs
Matthew Curtis-Maury, Sally A. McKee, Filip Blagojevic, Dimitrios S. Nikolopoulos, Bronis R. de Supinski, Martin Schulz 0001
Euro-Par (1)2
2008 Prediction models for multi-dimensional power-performance optimization on many cores
abstract
Power has become a primary concern for HPC systems. Dynamic voltage and frequency scaling (DVFS) and dynamic concurrency throttling (DCT) are two software tools (or knobs) for reducing the dynamic power consumption of HPC systems. To date, few works have considered the synergistic integration of DVFS and DCT in performance-constrained systems, and, to the best of our knowledge, no prior research has developed application-aware simultaneous DVFS and DCT controllers in real systems and parallel programming frameworks. We present a multi-dimensional, online performance predictor, which we deploy to address the problem of simultaneous runtime optimization of DVFS and DCT on multi-core systems. We present results from an implementation of the predictor in a runtime library linked to the Intel OpenMP environment and running on an actual dual-processor quad-core system. We show that our predictor derives near-optimal settings of the power-aware program adaptation knobs that we consider. Our overall framework achieves significant reductions in energy (19% mean) and ED2 (40% mean), through simultaneous power savings (6% mean) and performance improvements (14% mean). We also find that our framework outperforms earlier solutions that adapt only DVFS or DCT, as well as one that sequentially applies DCT then DVFS. Further, our results indicate that prediction-based schemes for runtime adaptation compare favorably and typically improve upon heuristic search-based approaches in both performance and energy savings.
Matthew Curtis-Maury, Ankur Shah, Filip Blagojevic, Dimitrios S. Nikolopoulos, Bronis R. de Supinski, Martin Schulz 0001
PACT1
2008 Scheduling Asymmetric Parallelism on a PlayStation3 Cluster
abstract
Understanding the potential and implications of asymmetric multi-core processors for cluster computing is necessary, as these processors are rapidly becoming mainstream components in HPC environments. In this paper we evaluate a Linux cluster of Sony PlayStation3 consoles, using microbenchmarks and bioinformatics applications. We proceed to develop a model and scheduling techniques for effective execution of parallel applications on this low-cost, yet unconventional HPC platform based on the Cell/BE processor. We present an analytical formulation of layered parallelism for clusters of asymmetric multi-core multiprocessors and propose new co-scheduling heuristics for effectively executing MPI code with nested task and data parallelism on these systems. Our model has low execution time prediction error and is reliable in predicting optimal mappings of nested parallelism in MPI programs on the PS3 cluster. The presented co-scheduling heuristics reduce slack time on the accelerator cores of the PS3 and improve the performance of MPI applications by 1.7-2.7x, when compared against the native OS scheduler.
Filip Blagojevic, Matthew Curtis-Maury, Jae-Seung Yeom, Scott Schneider 0001, Dimitrios S. Nikolopoulos
CCGRID2
2008 VT-ASOS: Holistic system software customization for many cores
abstract
VT-ASOS is a framework for holistic and continuous customization of system software on HPC systems. The framework leverages paravirtualization technology. VT-ASOS extends the Xen hypervisor with interfaces, mechanisms, and policies for supporting application-specific resource management schemes on many-core systems, while retaining the advantages of virtualization, including protection, performance isolation, and fault tolerance. We outline the VTASOS framework and present results from a preliminary prototype, which enables static customization of scheduler parameters and runtime adaptation of parallel virtual machines.
Dimitrios S. Nikolopoulos, Godmar Back, Jyotirmaya Tripathi, Matthew Curtis-Maury
IPDPS4
2008 Prediction-Based Power-Performance Adaptation of Multithreaded Scientific Codes
abstract
Computing has recently reached an inflection point with the introduction of multi-core processors. On-chip thread-level parallelism is doubling approximately every other year. Concurrency lends itself naturally to allowing a program to trade performance for power savings by regulating the number of active cores, however in several domains users are unwilling to sacrifice performance to save power. We present a prediction model for identifying energy-efficient operating points of concurrency in well-tuned multithreaded scientific applications, and a runtime system which uses live program analysis to optimize applications dynamically. We describe a dynamic, phase-aware performance prediction model that combines multivariate regression techniques with runtime analysis of data collected from hardware event counters to locate optimal operating points of concurrency. Using our model, we develop a prediction-driven, phase-aware runtime optimization scheme that throttles concurrency so that power consumption can be reduced and performance can be set at the knee of the scalability curve of each program phase. The use of prediction reduces the overhead of searching the optimization space while achieving near-optimal performance and power savings. A thorough evaluation of our approach shows a reduction in power consumption of 10.8% simultaneous with an improvement in performance of 17.9%, resulting in energy savings of 26.7%.
Matthew Curtis-Maury, Filip Blagojevic, Christos D. Antonopoulos, Dimitrios S. Nikolopoulos
IEEE Trans. Parallel Distributed Syst.1
2007 Identifying energy-efficient concurrency levels using machine learning
abstract
Multicore microprocessors have been largely motivated by the diminishing returns in performance and the increased power consumption of single-threaded ILP microprocessors. With the industry already shifting from multicore to many-core microprocessors, software developers must extract more thread-level parallelism from applications. Unfortunately, low power-efficiency and diminishing returns in performance remain major obstacles with many cores. Poor interaction between software and hardware, and bottlenecks in shared hardware structures often prevent scaling to many cores, even in applications where a high degree of parallelism is potentially available. In some cases, throwing additional cores at a problem may actually harm performance and increase power consumption. Better use of otherwise limitedly beneficial cores by software components such as hypervisors and operating systems can improve system-wide performance and reliability, even in cases where power consumption is not a main concern. In response to these observations, we evaluate an approach to throttle concurrency in parallel programs dynamically. We throttle concurrency to levels with higher predicted efficiency from both performance and energy standpoints, and we do so via machine learning, specifically artificial neural networks (ANNs). One advantage of using ANNs over similar techniques previously explored is that the training phase is greatly simplified, thereby reducing the burden on the end user. Using machine learning in the context of concurrency throttling is novel. We show that ANNs are effective for identifying energy-efficient concurrency levels in multithreaded scientific applications, and we do so using physical experimentation on a state-of-the-art quad-core Xeon platform.
Matthew Curtis-Maury, Sally A. McKee, Filip Blagojevic, Dimitrios S. Nikolopoulos, Bronis R. de Supinski, Martin Schulz 0001
CLUSTER1
2007 Runtime scheduling of dynamic parallelism on accelerator-based multi-core systems
Filip Blagojevic, Dimitrios S. Nikolopoulos, Alexandros Stamatakis, Christos D. Antonopoulos, Matthew Curtis-Maury
Parallel Comput.5
2006 Online power-performance adaptation of multithreaded programs using hardware event-based prediction
abstract
With high-end systems featuring multicore/multithreaded processors and high component density, power-aware high-performance multithreading libraries become a critical element of the system software stack. Online power and performance adaptation of multithreaded code from within user-level runtime libraries is a relatively new and unexplored area of research. We present a user-level library framework for nearly optimal online adaptation of multithreaded codes for low-power, high-performance execution. Our framework operates by regulating concurrency and changing the processors/threads configuration as the program executes. It is innovative in that it uses fast, runtime performance prediction derived from hardware event-driven profiling, to select thread granularities that achieve nearly optimal energy-efficiency points. The use of predictors substantially reduces the runtime cost of granularity control and program adaptation. Our framework achieves performance and ED2 (energy-delay-squared) levels which are: i) comparable to or better than those of oracle-derived offline predictors; ii) significantly better than those of online predictors using exhaustive or localized linear search. The complete prediction and adaptation framework is implemented on a real multi-SMT system with Intel Hyperthreaded processors and embeds adaptation capabilities in OpenMP programs.
Matthew Curtis-Maury, James Dzierwa, Christos D. Antonopoulos, Dimitrios S. Nikolopoulos
ICS1
2006 Online strategies for high-performance power-aware thread execution on emerging multiprocessors
abstract
Granularity control is an effective means for trading power consumption with performance on dense shared memory multiprocessors, such as multi-SMT and multi-CMP systems. With granularity control, the number of threads used to execute an application, or part of an application, is changed, thereby also changing the amount of work done by each active thread. In this paper, we analyze the energy/performance trade-off of varying thread granularity in parallel benchmarks written for shared memory systems. We use physical experimentation on a real multi-SMT system and a power estimation model based on the die areas of processor components and component activity factors obtained from a hardware event monitor. We also present HPPATCH, a runtime algorithm for live tuning of thread granularity, which attempts to simultaneously reduce both execution time and processor power consumption.
Matthew Curtis-Maury, James Dzierwa, Christos D. Antonopoulos, Dimitrios S. Nikolopoulos
IPDPS1