Demo Data from EDBT 2026 / reviewers in the wild / expert
Sanket Tavarageri
dblp:08/8025
· DBLP profile ↗
7ranked-venue papers
4as first author
1since 2021 · last 2021
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 5 · 3 first-author · 1 since 2021Software engineering, systems software and programming languages · 2 · 1 first-authorArtificial intelligence and machine learning · 1Databases, 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.
| Software engineering, system software, and programming languages
2 papers |
Compilers and program optimization · 95% Program analysis · 5% | |
| Computer architecture, parallel and distributed computing, and storage systems
2 papers |
Hardware reliability and fault tolerance · 72% Hardware accelerators and domain-specific architectures · 28% |
Topics — the 6 heaviest of 6, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Compilers and program optimization
code generation |
0.5 | 1 | 2021 | PolyDL: Polyhedral Optimizations for Creation of High-performance DL Primitives · ACM Trans. Archit. Code Optim. 2021 |
Compilers and program optimization › loop transformation
polyhedral compilation |
0.5 | 1 | 2021 | PolyDL: Polyhedral Optimizations for Creation of High-performance DL Primitives · ACM Trans. Archit. Code Optim. 2021 |
Hardware reliability and fault tolerance
error detection and correction |
0.2 | 1 | 2014 | Compiler-assisted detection of transient memory errors · PLDI 2014 |
Hardware reliability and fault tolerance
soft errors |
0.2 | 1 | 2014 | Compiler-assisted detection of transient memory errors · PLDI 2014 |
Hardware accelerators and domain-specific architectures
machine learning accelerator |
0.1 | 1 | 2021 | PolyDL: Polyhedral Optimizations for Creation of High-performance DL Primitives · ACM Trans. Archit. Code Optim. 2021 |
Program analysis › error detection
compile-time error detection |
0.1 | 1 | 2014 | Compiler-assisted detection of transient memory errors · PLDI 2014 |
Methods — techniques the papers use, named apart from their topics
polyhedral model · 1.0operator fusion · 1.0auto-tuning · 1.0compiler instrumentation · 0.4
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2021 | PolyDL: Polyhedral Optimizations for Creation of High-performance DL PrimitivesabstractDeep Neural Networks (DNNs) have revolutionized many aspects of our lives. The use of DNNs is becoming ubiquitous, including in software for image recognition, speech recognition, speech synthesis, language translation, to name a few. The training of DNN architectures, however, is computationally expensive. Once the model is created, its use in the intended application—the inference task, is computationally heavy too and the inference needs to be fast for real time use. For obtaining high performance today, the code of Deep Learning (DL) primitives optimized for specific architectures by expert programmers exposed via libraries is the norm. However, given the constant emergence of new DNN architectures, creating hand optimized code is expensive, slow and is not scalable. To address this performance-productivity challenge, in this article we present compiler algorithms to automatically generate high-performance implementations of DL primitives that closely match the performance of hand optimized libraries. We develop novel data reuse analysis algorithms using the polyhedral model to derive efficient execution schedules automatically. In addition, because most DL primitives use some variant of matrix multiplication at their core, we develop a flexible framework where it is possible to plug in library implementations of the same in lieu of a subset of the loops. We show that such a hybrid compiler plus a minimal library-use approach results in state-of-the-art performance. We develop compiler algorithms to also perform operator fusions that reduce data movement through the memory hierarchy of the computer system. Using Convolution Neural Network (CNN) models and matrix multiplication operations, we demonstrate that our approach automatically creates high performing DNN building blocks whose performance matches the performance of hand-crafted kernels of Intel’s oneDNN library on high end CPUs. At the same time, our techniques take only a fraction of time (1/20 or less) compared to AutoTVM, a deep learning auto-tuner to create optimized implementations. Sanket Tavarageri, Alexander Heinecke, Sasikanth Avancha, Bharat Kaul, Gagandeep Goyal, Ramakrishna Upadrasta |
ACM Trans. Archit. Code Optim. | 1 |
| 2017 | A medical price prediction system using hierarchical decision treesabstractThe health care costs constitute a significant fraction of the U.S. economy - nearly 20% of the Gross Domestic Product (GDP) is spent on health care. The health spending in the US is the highest among all developed nations in absolute numbers as well as a percentage of the economy. The U.S. government bears a large portion of seniors' health expenditure through its Medicare program. The growing health related expenses combined with the fact that the baby-boomer generation is retiring, and hence they will be eligible for Medicare, puts a great burden on the U.S. exchequer. Therefore, it is essential to contain health related payments through all means possible. In this paper, we develop a medical price prediction system using Medicare payment datasets. Such a system will aid in steering patients to cost effective providers and thereby curb health spending. The policymakers can also use the tool to better understand which providers are relatively expensive and take punitive actions if necessary. We develop a novel hierarchical decision tree approach to predict prices. We conduct extensive experiments to compare various machine learning algorithms, including hierarchical decision trees, RandomForests, linear regression, and Gradient-boosted trees. The experiments indicate that the price prediction system achieves high accuracy. Anuja Tike, Sanket Tavarageri |
IEEE BigData | 2 |
| 2016 | Compiler Support for Software Cache CoherenceabstractThe advent of multi-core processors with a large number of cores and heterogeneous architecture poses challenges for achieving scalable cache coherence. Several recent research efforts have focused on simplifying or abandoning hardware cache coherence protocols. However, this adds a significant burden on the programmer, unless automated compiler support is developed. In this paper, we develop compiler support for parallel systems that delegate the task of maintaining cache coherence to software. Algorithms to automatically insert software cache coherence instructions into parallel applications are presented. This frees the programmer from having to manually insert coherence annotations, which can be tedious and error-prone. Experimental evaluation over a number of benchmarks demonstrates that effective compiler techniques can make software cache coherence competitive with hardware coherence schemes both in terms of energy and performance. Sanket Tavarageri, Wooil Kim, Josep Torrellas, P. Sadayappan |
HiPC | 1 |
| 2016 | Architecting and Programming a Hardware-Incoherent Multiprocessor Cache HierarchyabstractNew architectures for extreme-scale computing need to be designed for higher energy efficiency than current systems. One recently-proposed extreme-scale many core radically simplifies the architecture, and proposes a cluster-based on-chip memory hierarchy without hardware cache coherence. To program for such an environment, this paper proposes two approaches. They use shared-memory programming either inside clusters only, or both inside and across clusters. Both approaches rely on ISA support for writeback and self-invalidation operations. Our simulation results show that hardware-incoherent cache hierarchies with our support deliver reasonable performance for applications that were not written for such hierarchies. Specifically, for execution within a cluster, the average execution time of the applications is 2% higher than with hardware cache coherence, for execution across multiple clusters, it is 5% higher than with hardware cache coherence. This is accomplished with minimal hardware support. Wooil Kim, Sanket Tavarageri, P. Sadayappan, Josep Torrellas |
IPDPS | 2 |
| 2014 | Compiler-assisted detection of transient memory errorsabstractThe probability of bit flips in hardware memory systems is projected to increase significantly as memory systems continue to scale in size and complexity. Effective hardware-based error detection and correction require that the complete data path, involving all parts of the memory system, be protected with sufficient redundancy. First, this may be costly to employ on commodity computing platforms, and second, even on high-end systems, protection against multi-bit errors may be lacking. Therefore, augmenting hardware error detection schemes with software techniques is of considerable interest. Sanket Tavarageri, Sriram Krishnamoorthy, P. Sadayappan |
PLDI | 1 |
| 2011 | Dynamic selection of tile sizesabstractTiling is a key program transformation to achieve effective data reuse. But the performance of tiled programs can vary considerably with different tile sizes. Hence the selection of good tile sizes is crucial. Although there has been considerable research on analytical models for selecting tile sizes, they have not been shown to be effective in finding optimal tile sizes across a range of programs and target architectures. Auto-tuning is a viable alternative that is often used in practice, and involves the execution of different combinations of tile sizes in a systematic fashion to find the best ones. But this is sometimes infeasible - for instance when the program is to be run on unknown platforms (e.g., cloud environments). We propose a novel approach for generating code to enable dynamic tile size selection, based on monitoring the performance of a few loop iterations. The selection operates at run time on the “production” run, without any a priori knowledge of the execution environment. We discuss the theory and implementation of a parametric tiled code generator that enables run-time tile size tuning and describe a search strategy to determine effective tile sizes. Experimental results demonstrate the effectiveness of the approach. Sanket Tavarageri, Louis-Noël Pouchet, J. Ramanujam, Atanas Rountev, P. Sadayappan |
HiPC | 1 |
| 2010 | Parameterized tiling revisitedabstractTiling, a key transformation for optimizing programs, has been widely studied in literature. Parameterized tiled code is important for auto-tuning systems since they often execute a large number of runs with dynamically varied tile sizes. Previous work on tiled code generation has addressed parameterized tiling for the sequential context, and the parallel case with fixed compile-time constants for tile sizes. In this paper, we revisit the problem of generating tiled code using parametric tile sizes. We develop a systematic approach to formulate tiling transformations through manipulation of linear inequalities and develop a novel approach to overcoming the fundamental obstacle faced by previous approaches regarding generation of parallel parameterized tiled code. To the best of our knowledge, the approach proposed in this paper is the first compile-time solution to the problem of parallel parameterized code generation for affine imperfectly nested loops. Experimental results demonstrate the effectiveness of the implemented system. Muthu Manikandan Baskaran, Albert Hartono, Sanket Tavarageri, Thomas Henretty, J. Ramanujam, P. Sadayappan |
CGO | 3 |