Nipun Arora

dblp:36/2861 · DBLP profile ↗
← Back
14ranked-venue papers
2as first author
1since 2021 · last 2024
0000-0002-1835-1189ORCID · corroborated

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

Software engineering, systems software and programming languages · 5 · 2 first-authorSystems, architecture and hardware · 4Applied, interdisciplinary, general and emerging computing · 3Artificial intelligence and machine learning · 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
4 papers
Debugging and program repair · 36% Program analysis · 18% Concurrent programming · 16%
Computer architecture, parallel and distributed computing, and storage systems
2 papers
Distributed systems · 82% Performance modeling and evaluation · 18%

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

TopicWeightPapersLastEvidence papers
Distributed systems › fault tolerance
failure reproduction
0.312018
Replay without recording of production bugs for service oriented applications · ASE 2018
Distributed systems
fault tolerance
0.312018
Replay without recording of production bugs for service oriented applications · ASE 2018
Operating systems › kernel instrumentation
kernel tracing
0.212014
IntroPerf: transparent context-sensitive multi-layer performance inference using system stack traces · SIGMETRICS 2014
Debugging and program repair › crash report analysis
stack trace analysis
0.212014
IntroPerf: transparent context-sensitive multi-layer performance inference using system stack traces · SIGMETRICS 2014
Performance modeling and evaluation
performance diagnosis
0.212014
IntroPerf: transparent context-sensitive multi-layer performance inference using system stack traces · SIGMETRICS 2014
Distributed systems
root cause analysis
0.212014
IntroPerf: transparent context-sensitive multi-layer performance inference using system stack traces · SIGMETRICS 2014
Program analysis › dynamic analysis
dynamic instrumentation
0.212013
iProbe: A lightweight user-level dynamic instrumentation tool · ASE 2013
Concurrent programming › concurrency bugs
atomicity violation
0.112011
BEST: A symbolic testing tool for predicting multi-threaded program failures · ASE 2011
Concurrent programming
concurrency bugs
0.112011
BEST: A symbolic testing tool for predicting multi-threaded program failures · ASE 2011
Program analysis › symbolic execution
constraint-based symbolic search
0.112011
BEST: A symbolic testing tool for predicting multi-threaded program failures · ASE 2011
Software testing › test generation
symbolic testing
0.112011
BEST: A symbolic testing tool for predicting multi-threaded program failures · ASE 2011
Debugging and program repair › performance debugging
performance bug diagnosis
0.112014
IntroPerf: transparent context-sensitive multi-layer performance inference using system stack traces · SIGMETRICS 2014

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

user-space virtualization · 0.7network proxy · 0.7system stack traces · 0.4OS kernel-level tracers · 0.4offline compilation · 0.2hot patching · 0.2partial order reduction · 0.1constraint solving · 0.1binary instrumentation · 0.1
YearPublicationVenuePosition
2024 Voxelization of Moving Deformable Geometries on GPU
abstract
Voxelization is a standard technique to represent arbitrary shaped geometries on a Cartesian grid. It is often utilized in pre-processing stage of any computational fluid dynamics (CFD) simulation for distinguishing the fluid and solid domain. In addition, identification of boundary fluid nodes in the immediate vicinity of the solid body is extremely crucial for proper imposition of boundary conditions and force evaluation. These nodes are therefore tagged separately and is often termed as surface voxelization. However, this procedure becomes non-trivial and computationally expensive as the complexity of geometry increases, especially if it is deformable and moving. Here voxelization needs to be performed in the solid volume as well, as the nodes keep switching from solid to fluid and vice versa at every iteration. For fluid-structure interaction problems, the analysis of flow behaviour requires an additional operation where the point of intersection of the lattice links connecting the fluid boundary nodes and solid bound nodes need to be further calculated. This ensures that deformation of geometry is properly captured and the correct boundary velocity is enforced onto the fluid (no slip). In this work we present techniques for GPU acceleration of voxelization for moving deformable geometries intended for CFD solvers based on the lattice Boltzmann method (LBM). The proposed techniques show speed-ups of up to 5.1x over equivalent parallel implementations.
Ronith Kumar, Raman Deep, Dip Sankar Banerjee, Nipun Arora
ISPDC4
2019 High-Dimensional Vector Spaces as the Architecture of Cognition
Mary Alexandria Kelly, Nipun Arora, Robert L. West, David Reitter
CogSci2
2018 LogLens: A Real-Time Log Analysis System
abstract
Administrators of most user-facing systems depend on periodic log data to get an idea of the health and status of production applications. Logs report information, which is crucial to diagnose the root cause of complex problems. In this paper, we present a real-time log analysis system called LogLens that automates the process of anomaly detection from logs with no (or minimal) target system knowledge and user specification. In LogLens, we employ unsupervised machine learning based techniques to discover patterns in application logs, and then leverage these patterns along with the real-time log parsing for designing advanced log analytics applications. Compared to the existing systems which are primarily limited to log indexing and search capabilities, LogLens presents an extensible system for supporting both stateless and stateful log analysis applications. Currently, LogLens is running at the core of a commercial log analysis solution handling millions of logs generated from the large-scale industrial environments and reported up to 12096x man-hours reduction in troubleshooting operational problems compared to the manual approach.
Biplob Debnath, Mohiuddin Solaimani, Muhammad Ali Gulzar, Nipun Arora, Cristian Lumezanu, Jianwu Xu, Bo Zong, Hui Zhang 0002, Guofei Jiang, Latifur Khan
ICDCS4
2018 Replay without recording of production bugs for service oriented applications
abstract
Short time-to-localize and time-to-fix for production bugs is extremely important for any 24x7 service-oriented application (SOA). Debugging buggy behavior in deployed applications is hard, as it requires careful reproduction of a similar environment and workload. Prior approaches for automatically reproducing production failures do not scale to large SOA systems. Our key insight is that for many failures in SOA systems (e.g., many semantic and performance bugs), a failure can automatically be reproduced solely by relaying network packets to replicas of suspect services, an insight that we validated through a manual study of 16 real bugs across five different systems. This paper presents Parikshan, an application monitoring framework that leverages user-space virtualization and network proxy technologies to provide a sandbox “debug” environment. In this “debug” environment, developers are free to attach debuggers and analysis tools without impacting performance or correctness of the production environment. In comparison to existing monitoring solutions that can slow down production applications, Parikshan allows application monitoring at significantly lower overhead.
Nipun Arora, Jonathan Bell 0001, Franjo Ivancic, Gail E. Kaiser, Baishakhi Ray
ASE1
2014 DeltaPath: Precise and Scalable Calling Context Encoding
Qiang Zeng 0001, Junghwan Rhee, Hui Zhang 0002, Nipun Arora, Guofei Jiang, Peng Liu 0005
CGO4
2014 PerfScope: Practical Online Server Performance Bug Inference in Production Cloud Computing Infrastructures
abstract
Performance bugs which manifest in a production cloud computing infrastructure are notoriously difficult to diagnose because of both the difficulty of reproducing those bugs and the lack of debugging information. In this paper, we present PerfScope, a practical online performance bug inference tool to help the developer understand how a performance bug happened during the production run. PerfScope achieves online bug inference to obviate the need for offline bug reproduction. PerfScope does not require application source code or any runtime instrumentation to the production system. PerfScope is application-agnostic, which can support both interpreted and compiled programs running inside a cloud infrastructure.
Daniel Joseph Dean, Hiep Nguyen, Xiaohui Gu, Hui Zhang 0002, Junghwan Rhee, Nipun Arora, Geoff Jiang
SoCC6
2014 Software system performance debugging with kernel events feature guidance
abstract
To diagnose performance problems in production systems, many OS kernel-level monitoring and analysis tools have been proposed. Using low level kernel events provides benefits in efficiency and transparency to monitor application software. On the other hand, such approaches miss application-specific semantic information which can be effective to differentiate the trace patterns from distinct application logic. This paper introduces new trace analysis techniques based on event features to improve kernel event based performance diagnosis tools. Our prototype, AppDiff, is based on two analysis features: system resource features convert kernel events to resource usage metrics, thereby enabling the detection of various performance anomalies in a unified way; program behavior features infer the application logic behind the low level events. By using these features and conditional probability, AppDiff can detect outliers and improve the diagnosis of application performance.
Junghwan Rhee, Hui Zhang 0002, Nipun Arora, Guofei Jiang, Kenji Yoshihira
NOMS3
2014 Uscope: A scalable unified tracer from kernel to user space
abstract
Unified tracing is the process of collecting trace logs across the boundary of kernel and user spaces, and has been used to understand the in-depth correspondence between low level events and application program context for diagnosing system failures and performance problems. Crossing the boundary from the kernel space to a user space to collect trace events from dual spaces imposes challenges compared to crossing the boundary in the other way from a user space to the kernel space due to multiple scheduled programs and diverse code layouts in the user space regarding the tracing target. In this paper, we propose a novel unified tracing system called Uscope to systematically trace kernel and unprecedented user code with low overhead. The key idea is to use an efficient variant of stack walking. Uscope lowers stack walking overhead by adjusting the scope of walking in two ways: (1) a highly configurable focus within the call stack, and (2) a per-application tracing that systematically tracks a dynamic set of new, exiting, or transforming processes and threads of an application software. This system is realized by using a flexible stack walking algorithm and a runtime kernel structure, Trace Map. These key features lead to low run-time overhead under 6% relative to native execution on a set of widely used benchmarks.
Junghwan Rhee, Hui Zhang 0002, Nipun Arora, Guofei Jiang, Kenji Yoshihira
NOMS3
2014 CLUE: System trace analytics for cloud service performance diagnosis
abstract
In this paper, we present CLUE, a system event analytics tool for black-box performance diagnosis in production Cloud Computing systems. CLUE provides an unified and extensible means of profiling service transactional behaviors, and builds structured data called event sketches. CLUE further offers a set of analytic tools for summarizing and analyzing event sketches by integrating data mining and statistical analysis. CLUE has been developed in NEC as an internal tool and applied in diagnosing a diverse set of real performance problems for multi-tiered IT applications running on multi-core servers of major platforms including Linux (Redhat, Fedora), Unix (HP-UX), and Windows (Windows Server 2008). We demonstrated the evaluation of our framework on real-world IT systems, and showed how it can enable visibility and effective diagnosis of service system performance problems.
Hui Zhang 0002, Junghwan Rhee, Nipun Arora, Sahan Gamage, Guofei Jiang, Kenji Yoshihira, Dongyan Xu
NOMS3
2014 IntroPerf: transparent context-sensitive multi-layer performance inference using system stack traces
abstract
Performance bugs are frequently observed in commodity software. While profilers or source code-based tools can be used at development stage where a program is diagnosed in a well-defined environment, many performance bugs survive such a stage and affect production runs. OS kernel-level tracers are commonly used in post-development diagnosis due to their independence from programs and libraries; however, they lack detailed program-specific metrics to reason about performance problems such as function latencies and program contexts. In this paper, we propose a novel performance inference system, called IntroPerf, that generates fine-grained performance information -- like that from application profiling tools -- transparently by leveraging OS tracers that are widely available in most commodity operating systems. With system stack traces as input, IntroPerf enables transparent context-sensitive performance inference, and diagnoses application performance in a multi-layered scope ranging from user functions to the kernel. Evaluated with various performance bugs in multiple open source software projects, IntroPerf automatically ranks potential internal and external root causes of performance bugs with high accuracy without any prior knowledge about or instrumentation on the subject software. Our results show IntroPerf's effectiveness as a lightweight performance introspection tool for post-development diagnosis.
Junghwan Rhee, Hui Zhang 0002, Nipun Arora, Guofei Jiang, Xiangyu Zhang 0001, Dongyan Xu
SIGMETRICS4
2013 iProbe: A lightweight user-level dynamic instrumentation tool
abstract
We introduce a new hybrid instrumentation tool for dynamic application instrumentation called iProbe, which is flexible and has low overhead. iProbe takes a novel 2-stage design, and offloads much of the dynamic instrumentation complexity to an offline compilation stage. It leverages standard compiler flags to introduce “place-holders” for hooks in the program executable. Then it utilizes an efficient user-space “HotPatching” mechanism which modifies the functions to be traced and enables execution of instrumented code in a safe and secure manner. In its evaluation on a micro-benchmark and SPEC CPU2006 benchmark applications, the iProbe prototype achieved the instrumentation overhead an order of magnitude lower than existing state-of-the-art dynamic instrumentation tools like SystemTap and DynInst.
Nipun Arora, Hui Zhang 0002, Junghwan Rhee, Kenji Yoshihira, Guofei Jiang
ASE1
2011 BEST: A symbolic testing tool for predicting multi-threaded program failures
abstract
We present a tool BEST (Binary instrumentation-based Error-directed Symbolic Testing) for predicting concurrency violations.1We automatically infer potential concurrency violations such as atomicity violations from an observed run of a multi-threaded program, and use precise modeling and constraint-based symbolic (non-enumerative) search to find feasible violating schedules in a generalization of the observed run. We specifically focus on tool scalability by devising POR-based simplification steps to reduce the formula and the search space by several orders-of-magnitude. We have successfully applied the tool to several publicly available C/C++/Java programs and found several previously known/unknown concurrency related bugs. The tool also has extensive visual support for debugging.
Malay K. Ganai, Nipun Arora, Chao Wang 0001, Aarti Gupta, Gogul Balakrishnan
ASE2
2007 Rare Adverse Event Monitoring of Medical Devices with the Use of an Automated Surveillance Tool
Michael E. Matheny, Nipun Arora, Lucila Ohno-Machado, Frederic S. Resnic
AMIA2
2007 Effects of SVM parameter optimization on discrimination and calibration for post-procedural PCI mortality
Michael E. Matheny, Frederic S. Resnic, Nipun Arora, Lucila Ohno-Machado
J. Biomed. Informatics3