Demo Data from SIGIR 2026 / reviewers in the wild / expert
Subarno Banerjee
dblp:201/4848
· DBLP profile ↗
5ranked-venue papers
4as first author
1since 2021 · last 2023
0000-0001-5449-2264ORCID · corroborated
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 4 · 3 first-author · 1 since 2021Systems, architecture and hardware · 1Security and privacy · 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.
| Software engineering, system software, and programming languages
4 papers |
Program analysis · 60% Programming languages and type systems · 20% Runtime systems and virtual machines · 12% | |
| Network and information security
3 papers |
Systems and software security · 100% | |
| Computer architecture, parallel and distributed computing, and storage systems
1 paper |
Hardware accelerators and domain-specific architectures · 87% Interconnection networks and networks-on-chip · 13% |
Topics — the 11 heaviest of 14, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Program analysis
static analysis |
1.2 | 3 | 2023 | Compositional Taint Analysis for Enforcing Security Policies at Scale · ESEC/SIGSOFT FSE 2023 NullAway: practical type-based null safety for Java · ESEC/SIGSOFT FSE 2019 Sound garbage collection for C using pointer provenance · Proc. ACM Program. Lang. 2020 |
Program analysis › static analysis
taint analysis |
0.7 | 1 | 2023 | Compositional Taint Analysis for Enforcing Security Policies at Scale · ESEC/SIGSOFT FSE 2023 |
Systems and software security
memory safety |
0.4 | 1 | 2020 | Sound garbage collection for C using pointer provenance · Proc. ACM Program. Lang. 2020 |
Systems and software security › memory safety
temporal memory safety |
0.4 | 1 | 2020 | Sound garbage collection for C using pointer provenance · Proc. ACM Program. Lang. 2020 |
Runtime systems and virtual machines
garbage collection |
0.4 | 1 | 2020 | Sound garbage collection for C using pointer provenance · Proc. ACM Program. Lang. 2020 |
Systems and software security
information flow tracking |
0.4 | 1 | 2019 | Iodine: Fast Dynamic Taint Tracking Using Rollback-free Optimistic Hybrid Analysis · IEEE Symposium on Security and Privacy 2019 |
Program analysis › dynamic analysis
dynamic information-flow tracking |
0.4 | 1 | 2019 | Iodine: Fast Dynamic Taint Tracking Using Rollback-free Optimistic Hybrid Analysis · IEEE Symposium on Security and Privacy 2019 |
Programming languages and type systems › type checking
pluggable type checking |
0.4 | 1 | 2019 | NullAway: practical type-based null safety for Java · ESEC/SIGSOFT FSE 2019 |
Programming languages and type systems
type checking |
0.4 | 1 | 2019 | NullAway: practical type-based null safety for Java · ESEC/SIGSOFT FSE 2019 |
Hardware accelerators and domain-specific architectures › machine learning accelerator
DNN training accelerator |
0.3 | 1 | 2017 | ScaleDeep: A Scalable Compute Architecture for Learning and Evaluating Deep Networks · ISCA 2017 |
Hardware accelerators and domain-specific architectures
machine learning accelerator |
0.3 | 1 | 2017 | ScaleDeep: A Scalable Compute Architecture for Learning and Evaluating Deep Networks · ISCA 2017 |
Methods — techniques the papers use, named apart from their topics
object-sensitive analysis · 1.3field-sensitive analysis · 1.3context-sensitive analysis · 1.3compositional analysis · 1.3static analysis · 0.9pointer provenance tracking · 0.9dynamic analysis · 0.9static dataflow analysis · 0.7static data flow analysis · 0.7rollback-free recovery · 0.4profiling · 0.4pluggable type checking · 0.4code annotations · 0.4architectural simulation · 0.3
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2023 | Compositional Taint Analysis for Enforcing Security Policies at ScaleabstractAutomated static dataflow analysis is an effective technique for detecting security critical issues like sensitive data leak, and vulnerability to injection attacks. Ensuring high precision and recall requires an analysis that is context, field and object sensitive. However, it is challenging to attain high precision and recall and scale to large industrial code bases. Compositional style analyses in which individual software components are analyzed separately, independent from their usage contexts, compute reusable summaries of components. This is an essential feature when deploying such analyses in CI/CD at code-review time or when scanning deployed container images. In both these settings the majority of software components stay the same between subsequent scans. However, it is not obvious how to extend such analyses to check the kind of contextual taint specifications that arise in practice, while maintaining compositionality. Subarno Banerjee, Siwei Cui, Michael Emmi, Antonio Filieri, Liana Hadarean, Linghui Luo, Goran Piskachev, Nicolás Rosner, Aritra Sengupta, Omer Tripp, Jingbo Wang 0006 |
ESEC/SIGSOFT FSE | 1 |
| 2020 | Sound garbage collection for C using pointer provenanceabstractGarbage collection (GC) support for unmanaged languages can reduce programming burden in reasoning about liveness of dynamic objects. It also avoids temporal memory safety violations and memory leaks. Sound GC for weakly-typed languages such as C/C++, however, remains an unsolved problem. Current value-based GC solutions examine values of memory locations to discover the pointers, and the objects they point to. The approach is inherently unsound in the presence of arbitrary type casts and pointer manipulations, which are legal in C/C++. Such language features are regularly used, especially in low-level systems code. In this paper, we propose Dynamic Pointer Provenance Tracking to realize sound GC. We observe that pointers cannot be created out-of-thin-air, and they must have provenance to at least one valid allocation. Therefore, by tracking pointer provenance from the source (e.g., malloc) through both explicit data-flow and implicit control-flow, our GC has sound and precise information to compute the set of all reachable objects at any program state. We discuss several static analysis optimizations, that can be employed during compilation aided with profiling, to significantly reduce the overhead of dynamic provenance tracking from nearly 8× to 16% for well-behaved programs that adhere to the C standards. Pointer provenance based sound GC invocation is also 13% faster and reclaims 6% more memory on average, compared to an unsound value-based GC. Subarno Banerjee, David Devecsery, Peter M. Chen, Satish Narayanasamy |
Proc. ACM Program. Lang. | 1 |
| 2019 | NullAway: practical type-based null safety for JavaabstractNullPointerExceptions (NPEs) are a key source of crashes in modern Java programs. Previous work has shown how such errors can be prevented at compile time via code annotations and pluggable type checking. However, such systems have been difficult to deploy on large-scale software projects, due to significant build-time overhead and / or a high annotation burden. This paper presents NullAway, a new type-based null safety checker for Java that overcomes these issues. NullAway has been carefully engineered for low overhead, so it can run as part of every build. Further, NullAway reduces annotation burden through targeted unsound assumptions, aiming for no false negatives in practice on checked code. Our evaluation shows that NullAway has significantly lower build-time overhead (1.15×) than comparable tools (2.8-5.1×). Further, on a corpus of production crash data for widely-used Android apps built with NullAway, remaining NPEs were due to unchecked third-party libraries (64%), deliberate error suppressions (17%), or reflection and other forms of post-checking code modification (17%), never due to NullAway’s unsound assumptions for checked code. Subarno Banerjee, Lazaro Clapp, Manu Sridharan |
ESEC/SIGSOFT FSE | 1 |
| 2019 | Iodine: Fast Dynamic Taint Tracking Using Rollback-free Optimistic Hybrid AnalysisabstractDynamic information-flow tracking (DIFT) is useful for enforcing security policies, but rarely used in practice, as it can slow down a program by an order of magnitude. Static program analyses can be used to prove safe execution states and elide unnecessary DIFT monitors, but the performance improvement from these analyses is limited by their need to maintain soundness. In this paper, we present a novel optimistic hybrid analysis (OHA) to significantly reduce DIFT overhead while still guaranteeing sound results. It consists of a predicated whole-program static taint analysis, which assumes likely invariants gathered from profiles to dramatically improve precision. The optimized DIFT is sound for executions in which those invariants hold true, and recovers to a conservative DIFT for executions in which those invariants are false. We show how to overcome the main problem with using OHA to optimize live executions, which is the possibility of unbounded rollbacks. We eliminate the need for any rollback during recovery by tailoring our predicated static analysis to eliminate only safe elisions of noop monitors. Our tool, Iodine, reduces the overhead of DIFT for enforcing security policies to 9%, which is 4.4× lower than that with traditional hybrid analysis, while still being able to be run on live systems. Subarno Banerjee, David Devecsery, Peter M. Chen, Satish Narayanasamy |
IEEE Symposium on Security and Privacy | 1 |
| 2017 | ScaleDeep: A Scalable Compute Architecture for Learning and Evaluating Deep NetworksabstractDeep Neural Networks (DNNs) have demonstrated state-of-the-art performance on a broad range of tasks involving natural language, speech, image, and video processing, and are deployed in many real world applications. However, DNNs impose significant computational challenges owing to the complexity of the networks and the amount of data they process, both of which are projected to grow in the future. To improve the efficiency of DNNs, we propose ScaleDeep, a dense, scalable server architecture, whose processing, memory and interconnect subsystems are specialized to leverage the compute and communication characteristics of DNNs. While several DNN accelerator designs have been proposed in recent years, the key difference is that ScaleDeep primarily targets DNN training, as opposed to only inference or evaluation. The key architectural features from which ScaleDeep derives its efficiency are: (i) heterogeneous processing tiles and chips to match the wide diversity in computational characteristics (FLOPs and Bytes/FLOP ratio) that manifest at different levels of granularity in DNNs, (ii) a memory hierarchy and 3-tiered interconnect topology that is suited to the memory access and communication patterns in DNNs, (iii) a low-overhead synchronization mechanism based on hardware data-flow trackers, and (iv) methods to map DNNs to the proposed architecture that minimize data movement and improve core utilization through nested pipelining. We have developed a compiler to allow any DNN topology to be programmed onto ScaleDeep, and a detailed architectural simulator to estimate performance and energy. The simulator incorporates timing and power models of ScaleDeep's components based on synthesis to Intel's 14nm technology. We evaluate an embodiment of ScaleDeep with 7032 processing tiles that operates at 600 MHz and has a peak performance of 680 TFLOPs (single precision) and 1.35 PFLOPs (half-precision) at 1.4KW. Across 11 state-of-the-art DNNs containing 0.65M-14.9M neurons and 6.8M-145.9M weights, including winners from 5 years of the ImageNet competition, ScaleDeep demonstrates 6x-28x speedup at iso-power over the state-of-the-art performance on GPUs. Swagath Venkataramani, Ashish Ranjan 0001, Subarno Banerjee, Dipankar Das 0002, Sasikanth Avancha, Ashok Jagannathan, Ajaya Durg, Dheemanth Nagaraj, Bharat Kaul, Pradeep Dubey, Anand Raghunathan |
ISCA | 3 |