Demo Data from EDBT 2026 / reviewers in the wild / expert
Matthew J. Thazhuthaveetil
dblp:16/2803 · also Matthew Jacob Thazhuthaveetil, Matthew Thazhuthaveetil
· DBLP profile ↗
25ranked-venue papers
2as first author
2since 2021 · last 2025
0009-0007-1550-8121ORCID · corroborated
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 22 · 2 since 2021Software engineering, systems software and programming languages · 6Artificial intelligence and machine learning · 1 · 1 first-authorDatabases, data management, data science and information retrieval · 1 · 1 first-authorTheory of computation · 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 |
GPUs and heterogeneous computing · 55% Performance modeling and evaluation · 23% Processor architecture and microarchitecture · 8% |
Topics — the 13 heaviest of 15, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
GPUs and heterogeneous computing › GPU scheduling
concurrent kernel execution |
0.2 | 1 | 2013 | Improving GPGPU concurrency with elastic kernels · ASPLOS 2013 |
GPUs and heterogeneous computing
GPU computing |
0.2 | 1 | 2013 | Improving GPGPU concurrency with elastic kernels · ASPLOS 2013 |
GPUs and heterogeneous computing
GPU resource management |
0.2 | 1 | 2013 | Improving GPGPU concurrency with elastic kernels · ASPLOS 2013 |
Performance modeling and evaluation
processor performance modeling |
0.1 | 2 | 2006 | A Predictive Performance Model for Superscalar Processors · MICRO 2006 Construction and use of linear regression models for processor performance analysis · HPCA 2006 |
Electronic design automation › design space exploration
microarchitecture design space exploration |
0.1 | 1 | 2006 | A Predictive Performance Model for Superscalar Processors · MICRO 2006 |
Performance modeling and evaluation › performance prediction
regression-based performance model |
0.1 | 1 | 2006 | Construction and use of linear regression models for processor performance analysis · HPCA 2006 |
Performance modeling and evaluation
simulation |
0.0 | 1 | 2006 | Construction and use of linear regression models for processor performance analysis · HPCA 2006 |
Memory systems
cache coherence |
0.0 | 1 | 1990 | A write update cache coherence protocol for MIN-based multiprocessors with accessibility-based split caches · SC 1990 |
Memory systems › cache coherence › cache coherence protocol
snoopy coherence |
0.0 | 1 | 1990 | A write update cache coherence protocol for MIN-based multiprocessors with accessibility-based split caches · SC 1990 |
Processor architecture and microarchitecture
instruction set architecture |
0.0 | 1 | 1986 | An Architecture for Efficient Lisp List Access · ISCA 1986 |
Memory systems
memory management |
0.0 | 1 | 1986 | An Architecture for Efficient Lisp List Access · ISCA 1986 |
Performance modeling and evaluation › queueing models
mean value analysis |
0.0 | 1 | 1990 | A write update cache coherence protocol for MIN-based multiprocessors with accessibility-based split caches · SC 1990 |
Performance modeling and evaluation
queueing models |
0.0 | 1 | 1990 | A write update cache coherence protocol for MIN-based multiprocessors with accessibility-based split caches · SC 1990 |
Methods — techniques the papers use, named apart from their topics
elastic kernel transformation · 0.2simulation · 0.1radial basis function networks · 0.1nonlinear modeling · 0.1linear regression · 0.1latin hypercube sampling · 0.1d-optimal design · 0.1akaike information criterion · 0.1queueing model · 0.0mean value analysis · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2025 | UJOpt: Heuristic Approach for Applying Unroll-and-Jam Optimization and Loop Order SelectionabstractLoop transformations help exploit features such as parallelism (task and data-level parallelisms) and locality (temporal and spatial localities) to achieve higher performance in multi-dimensional loops.Loop unroll-and-jam is one such transformation that can exploit parallelism available in the outer loop.However, not all loops benefit from the unrolland-jam transformation.Surprisingly this is true even when the unroll-and-jam transformation exposes fine-grain datalevel parallelism and vectorization at non-innermost loops.In this work, we propose UJOpt, a heuristic based approach to determine whether unroll-and-jam is beneficial for a given loop nest and the best-performing loop order (in terms of lower execution cycles).Experimental evaluation on 32core Intel Xeon Cascadelake architecture demonstrates that our approach identifies loop orders whose performance on average is within 7% from that of the optimal loop order, for loops taken from the Polybench test suite. Shilpa Babalad, Shirish K. Shevade, Matthew J. Thazhuthaveetil, R. Govindarajan |
ICS | 3 |
| 2024 | Tile Size and Loop Order Selection using Machine Learning for Multi-/Many-Core ArchitecturesabstractLoop tiling and loop interchange (or permutation) are techniques that can expose task and data-level parallelisms and can exploit data locality available in multi-dimensional loop nests. Choosing the appropriate tile size and loop order is important to achieve significant performance improvement. However, the effect of these transformations on the performance of the loop nest is not straightforward due to the complex interplay of several architectural features in multi-/many-core architectures. In this work, we propose using a supervised learning technique and develop a Support Vector Machine (SVM) based hierarchical classifier to identify the best-performing tile size and loop order for a given loop nest. Our approach results in identifying tile sizes and loop orders whose performance, on average, is within 18% and 9% of the optimal performance for two sets of loop nests on Intel Xeon Cascadelake architecture. Further, our method outperforms state-of-the-art techniques, Pluto and Polly, with a geometric mean speedup of 1.35x to 1.58x. Shilpa Babalad, Shirish K. Shevade, Matthew J. Thazhuthaveetil, R. Govindarajan |
ICS | 3 |
| 2014 | Preemptive thread block scheduling with online structural runtime prediction for concurrent GPGPU kernelsabstractRecent NVIDIA Graphics Processing Units (GPUs) can execute multiple kernels concurrently. On these GPUs, the thread block scheduler (TBS) currently uses the FIFO policy to schedule thread blocks of concurrent kernels. We show that the FIFO policy leaves performance to chance, resulting in significant loss of performance and fairness. To improve performance and fairness, we propose use of the preemptive Shortest Remaining Time First (SRTF) policy instead. Although SRTF requires an estimate of runtime of GPU kernels, we show that such an estimate of the runtime can be easily obtained using online profiling and exploiting a simple observation on GPU kernels' grid structure. Specifically, we propose a novel Structural Runtime Predictor. Using a simple Staircase model of GPU kernel execution, we show that the runtime of a kernel can be predicted by profiling only the first few thread blocks. We evaluate an online predictor based on this model on benchmarks from ERCBench, and find that it can estimate the actual runtime reasonably well after the execution of only a single thread block. Next, we design a thread block scheduler that is both concurrent kernel-aware and uses this predictor. We implement the Shortest Remaining Time First (SRTF) policy and evaluate it on two-program workloads from ER-CBench. SRTF improves STP by 1.18x and ANTT by 2.25x over FIFO. When compared to MPMax, a state-of-the-art resource allocation policy for concurrent kernels, SRTF improves STP by 1.16x and ANTT by 1.3x. To improve fairness, we also propose SRTF/Adaptive which controls resource usage of concurrently executing kernels to maximize fairness. SRTF/Adaptive improves STP by 1.12x, ANTT by 2.23x and Fairness by 2.95x compared to FIFO. Overall, our implementation of SRTF achieves system throughput to within 12.64% of Shortest Job First (SJF, an oracle optimal scheduling policy), bridging 49% of the gap between FIFO and SJF. Sreepathi Pai, R. Govindarajan, Matthew J. Thazhuthaveetil |
PACT | 3 |
| 2013 | Improving GPGPU concurrency with elastic kernelsabstractEach new generation of GPUs vastly increases the resources available to GPGPU programs. GPU programming models (like CUDA) were designed to scale to use these resources. However, we find that CUDA programs actually do not scale to utilize all available resources, with over 30% of resources going unused on average for programs of the Parboil2 suite that we used in our work. Current GPUs therefore allow concurrent execution of kernels to improve utilization. In this work, we study concurrent execution of GPU kernels using multiprogram workloads on current NVIDIA Fermi GPUs. On two-program workloads from the Parboil2 benchmark suite we find concurrent execution is often no better than serialized execution. We identify that the lack of control over resource allocation to kernels is a major serialization bottleneck. We propose transformations that convert CUDA kernels into elastic kernels which permit fine-grained control over their resource usage. We then propose several elastic-kernel aware concurrency policies that offer significantly better performance and concurrency compared to the current CUDA policy. We evaluate our proposals on real hardware using multiprogrammed workloads constructed from benchmarks in the Parboil 2 suite. On average, our proposals increase system throughput (STP) by 1.21x and improve the average normalized turnaround time (ANTT) by 3.73x for two-program workloads when compared to the current CUDA concurrency implementation. Sreepathi Pai, Matthew J. Thazhuthaveetil, R. Govindarajan |
ASPLOS | 2 |
| 2012 | Fast and efficient automatic memory management for GPUs using compiler-assisted runtime coherence schemeabstractExploiting the performance potential of GPUs requires managing the data transfers to and from them efficiently which is an error-prone and tedious task. In this paper, we develop a software coherence mechanism to fully automate all data transfers between the CPU and GPU without any assistance from the programmer. Our mechanism uses compiler analysis to identify potential stale accesses and uses a runtime to initiate transfers as necessary. This allows us to avoid redundant transfers that are exhibited by all other existing automatic memory management proposals. Sreepathi Pai, R. Govindarajan, Matthew J. Thazhuthaveetil |
PACT | 3 |
| 2012 | CUDA-For-Clusters: A System for Efficient Execution of CUDA Kernels on Multi-core Clusters
Raghu Prabhakar, R. Govindarajan, Matthew J. Thazhuthaveetil |
Euro-Par | 3 |
| 2009 | Software Pipelined Execution of Stream Programs on GPUsabstractThe StreamIt programming model has been proposed to exploit parallelism in streaming applications on general purpose multi-core architectures. This model allows programmers to specify the structure of a program as a set of filters that act upon data, and a set of communication channels between them. The StreamIt graphs describe task, data and pipeline parallelism which can be exploited on modern graphics processing units (GPUs), as they support abundant parallelism in hardware. In this paper, we describe the challenges in mapping StreamIt to GPUs and propose an efficient technique to software pipeline the execution of stream programs on GPUs. We formulate this problem - both scheduling and assignment of filters to processors - as an efficient integer linear program (ILP), which is then solved using ILP solvers. We also describe a novel buffer layout technique for GPUs which facilitates exploiting the high memory bandwidth available in GPUs. The proposed scheduling utilizes both the scalar units in GPU, to exploit data parallelism, and multiprocessors, to exploit task and pipeline parallelism. Further it takes into consideration the synchronization and bandwidth limitations of GPUs, and yields speedups between 1.87X and 36.83X over a single threaded CPU. Abhishek Udupa, R. Govindarajan, Matthew J. Thazhuthaveetil |
CGO | 3 |
| 2009 | Synergistic execution of stream programs on multicores with acceleratorsabstractThe StreamIt programming model has been proposed to exploit parallelism in streaming applications on general purpose multicore architectures. The StreamIt graphs describe task, data and pipeline parallelism which can be exploited on accelerators such as Graphics Processing Units (GPUs) or CellBE which support abundant parallelism in hardware. Abhishek Udupa, R. Govindarajan, Matthew J. Thazhuthaveetil |
LCTES | 3 |
| 2008 | Impact of message compression on the scalability of an atmospheric modeling application on clusters
V. Santhosh Kumar, Ravi S. Nanjundiah, Matthew J. Thazhuthaveetil, R. Govindarajan |
Parallel Comput. | 3 |
| 2007 | Microarchitecture Sensitive Empirical Models for Compiler OptimizationsabstractThis paper proposes the use of empirical modeling techniques for building microarchitecture sensitive models for compiler optimizations. The models we build relate program performance to settings of compiler optimization flags, associated heuristics and key microarchitectural parameters. Unlike traditional analytical modeling methods, this relationship is learned entirely from data obtained by measuring performance at a small number of carefully selected compiler/microarchitecture configurations. We evaluate three different learning techniques in this context viz. linear regression, adaptive regression splines and radial basis function networks. We use the generated models to a) predict program performance at arbitrary compiler/microarchitecture configurations, b) quantify the significance of complex interactions between optimizations and the microarchitecture, and c) efficiently search for 'optimal' settings of optimization flags and heuristics for any given micro architectural configuration. Our evaluation using benchmarks from the SPEC CPU2000 suites suggests that accurate models (< 5% average error in prediction) can be generated using a reasonable number of simulations. We also find that using compiler settings prescribed by a model-based search can improve program performance by as much as 19% (with an average of 9.5%) over highly optimized binaries Kapil Vaswani, Matthew J. Thazhuthaveetil, Y. N. Srikant, P. J. Joseph |
CGO | 2 |
| 2006 | Construction and use of linear regression models for processor performance analysisabstractProcessor architects have a challenging task of evaluating a large design space consisting of several interacting parameters and optimizations. In order to assist architects in making crucial design decisions, we build linear regression models that relate processor performance to micro-architectural parameters, using simulation based experiments. We obtain good approximate models using an iterative process in which Akaike's information criteria is used to extract a good linear model from a small set of simulations, and limited further simulation is guided by the model using D-optimal experimental designs. The iterative process is repeated until desired error bounds are achieved. We used this procedure to establish the relationship of the CPI performance response to 26 key micro-architectural parameters using a detailed cycle-by-cycle superscalar processor simulator. The resulting models provide a significance ordering on all micro-architectural parameters and their interactions, and explain the performance variations of micro-architectural techniques. P. J. Joseph, Kapil Vaswani, Matthew J. Thazhuthaveetil |
HPCA | 3 |
| 2006 | Exploiting programmable network interfaces for parallel query execution in workstation clustersabstractWorkstation clusters equipped with high performance interconnect having programmable network processors facilitate interesting opportunities to enhance the performance of parallel application run on them. In this paper, we propose schemes where certain application level processing in parallel database query execution is performed on the network processor. We evaluate the performance of TPC-H queries executing on a high end cluster where all tuple processing is done on the host processor, using a timed Petri net model, and find that tuple processing costs on the host processor dominate the execution time. These results are validated using a small cluster. We therefore propose 4 schemes where certain tuple processing activity is offloaded to the network processor. The first 2 schemes offload the tuple splitting activity - computation to identify the node on which to process the tuples, resulting in an execution time speedup of 1.09 relative to the base scheme, but with I/O bus becoming the bottleneck resource. In the 3rd scheme in addition to offloading tuple processing activity, the disk and network interface are combined to avoid the I/O bus bottleneck, which results in speedups up to 1.16, but with high host processor utilization. Our 4th scheme where the network processor also performs apart of join operation along with the host processor, gives a speedup of 1.47 along with balanced system resource utilizations. Further we observe that the proposed schemes perform equally well even in a scaled architecture i.e., when the number of processors is increased from 2 to 64 V. Santhosh Kumar, Matthew J. Thazhuthaveetil, R. Govindarajan |
IPDPS | 2 |
| 2006 | A Predictive Performance Model for Superscalar ProcessorsabstractDesigning and optimizing high performance microprocessors is an increasingly difficult task due to the size and complexity of the processor design space, high cost of detailed simulation and several constraints that a processor design must satisfy. In this paper, we propose the use of empirical non-linear modeling techniques to assist processor architects in making design decisions and resolving complex trade-offs. We propose a procedure for building accurate non-linear models that consists of the following steps: (i) selection of a small set of representative design points spread across processor design space using latin hypercube sampling, (ii) obtaining performance measures at the selected design points using detailed simulation, (iii) building non-linear models for performance using the function approximation capabilities of radial basis function networks, and (iv) validating the models using an independently and randomly generated set of design points. We evaluate our model building procedure by constructing non-linear performance models for programs from the SPEC CPU2000 benchmark suite with a microarchitectural design space that consists of 9 key parameters. Our results show that the models, built using a relatively small number of simulations, achieve high prediction accuracy (only 2.8% error in CPI estimates on average) across a large processor design space. Our models can potentially replace detailed simulation for common tasks such as the analysis of key microarchitectural trends or searches for optimal processor design points P. J. Joseph, Kapil Vaswani, Matthew J. Thazhuthaveetil |
MICRO | 3 |
| 2005 | A Programmable Hardware Path ProfilerabstractFor aggressive path-based program optimizations to be profitable in cost-sensitive environments, accurate path profiles must be available at low overheads. In this paper, we propose a low-overhead, non-intrusive hardware path profiling scheme that can be programmed to detect several types of paths including acyclic, intra-procedural paths, paths for a whole program path and extended paths. The profiler consists of a path stack, which detects paths and generates a sequence of path descriptors using branch information from the processor pipeline, and a hot path table that collects a profile of hot paths for later use by a program optimizer. With assistance from the processor's event detection logic, our profiler can track a host of architectural metrics along paths, enabling context-sensitive performance monitoring and bottleneck analysis. We illustrate the utility of our scheme by associating paths with a power metric that estimates power consumption in the cache hierarchy caused by instructions along the path. Experiments using programs from the SPEC CPU2000 benchmark suite show that our path profiler, occupying 7KB of hardware real-estate, collects accurate path profiles (average overlap of 88% with a perfect profile) at negligible execution time overheads (0.6% on average). Kapil Vaswani, Matthew J. Thazhuthaveetil, Y. N. Srikant |
CGO | 2 |
| 2005 | Offloading Bloom Filter Operations to Network Processor for Parallel Query Processing in Cluster of Workstations
V. Santhosh Kumar, Matthew J. Thazhuthaveetil, R. Govindarajan |
HiPC | 2 |
| 2001 | TWLinuX : Operating System Support for Optimistic Parallel Discrete Event Simulation
Subramania Sharma, Matthew J. Thazhuthaveetil |
HiPC | 2 |
| 1994 | A Cache coherence protocol for MIN-based multiprocessors
Mazin S. Yousif, Chita R. Das, Matthew J. Thazhuthaveetil |
J. Supercomput. | 3 |
| 1993 | A Cache Coherence Protocol for MIN-Based Multprocessors With Limited InclusionabstractIn this paper, we look into a feasible approach to incorporating caches into selected switching ele ments of a multistage interconnection network (MIN)- based multiprocessor. Along with the processor private caches, these switch caches form a two-level cache hi erarchy. Selected switch caches within a particular stage of the MIN are connected by a coherence con trol bus, through which a write-invalidate cache coher ence protocol is maintained. Considering scalability and practicality issues, only limited inclusion between the two cache levels is enforced. A simulation-based performance study is conducted to analyze the impact of the protocol on system performance. Comparison between limited and strict inclusion shows that system performance declines with limited inclusion. Mazin S. Yousif, Chita R. Das, Matthew J. Thazhuthaveetil |
ICPP (1) | 3 |
| 1991 | A Cache-Based Checkpointing Scheme for MIN-Based Multiprocessors
Mazin S. Algudady, Chita R. Das, Matthew J. Thazhuthaveetil |
ICPP (1) | 3 |
| 1991 | Effect of Hot Spots on Multiprocessor Systems Using Circuit Switched Interconnection Networks
Lizy Kurian John, Matthew J. Thazhuthaveetil |
ICPP (1) | 2 |
| 1991 | Parallel hough transform algorithm performance
Matthew J. Thazhuthaveetil, Anish V. Shah |
Image Vis. Comput. | 1 |
| 1990 | Hotspot Contention in Non-Blocking Multistage Interconnection Networks
Robert L. Lesher, Matthew J. Thazhuthaveetil |
ICPP (1) | 2 |
| 1990 | A write update cache coherence protocol for MIN-based multiprocessors with accessibility-based split cachesabstractThe authors present a cache coherence protocol for MIN-based multiprocessors with two distinct private caches: private-block caches containing information private to a processor and shared-block caches containing data accessible by all processors. The protocol utilizes a coherence control bus (snooping) for connecting all shared-block cache controllers. Timing problems due to variable transit delay through the MIN are dealt with by introducing transient states in the protocol. Assuming homogeneity of all nodes, a single-node queuing model is developed to analyze the system performance. This model is solved using the mean-value-analysis technique with protocol state probabilities, and few communication delays as input parameters. System performance measures are verified through simulation.> Mazin S. Algudady, Chita R. Das, Matthew J. Thazhuthaveetil |
SC | 3 |
| 1987 | On the Structural Locality of Reference in LISP List Access Streams
Matthew J. Thazhuthaveetil, Andrew R. Pleszkun |
Inf. Process. Lett. | 1 |
| 1986 | An Architecture for Efficient Lisp List AccessabstractIn this paper, we present a Lisp machine architecture that supports efficient list manipulation. This Lisp architecture is organized as two processing units: a List Processor (LP), that performs all list related operations and manages the list memory, and an Evaluation Processor (EP), that maintains the addressing and control environment. The LP contains a translation table (LPT) that maps a small set of list identifiers into the physical memory addresses of objects. Essentially, the LP and LPT virtualize a list. The EP then operates on these virtualized lists. Such an organization permits the overlap of EP function evaluation with LP memory accesses and management, thus reducing the performance penalties typically associated with Lisp list manipulation activities. We used trace-driven simulations to evaluate this architecture. From our evaluation a relatively small LPT is seen to be sufficient, and to yield “hit rates” on data accesses higher than those of a data cache of comparable size. Andrew R. Pleszkun, Matthew J. Thazhuthaveetil |
ISCA | 2 |