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

Virat Agarwal

dblp:50/6357 · DBLP profile ↗
← Back
9ranked-venue papers
2as first author
0since 2021 · last 2020
—ORCID · none

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

Systems, architecture and hardware · 9 · 2 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
3 papers
Parallel and multicore computing · 45% GPUs and heterogeneous computing · 42% Memory systems · 9%
Software engineering, system software, and programming languages
1 paper
Compilers and program optimization · 100%
Computer graphics and multimedia
1 paper
Rendering · 100%
Network and information security
1 paper
Network security · 100%

Topics — the 9 heaviest of 11, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Compilers and program optimization › dynamic optimization
profile-guided optimization
0.412020
Zeroploit: Exploiting Zero Valued Operands in Interactive Gaming Applications · ACM Trans. Archit. Code Optim. 2020
Parallel and multicore computing › parallel algorithms › graph algorithms
breadth-first search
0.112010
Scalable Graph Exploration on Multicore Processors · SC 2010
Parallel and multicore computing
graph processing
0.112010
Scalable Graph Exploration on Multicore Processors · SC 2010
Parallel and multicore computing › graph processing
graph traversal
0.112010
Scalable Graph Exploration on Multicore Processors · SC 2010
Parallel and multicore computing › parallel algorithms › shared-memory parallel algorithms
multicore algorithms
0.112010
Scalable Graph Exploration on Multicore Processors · SC 2010
Network security › intrusion detection and prevention
intrusion detection
0.112009
SCAMPI: a scalable CAM-based algorithm for multiple pattern inspection · SC 2009
Memory systems
content-addressable memory
0.112009
SCAMPI: a scalable CAM-based algorithm for multiple pattern inspection · SC 2009
High-performance computing
large-scale graph processing
0.012010
Scalable Graph Exploration on Multicore Processors · SC 2010
Parallel and multicore computing › parallel architecture
multicore implementation
0.012009
SCAMPI: a scalable CAM-based algorithm for multiple pattern inspection · SC 2009

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

profile-guided code optimization · 1.3fast-slow versioning · 1.3backward/forward slice specialization · 1.3compile-time data layout · 0.2CAM-based algorithm · 0.2processor-specific optimization · 0.1machine-independent algorithmic design · 0.1
YearPublicationVenuePosition
2020 Zeroploit: Exploiting Zero Valued Operands in Interactive Gaming Applications
abstract
In this article, we first characterize register operand value locality in shader programs of modern gaming applications and observe that there is a high likelihood of one of the register operands of several multiply, logical-and, and similar operations being zero, dynamically. We provide intuition, examples, and a quantitative characterization for how zeros originate dynamically in these programs. Next, we show that this dynamic behavior can be gainfully exploited with a profile-guided code optimization called Zeroploit that transforms targeted code regions into a zero-(value-)specialized fast path and a default slow path. The fast path benefits from zero-specialization in two ways, namely: (a) the backward slice of the other operand of a given multiply or logical-and can be skipped dynamically, provided the only use of that other operand is in the given instruction, and (b) the forward slice of instructions originating at the given instruction can be zero-specialized, potentially triggering further backward slice specializations from operations of that forward slice as well. Such specialization helps the fast path avoid redundant dynamic computations as well as memory fetches, while the fast-slow versioning transform helps preserve functional correctness. With an offline value profiler and manually optimized shader programs, we demonstrate that Zeroploit is able to achieve an average speedup of 35.8% for targeted shader programs, amounting to an average frame-rate speedup of 2.8% across a collection of modern gaming applications on an NVIDIA® GeForce RTX™ 2080 GPU.
Ram Rangan, Mark Stephenson, Aditya Ukarande, Shyam Murthy, Virat Agarwal, Marc Blackstein
ACM Trans. Archit. Code Optim.5
2010 Scalable Graph Exploration on Multicore Processors
abstract
Many important problems in computational sciences, social network analysis, security, and business analytics, are data-intensive and lend themselves to graph-theoretical analyses. In this paper we investigate the challenges involved in exploring very large graphs by designing a breadth-first search (BFS) algorithm for advanced multi-core processors that are likely to become the building blocks of future exascale systems. Our new methodology for large-scale graph analytics combines a highlevel algorithmic design that captures the machine-independent aspects, to guarantee portability with performance to future processors, with an implementation that embeds processorspecific optimizations. We present an experimental study that uses state-of-the-art Intel Nehalem EP and EX processors and up to 64 threads in a single system. Our performance on several benchmark problems representative of the power-law graphs found in real-world problems reaches processing rates that are competitive with supercomputing results in the recent literature. In the experimental evaluation we prove that our graph exploration algorithm running on a 4-socket Nehalem EX is (1) 2.4 times faster than a Cray XMT with 128 processors when exploring a random graph with 64 million vertices and 512 millions edges, (2) capable of processing 550 million edges per second with an R-MAT graph with 200 million vertices and 1 billion edges, comparable to the performance of a similar graph on a Cray MTA-2 with 40 processors and (3) 5 times faster than 256 BlueGene/L processors on a graph with average degree 50.
Virat Agarwal, Fabrizio Petrini, Davide Pasetto, David A. Bader
SC1
2009 SCAMPI: a scalable CAM-based algorithm for multiple pattern inspection
abstract
String matching is one of the most compute intensive steps in a network intrusion detection system. The growing network rates, rapidly approaching 10 Gbits/sec, and the large number of signatures that need to be scanned concurrently pose very demanding challenges to algorithmic design and practical implementation. In this paper we present SCAMPI, a ground-breaking string searching algorithm that is fast, space-efficient, scalable and resilient to attacks. SCAMPI is designed with a memory-centric model of complexity in mind, to minimize memory traffic and enhance data reuse with a careful compile-time data layout. The experimental evaluation executed on two families of multicore processors, Cell B.E and Intel Xeon E5472, shows that it is possible to obtain a processing rate of more than 2 Gbits/sec per core with very large dictionaries and heavy hitting rates. In the largest tested configuration, SCAMPI reaches 16 Gbits/sec on 8 Xeon cores, reaching, and in some cases exceeding, the performance of special-purpose processors and FPGA. Using SCAMPI we have been able to scan an input stream using a dictionary of 3.5 millions keywords, more than an order of magnitude larger than any published result in the literature and in commercial prototypes, at a rate of more than 1.2 Gbits/sec per processing core.
Fabrizio Petrini, Virat Agarwal, Davide Pasetto
SC2
2009 Computing discrete transforms on the Cell Broadband Engine
David A. Bader, Virat Agarwal, Seunghwa Kang
Parallel Comput.2
2008 On the Design of Fast Pseudo-Random Number Generators for the Cell Broadband Engine and an Application to Risk Analysis
abstract
Numerical simulations in computational physics, biology, and finance, often require the use of high quality and efficient parallel random number generators. We design and optimize several parallel pseudo random number generators on the Cell Broadband Engine, with minimal correlation between the parallel streams: the linear congruential generator (LCG) with 64-bit prime addend and the Mersenne Twister (MT) algorithm. As compared with current Intel and AMD microprocessors, our Cell/B.E. LCG and MT implementations achieve a speed up of 33 and 29, respectively. We also explore two normalization techniques, Gaussian averaging method and Box Mueller Polar/Cartesian, that transform uniform random numbers to a Gaussian distribution. Using these fast generators we develop a parallel implementation of Value at Risk, a commonly used model for risk assessment in financial markets. To our knowledge we have designed and implemented the fastest parallel pseudo random number generators on the Cell/B.E.
David A. Bader, Aparna Chandramowlishwaran, Virat Agarwal
ICPP3
2008 Financial modeling on the cell broadband engine
abstract
High performance computing is critical for financial markets where analysts seek to accelerate complex optimizations such as pricing engines to maintain a competitive edge. In this paper we investigate the performance of financial workloads on the Sony-Toshiba- IBM Cell Broadband Engine, a heterogeneous multicore chip architected for intensive gaming applications and high performance computing. We analyze the use of Monte Carlo techniques for financial workloads and design efficient parallel implementations of different high performance pseudo and quasi random number generators as well as normalization techniques. Our implementation of the Mersenne Twister pseudo random number generator outperforms current Intel and AMD architectures by over an order of magnitude. Using these new routines, we optimize European option (EO) and collateralized debt obligation (CDO) pricing algorithms. Our Cell-optimized EO pricing achieves a speedup of over 2 in comparison with using RapidMind SDK for Cell, and comparing with GPU, a speedup of 1.26 as compared with using RapidMind SDK for GPU (NVIDIA GeForce 8800), and a speedup of 1.51 over NVIDIA GeForce 8800 (using CUDA). Our detailed analyses and performance results demonstrate that the Cell/B.E. processor is well suited for financial workloads and Monte Carlo simulation.
Virat Agarwal, Lurng-Kuo Liu, David A. Bader
IPDPS1
2007 FFTC: Fastest Fourier Transform for the IBM Cell Broadband Engine
David A. Bader, Virat Agarwal
HiPC2
2007 On the Design and Analysis of Irregular Algorithms on the Cell Processor: A Case Study of List Ranking
abstract
The Sony-Toshiba-IBM Cell Broadband Engine is a heterogeneous multicore architecture that consists of a traditional microprocessor (PPE), with eight SIMD co-processing units (SPEs) integrated on-chip. We present a complexity model for designing algorithms on the Cell processor, along with a systematic procedure for algorithm analysis. To estimate the execution time of the algorithm, we consider the computational complexity, memory access patterns (DMA transfer sizes and latency), and the complexity of branching instructions. This model, coupled with the analysis procedure, simplifies algorithm design on the Cell and enables quick identification of potential implementation bottlenecks. Using the model, we design an efficient implementation of list ranking, a representative problem from the class of combinatorial and graph-theoretic applications. Due to its highly irregular memory patterns, list ranking is a particularly challenging problem to parallelize on current cache-based and distributed memory architectures. We describe a generic work-partitioning technique on the Cell to hide memory access latency, and apply this to efficiently implement list ranking. We run our algorithm on a 3.2 GHz Cell processor using an IBM QS20 Cell Blade and demonstrate a substantial speedup for list ranking on the Cell in comparison to traditional cache-based micro-processors. For a random linked list of 1 million nodes, we achieve an an overall speedup of 8.34 over a PPE-only implementation.
David A. Bader, Virat Agarwal, Kamesh Madduri
IPDPS2
2007 High performance combinatorial algorithm design on the Cell Broadband Engine processor
David A. Bader, Virat Agarwal, Kamesh Madduri, Seunghwa Kang
Parallel Comput.2