Demo Data from EDBT 2026 / reviewers in the wild / expert
Naga K. Govindaraju
dblp:42/5865
· DBLP profile ↗
43ranked-venue papers
17as first author
1since 2021 · last 2021
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Graphics, computer vision, multimedia, augmented reality and games · 19 · 9 first-authorSystems, architecture and hardware · 11 · 3 first-author · 1 since 2021Databases, data management, data science and information retrieval · 10 · 4 first-authorHuman-computer interaction and ubiquitous computing · 8 · 4 first-authorSoftware engineering, systems software and programming languages · 1Theory of computation · 1 · 1 first-authorApplied, 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.
| Computer architecture, parallel and distributed computing, and storage systems
19 papers |
Cloud and datacenter computing · 33% GPUs and heterogeneous computing · 27% High-performance computing · 11% | |
| Computer graphics and multimedia
8 papers |
Geometric modeling and processing · 41% Audio and music processing · 29% Rendering · 23% | |
| Databases, data mining, and information retrieval
8 papers |
Query processing and optimization · 91% Data stream processing · 9% |
Topics — the 30 heaviest of 61, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Cloud and datacenter computing
virtualization |
0.5 | 1 | 2021 | Virtual machine preserving host updates for zero day patching in public cloud · EuroSys 2021 |
Cloud and datacenter computing › virtualization › virtual machine migration
virtual machine live migration |
0.5 | 1 | 2021 | Virtual machine preserving host updates for zero day patching in public cloud · EuroSys 2021 |
GPUs and heterogeneous computing
GPU computing |
0.4 | 6 | 2009 | Relational query coprocessing on graphics processors · ACM Trans. Database Syst. 2009 High performance discrete Fourier transforms on graphics processors · SC 2008 GPUQP: query co-processing using graphics processors · SIGMOD Conference 2007 |
Distributed systems
fault tolerance |
0.4 | 1 | 2020 | Predictive and Adaptive Failure Mitigation to Avert Production Cloud VM Interruptions · OSDI 2020 |
Geometric modeling and processing
collision detection |
0.2 | 4 | 2006 | Fast and Reliable Collision Culling Using Graphics Hardware · IEEE Trans. Vis. Comput. Graph. 2006 Fast proximity computation among deformable models using discrete Voronoi diagrams · ACM Trans. Graph. 2006 Interactive collision detection between deformable models using chromatic decomposition · ACM Trans. Graph. 2005 |
GPUs and heterogeneous computing
GPU query processing |
0.2 | 3 | 2008 | Relational joins on graphics processors · SIGMOD Conference 2008 GPUQP: query co-processing using graphics processors · SIGMOD Conference 2007 Query Co-Processing on Commodity Hardware · ICDE 2006 |
High-performance computing › performance optimization
auto-tuning |
0.1 | 1 | 2011 | Auto-tuning of fast fourier transform on graphics processors · PPoPP 2011 |
GPUs and heterogeneous computing
GPU kernel optimization |
0.1 | 1 | 2011 | Auto-tuning of fast fourier transform on graphics processors · PPoPP 2011 |
Parallel and multicore computing › data-parallel programming
mapreduce |
0.1 | 1 | 2011 | Mars: Accelerating MapReduce with Graphics Processors · IEEE Trans. Parallel Distributed Syst. 2011 |
Parallel and multicore computing
parallel programming models |
0.1 | 1 | 2011 | Mars: Accelerating MapReduce with Graphics Processors · IEEE Trans. Parallel Distributed Syst. 2011 |
Rendering
shadow rendering |
0.1 | 2 | 2008 | Logarithmic perspective shadow maps · ACM Trans. Graph. 2008 Interactive shadow generation in complex environments · ACM Trans. Graph. 2003 |
Geometric modeling and processing › collision detection
collision culling |
0.1 | 2 | 2006 | Fast and Reliable Collision Culling Using Graphics Hardware · IEEE Trans. Vis. Comput. Graph. 2006 Quick-CULLIDE: Fast Inter- and Intra-Object Collision Culling Using Graphics Hardware · VR 2005 |
Audio and music processing
acoustic rendering |
0.1 | 1 | 2010 | Precomputed wave simulation for real-time sound propagation of dynamic sources in complex scenes · ACM Trans. Graph. 2010 |
Audio and music processing › spatial audio
binaural reproduction |
0.1 | 1 | 2010 | Precomputed wave simulation for real-time sound propagation of dynamic sources in complex scenes · ACM Trans. Graph. 2010 |
Audio and music processing › acoustic simulation
sound propagation |
0.1 | 1 | 2010 | Precomputed wave simulation for real-time sound propagation of dynamic sources in complex scenes · ACM Trans. Graph. 2010 |
Query processing and optimization › query execution
relational query processing |
0.1 | 1 | 2009 | Relational query coprocessing on graphics processors · ACM Trans. Database Syst. 2009 |
High-performance computing
fast fourier transform |
0.1 | 1 | 2008 | High performance discrete Fourier transforms on graphics processors · SC 2008 |
Parallel and multicore computing › many-core systems
many-core computing |
0.1 | 1 | 2008 | Challenges and Opportunities in Many-Core Computing · Proc. IEEE 2008 |
Memory systems › memory hierarchy
memory hierarchy optimization |
0.1 | 1 | 2008 | High performance discrete Fourier transforms on graphics processors · SC 2008 |
High-performance computing › collective communication
gather and scatter operations |
0.1 | 1 | 2007 | Efficient gather and scatter operations on graphics processors · SC 2007 |
Query processing and optimization › sorting
external sorting |
0.1 | 1 | 2006 | GPUTeraSort: high performance graphics co-processor sorting for large database management · SIGMOD Conference 2006 |
Query processing and optimization › parallel query processing
heterogeneous hardware query processing |
0.1 | 1 | 2006 | Query Co-Processing on Commodity Hardware · ICDE 2006 |
Memory systems › cache
cache behavior |
0.1 | 1 | 2006 | Memory - A memory model for scientific algorithms on graphics processors · SC 2006 |
Processor architecture and microarchitecture › microprocessor
commodity processors |
0.1 | 1 | 2006 | Query Co-Processing on Commodity Processors · VLDB 2006 |
GPUs and heterogeneous computing
GPU performance analysis |
0.1 | 1 | 2006 | S07 - GPGPU: general-purpose computation on graphics hardware · SC 2006 |
GPUs and heterogeneous computing
GPU programming |
0.1 | 1 | 2006 | S07 - GPGPU: general-purpose computation on graphics hardware · SC 2006 |
Parallel and multicore computing
memory model |
0.1 | 1 | 2006 | Memory - A memory model for scientific algorithms on graphics processors · SC 2006 |
Data stream processing
stream mining |
0.1 | 1 | 2005 | Fast and Approximate Stream Mining of Quantiles and Frequencies Using Graphics Processors · SIGMOD Conference 2005 |
Geometric modeling and processing › collision detection
deformable model collision detection |
0.1 | 1 | 2005 | Interactive collision detection between deformable models using chromatic decomposition · ACM Trans. Graph. 2005 |
Geometric modeling and processing
mesh processing |
0.1 | 1 | 2005 | Interactive collision detection between deformable models using chromatic decomposition · ACM Trans. Graph. 2005 |
Methods — techniques the papers use, named apart from their topics
kernel soft reboot · 1.0predictive modeling · 0.4data-parallel primitives · 0.4sort · 0.2GPU programming · 0.1task partitioning · 0.1search space pruning · 0.1profiling · 0.1data distribution · 0.1auto-tuning · 0.1minkowski sum · 0.1numerical wave simulation · 0.1frequency-domain convolution · 0.1early reflection and late reverberation decomposition · 0.1split · 0.1sort-merge join · 0.1perspective projection · 0.1nested-loop join · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2021 | Virtual machine preserving host updates for zero day patching in public cloudabstractHost software updates are critical to ensure the security, reliability and compliance of public clouds. Many updates require a virtualization component restart or operating system reboot. Virtual machines (VMs) running on the updated servers must either be restarted or live migrated off. Reboots can result in downtime for the VMs on the order of ten minutes, and has further impact on the workloads running in the VMs because cached state is lost. Live migration (LM) is a technology that can avoid the need to shutdown VMs. However, LM requires turn space in the form of already-patched hosts, consumes network, CPU and other resources that scale with the amount of and level of activity of VM, and has variable impact on VM performance and availability, making it too expensive and disruptive for zero-day security updates that must be applied across an entire fleet on the order of hours. We present a novel update technology, virtual machine preserving host updates (VM-PHU), that does not require turn space, consumes no network and little CPU, preserves VM state, and causes minimal VM blackout time that does not scale with VM resource usage. VM-PHU persists the memory and device state of all running guest VMs, reboots the host and virtualization components into updated code, restores the state of the VMs, and then resumes them. VM-PHU makes use of several techniques to minimize VM blackout time. One is to use kernel soft reboot (KSR) to directly transition to an updated host operating system, bypassing firmware reset of the server and attached devices. To minimize resource consumption and VM disruption, VM-PHU leaves VM memory in physical memory pages and other state in persisted pages across the soft reboot, and VM-PHU implements a mechanism called fast close to enable a reboot to proceed without waiting for the completion of in-flight VM I/Os to remote storage devices. We have implemented VM-PHU in Microsoft Azure hosting millions of servers and show results of several zero-day updates that demonstrate VM blackout times on the order of seconds. VM-PHU provides significant benefits to both customers and public cloud vendors by minimizing application downtime while enabling fast and resource efficient updates, including zero-day patches. Mark Russinovich, Naga K. Govindaraju, Melur Raghuraman, David Hepkin, Jamie Schwartz, Arun Kishan |
EuroSys | 2 |
| 2020 | Predictive and Adaptive Failure Mitigation to Avert Production Cloud VM Interruptions
Sebastien Levy, Randolph Yao, Youjiang Wu, Yingnong Dang, Peng Huang 0005, Zheng Mu, Pu Zhao 0004, Tarun Ramani, Naga K. Govindaraju, Xukun Li, Qingwei Lin, Gil Lapid Shafriri, Murali Chintalapati |
OSDI | 9 |
| 2011 | Auto-tuning of fast fourier transform on graphics processorsabstractWe present an auto-tuning framework for FFTs on graphics processors (GPUs). Due to complex design of the memory and compute subsystems on GPUs, the performance of FFT kernels over the range of possible input parameters can vary widely. We generate several variants for each component of the FFT kernel that, for different cases, are likely to perform well. Our auto-tuner composes variants to generate kernels and selects the best ones. We present heuristics to prune the search space and profile only a small fraction of all possible kernels. We compose optimized kernels to improve the performance of larger FFT computations. We implement the system using the NVIDIA CUDA API and compare its performance to the state-of-the-art FFT libraries. On a range of NVIDIA GPUs and input sizes, our auto-tuned FFTs outperform the NVIDIA CUFFT 3.0 library by up to 38x and deliver up to 3x higher performance compared to a manually-tuned FFT. Yuri Dotsenko, Sara S. Baghsorkhi, Brandon Lloyd, Naga K. Govindaraju |
PPoPP | 4 |
| 2011 | Sound synthesis for impact sounds in video gamesabstractWe present an interactive system for synthesizing high quality, physically based audio on current video game consoles. From a recorded impact sound, we compute a modal model, which we use to synthesize variations of the sound on the fly. We show that for many sounds greater quality is obtained by using the amplitude envelopes of the extracted modes directly rather than fitting the envelopes to the standard exponential decay model. When combined with a residual, the synthesized sounds in most cases are indistinguishable from recorded clips. Compared to using multiple prerecorded clips to obtain variation, our system consumes less of the limited console memory. For sounds that are less amenable to modal synthesis, we introduce a simple filter that generates plausible variations from a single clip. Our system integrates easily with existing audio middleware and have been implemented in the Xbox360 game Crackdown II. Brandon Lloyd, Nikunj Raghuvanshi, Naga K. Govindaraju |
SI3D | 3 |
| 2011 | Mars: Accelerating MapReduce with Graphics ProcessorsabstractWe design and implement Mars, a MapReduce runtime system accelerated with graphics processing units (GPUs). MapReduce is a simple and flexible parallel programming paradigm originally proposed by Google, for the ease of large-scale data processing on thousands of CPUs. Compared with CPUs, GPUs have an order of magnitude higher computation power and memory bandwidth. However, GPUs are designed as special-purpose coprocessors and their programming interfaces are less familiar than those on the CPUs to MapReduce programmers. To harness GPUs' power for MapReduce, we developed Mars to run on NVIDIA GPUs, AMD GPUs as well as multicore CPUs. Furthermore, we integrated Mars into Hadoop, an open-source CPU-based MapReduce system. Mars hides the programming complexity of GPUs behind the simple and familiar MapReduce interface, and automatically manages task partitioning, data distribution, and parallelization on the processors. We have implemented six representative applications on Mars and evaluated their performance on PCs equipped with GPUs as well as multicore CPUs. The experimental results show that, the GPU-CPU coprocessing of Mars on an NVIDIA GTX280 GPU and an Intel quad-core CPU outperformed Phoenix, the state-of-the-art MapReduce on the multicore CPU with a speedup of up to 72 times and 24 times on average, depending on the applications. Additionally, integrating Mars into Hadoop enabled GPU acceleration for a network of PCs. Wenbin Fang, Bingsheng He, Qiong Luo 0001, Naga K. Govindaraju |
IEEE Trans. Parallel Distributed Syst. | 4 |
| 2010 | Simple data-driven modeling of brushesabstractWe present a new and simple data-driven technique for modeling 3D brushes for use in realistic painting programs. Our technique simplifies and accelerates simulation of the constrained dynamics of brushes by using a small lookup table that efficiently encodes the range of feasible constrained states. The result is a brush model which runs an order of magnitude faster than previous physics-based methods, while at the same time delivering greater deformation fidelity. William Baxter, Naga K. Govindaraju |
SI3D | 2 |
| 2010 | Precomputed wave simulation for real-time sound propagation of dynamic sources in complex scenesabstractWe present a method for real-time sound propagation that captures all wave effects, including diffraction and reverberation, for multiple moving sources and a moving listener in a complex, static 3D scene. It performs an offline numerical simulation over the scene and then applies a novel technique to extract and compactly encode the perceptually salient information in the resulting acoustic responses. Each response is automatically broken into two phases: early reflections (ER) and late reverberation (LR), via a threshold on the temporal density of arriving wavefronts. The LR is simulated and stored in the frequency domain, once per room in the scene. The ER accounts for more detailed spatial variation, by recording a set of peak delays/amplitudes in the time domain and a residual frequency response sampled in octave frequency bands, at each source/receiver point pair in a 5D grid. An efficient run-time uses this precomputed representation to perform binaural sound rendering based on frequency-domain convolution. Our system demonstrates realistic, wave-based acoustic effects in real time, including diffraction low-passing behind obstructions, sound focusing, hollow reverberation in empty rooms, sound diffusion in fully-furnished rooms, and realistic late reverberation. Nikunj Raghuvanshi, John M. Snyder, Ravish Mehra, Ming C. Lin, Naga K. Govindaraju |
ACM Trans. Graph. | 5 |
| 2009 | Relational query coprocessing on graphics processorsabstractGraphics processors (GPUs) have recently emerged as powerful coprocessors for general purpose computation. Compared with commodity CPUs, GPUs have an order of magnitude higher computation power as well as memory bandwidth. Moreover, new-generation GPUs allow writes to random memory locations, provide efficient interprocessor communication through on-chip local memory, and support a general purpose parallel programming model. Nevertheless, many of the GPU features are specialized for graphics processing, including the massively multithreaded architecture, the Single-Instruction-Multiple-Data processing style, and the execution model of a single application at a time. Additionally, GPUs rely on a bus of limited bandwidth to transfer data to and from the CPU, do not allow dynamic memory allocation from GPU kernels, and have little hardware support for write conflicts. Therefore, a careful design and implementation is required to utilize the GPU for coprocessing database queries. In this article, we present our design, implementation, and evaluation of an in-memory relational query coprocessing system, GDB, on the GPU. Taking advantage of the GPU hardware features, we design a set of highly optimized data-parallel primitives such as split and sort, and use these primitives to implement common relational query processing algorithms. Our algorithms utilize the high parallelism as well as the high memory bandwidth of the GPU, and use parallel computation and memory optimizations to effectively reduce memory stalls. Furthermore, we propose coprocessing techniques that take into account both the computation resources and the GPU-CPU data transfer cost so that each operator in a query can utilize suitable processors—the CPU, the GPU, or both—for an optimized overall performance. We have evaluated our GDB system on a machine with an Intel quad-core CPU and an NVIDIA GeForce 8800 GTX GPU. Our workloads include microbenchmark queries on memory-resident data as well as TPC-H queries that involve complex data types and multiple query operators on data sets larger than the GPU memory. Our results show that our GPU-based algorithms are 2--27x faster than their optimized CPU-based counterparts on in-memory data. Moreover, the performance of our coprocessing scheme is similar to, or better than, both the GPU-only and the CPU-only schemes. Bingsheng He, Mian Lu, Naga K. Govindaraju, Qiong Luo 0001, Pedro V. Sander |
ACM Trans. Database Syst. | 5 |
| 2008 | Mars: a MapReduce framework on graphics processorsabstractWe design and implement Mars, a MapReduce framework, on graphics processors (GPUs). MapReduce is a distributed programming framework originally proposed by Google for the ease of development of web search applications on a large number of commodity CPUs. Compared with CPUs, GPUs have an order of magnitude higher computation power and memory bandwidth, but are harder to program since their architectures are designed as a special-purpose co-processor and their programming interfaces are typically for graphics applications. As the first attempt to harness GPU's power for MapReduce, we developed Mars on an NVIDIA G80 GPU, which contains over one hundred processors, and evaluated it in comparison with Phoenix, the state-of-the-art MapReduce framework on multi-core CPUs. Mars hides the programming complexity of the GPU behind the simple and familiar MapReduce interface. It is up to 16 times faster than its CPU-based counterpart for six common web applications on a quad-core machine. Bingsheng He, Wenbin Fang, Qiong Luo 0001, Naga K. Govindaraju, Tuyong Wang |
PACT | 4 |
| 2008 | Fast computation of general Fourier Transforms on GPUSabstractWe present an implementation of general FFTs for graphics processing units (GPUs). Unlike most existing GPU FFT implementations, we handle both complex and real data of any size that can fit in a texture. The basic building block for our algorithms is a radix-2 Stockham formulation of the FFT for power-of-two data sizes that avoids expensive bit reversals and exploits the high GPU memory band-width efficiently. We implemented our algorithms using the DirectX9 API, which enables our routines to be used on many of the existing GPUs today. We have performed comparisons against optimized CPU-based and GPU-based FFT libraries (Intel Math Kernel Library and NVIDIA CUFFT, respectively). Our results on a NVIDIA GeForce 8800 GTX GPU indicate a significant performance improvement over the existing libraries for many input cases. Brandon Lloyd, Chas Boyd, Naga K. Govindaraju |
ICME | 3 |
| 2008 | Fast scan algorithms on graphics processorsabstractScan and segmented scan are important data-parallel primitives for a wide range of applications. We present fast, work-efficient algorithms for these primitives on graphics processing units (GPUs). We use novel data representations that map well to the GPU architecture. Our algorithms exploit shared memory to improve memory performance. We further improve the performance of our algorithms by eliminating shared-memory bank conflicts and reducing the overheads in prior shared-memory GPU algorithms. Furthermore, our algorithms are designed to work well on general data sets, including segmented arrays with arbitrary segment lengths. We also present optimizations to improve the performance of segmented scans based on the segment lengths. We implemented our algorithms on a PC with an NVIDIA GeForce 8800 GPU and compared our results with prior GPU-based algorithms. Our results indicate up to 10x higher performance over prior algorithms on input sequences with millions of elements. Yuri Dotsenko, Naga K. Govindaraju, Peter-Pike J. Sloan, Charles Boyd, John Manferdelli |
ICS | 2 |
| 2008 | High performance discrete Fourier transforms on graphics processorsabstractWe present novel algorithms for computing discrete Fourier transforms with high performance on GPUs. We present hierarchical, mixed radix FFT algorithms for both power-of-two and non-power-of-two sizes. Our hierarchical FFT algorithms efficiently exploit shared memory on GPUs using a Stockham formulation. We reduce the memory transpose overheads in hierarchical algorithms by combining the transposes into a block-based multi-FFT algorithm. For non-power-of-two sizes, we use a combination of mixed radix FFTs of small primes and Bluestein's algorithm. We use modular arithmetic in Bluestein's algorithm to improve the accuracy. We implemented our algorithms using the NVIDIA CUDA API and compared their performance with NVIDIA's CUFFT library and an optimized CPU-implementation (Intel's MKL) on a high-end quad-core CPU. On an NVIDIA GPU, we obtained performance of up to 300 GFlops, with typical performance improvements of 2–4× over CUFFT and 8–40× improvement over MKL for large sizes. Naga K. Govindaraju, Brandon Lloyd, Yuri Dotsenko, Burton Smith, John Manferdelli |
SC | 1 |
| 2008 | Relational joins on graphics processorsabstractWe present a novel design and implementation of relational join algorithms for new-generation graphics processing units (GPUs). The most recent GPU features include support for writing to random memory locations, efficient inter-processor communication, and a programming model for general-purpose computing. Taking advantage of these new features, we design a set of data-parallel primitives such as split and sort, and use these primitives to implement indexed or non-indexed nested-loop, sort-merge and hash joins. Our algorithms utilize the high parallelism as well as the high memory bandwidth of the GPU, and use parallel computation and memory optimizations to effectively reduce memory stalls. We have implemented our algorithms on a PC with an NVIDIA G80 GPU and an Intel quad-core CPU. Our GPU-based join algorithms are able to achieve a performance improvement of 2-7X over their optimized CPU-based counterparts. Bingsheng He, Mian Lu, Naga K. Govindaraju, Qiong Luo 0001, Pedro V. Sander |
SIGMOD Conference | 5 |
| 2008 | Challenges and Opportunities in Many-Core ComputingabstractIn this paper, we present some of the challenges and opportunities in software development based on the current hardware trends and the impact of massive parallelism on both the software and hardware industry. We indicate some of the approaches that can enable software development to effectively exploit the many-core architectures. Some of these include encapsulating domain-specific knowledge in reusable components, such as libraries, integrating concurrency with languages, and supporting explicit declarations to help compilers and operating system schedulers. Tighter interaction between software and underlying hardware is required to build scalable and portable applications with predictable performance and higher power-efficiency. Overall, many-core computing provides us opportunities to enable new application scenarios that support enhanced functionality and a richer experience for the user on commodity hardware. John Manferdelli, Naga K. Govindaraju, Chris Crall |
Proc. IEEE | 2 |
| 2008 | Logarithmic perspective shadow mapsabstractWe present a novel shadow map parameterization to reduce perspective aliasing artifacts for both point and directional light sources. We derive the aliasing error equations for both types of light sources in general position. Using these equations we compute tight bounds on the aliasing error. From these bounds we derive our shadow map parameterization, which is a simple combination of a perspective projection with a logarithmic transformation. We formulate several types of logarithmic perspective shadow maps (LogPSMs) by replacing the parameterization of existing algorithms with our own. We perform an extensive error analysis for both LogPSMs and existing algorithms. This analysis is a major contribution of this paper and is useful for gaining insight into existing techniques. We show that compared with competing algorithms, LogPSMs can produce significantly less aliasing error. Equivalently, for the same error as competing algorithms, LogPSMs can produce significant savings in both storage and bandwidth. We demonstrate the benefit of LogPSMs for several models of varying complexity. Brandon Lloyd, Naga K. Govindaraju, Cory Quammen, Steven E. Molnar, Dinesh Manocha |
ACM Trans. Graph. | 2 |
| 2007 | In-memory grid files on graphics processorsabstractRecently, graphics processing units, or GPUs, have become a viable alternative as commodity, parallel hardware for general-purpose computing, due to their massive data-parallelism, high memory bandwidth, and improved general-purpose programming interface. In this paper, we explore the use of GPU on the grid file, a traditional multidimensional access method. Considering the hardware characteristics of GPUs, we design a massively multi-threaded GPU-based grid file for static, memory-resident multidimensional point data. Moreover, we propose a hierarchical grid file variant to handle data skews efficiently. Our implementations on the NVIDIA G80 GTX graphics card are able to achieve two to eight times' higher performance than their CPU counterparts on a single PC. Bingsheng He, Mian Lu, Naga K. Govindaraju, Qiong Luo 0001, Pedro V. Sander, Jiaoying Shi |
DaMoN | 5 |
| 2007 | Surface distance mapsabstractWe present a new parameterized representation called surface distance maps for distance computations on piecewise 2-manifold primitives. Given a set of orientable 2-manifold primitives, the surface distance map represents the (non-zero) signed distance-to-closest-primitive mapping at each point on a 2-manifold. The distance mapping is computed from each primitive to the set of remaining primitives. We present an interactive algorithm for computing the surface distance map of triangulated meshes using graphics hardware. We precompute a surface parameterization and use the it to define an affine transformation for each mesh primitive. Our algorithm efficiently computes the distance field by applying this affine transformation to the distance functions of the primitives and evaluating these functions using texture mapping hardware. In practice, our algorithm can compute very high resolution surface distance maps at interactive rates and provides tight error bounds on their accuracy. We use surface distance maps for path planning and proximity query computation among complex models in dynamic environments. Our approach can perform planning and proximity queries in a dynamic environment with hundreds of objects at interactive rates and offer significant speedups over prior algorithms. Avneesh Sud, Naga K. Govindaraju, Russell Gayle, Dinesh Manocha |
Graphics Interface | 2 |
| 2007 | Image-Based Proxy Accumulation for Real-Time Soft Global IlluminationabstractWe present a new, general, and real-time technique for soft global illumination in low-frequency environmental lighting. It accumulates over relatively few spherical proxies which approximate the light blocking and re-radiating effect of dynamic geometry. Soft shadows are computed by accumulating log visibility vectors for each sphere proxy as seen by each receiver point. Inter-reflections are computed by accumulating vectors representing the proxy's unshadowed radiance when illuminated by the environment. Both vectors capture low-frequency directional dependence using the spherical harmonic basis. We also present a new proxy accumulation strategy that splats each proxy to receiver pixels in image space to collect its shadowing and indirect lighting contribution. Our soft GI rendering pipeline unifies direct and indirect soft effects with a simple accumulation strategy that maps entirely to the GPU and outperforms previous vertex-based methods. Peter-Pike J. Sloan, Naga K. Govindaraju, Derek Nowrouzezahrai, John M. Snyder |
PG | 2 |
| 2007 | Efficient gather and scatter operations on graphics processorsabstractGather and scatter are two fundamental data-parallel operations, where a large number of data items are read (gathered) from or are written (scattered) to given locations. In this paper, we study these two operations on graphics processing units (GPUs). Bingsheng He, Naga K. Govindaraju, Qiong Luo 0001, Burton Smith |
SC | 2 |
| 2007 | GPUQP: query co-processing using graphics processorsabstractWe present GPUQP, a relational query engine that employs both CPUs and GPUs (Graphics Processing Units) for in-memory query co-processing. GPUs are commodity processors traditionally designed for graphics applications. Recent research has shown that they can accelerate some database operations orders of magnitude over CPUs. So far, there has been little work on how GPUs can be programmed for heavy-duty database constructs, such as tree indexes and joins, and how well a full-fledged GPU query co-processor performs in comparison with their CPU counterparts. In this work, we explore the design decisions in using GPUs for query co-processing using both a graphics API and a general purpose programming model. We then demonstrate the processing flows as well as the performance results of our methods. Bingsheng He, Mian Lu, Naga K. Govindaraju, Qiong Luo 0001, Pedro V. Sander |
SIGMOD Conference | 5 |
| 2007 | Fast continuous collision detection among deformable models using graphics processors
Naga K. Govindaraju, Ilknur Kabul, Ming C. Lin, Dinesh Manocha |
Comput. Graph. | 1 |
| 2007 | Cache-efficient numerical algorithms using graphics hardware
Naga K. Govindaraju, Dinesh Manocha |
Parallel Comput. | 1 |
| 2006 | Fast Continuous Collision Detection among Deformable Models using Graphics Processors
Naga K. Govindaraju, Ilknur Kabul, Ming C. Lin, Dinesh Manocha |
EGVE | 1 |
| 2006 | Query Co-Processing on Commodity HardwareabstractThe rapid increase in the data volumes for the past few decades has intensified the need for high processing power for database and data mining applications. Researchers have actively sought to design and develop new architectures for improving the performance. Recent research shows that the performance can be significantly improved using either (a) effective utilization of architectural features and memory hierarchies used by the conventional processors, or (b) the high computational power and memory bandwidth in commodity hardware such as network processing units (NPUs), and graphics processing units (GPUs). This seminar will survey the micro-architectural and architectural differences across these processors with data management in mind, and will present previous work and future opportunities for expanding query processing algorithms to other hardware than general-purpose processors. In addition to the database community, we intend to increase awareness in the computer architecture scene about opportunities to construct heterogeneous chips (chip multiprocessors with different architectures in them). Anastasia Ailamaki, Naga K. Govindaraju, Dinesh Manocha |
ICDE | 2 |
| 2006 | Memory - A memory model for scientific algorithms on graphics processorsabstractWe present a memory model to analyze and improve the performance of scientific algorithms on graphics processing units (GPUs). Our memory model is based on texturing hardware, which uses a 2D block-based array representation to perform the underlying computations. We incorporate many characteristics of GPU architectures including smaller cache sizes, 2D block representations, and use the 3C's model to analyze the cache misses. Moreover. we present techniques to improve the performance of nested loops on GPUs. In order to demonstrate the effectiveness of our model, we highlight its performance on three memory-intensive scientific applications - sorting, fast Fourier transform and dense matrix-multiplication. In practice, our cache-efficient algorithms for these applications are able to achieve memory throughput of 30-50 GB/s on a NVIDIA 7900 GTX GPU. We also compare our results with prior GPU-based and CPU-based implementations on high-end processors. In practice, we are able to achieve 2-5 x performance improvement. Naga K. Govindaraju, Scott Larsen, Jim Gray 0001, Dinesh Manocha |
SC | 1 |
| 2006 | S07 - GPGPU: general-purpose computation on graphics hardwareabstractThe graphics processor (GPU) on today's commodity video cards has evolved into an extremely powerful and flexible processor. Modern graphics architectures provide tremendous memory bandwidth and computational horsepower, with dozens of fully programmable shading units that support vector operations and IEEE floating point precision. High-level languages have emerged for graphics hardware, making this computational power accessible. GPGPU stands for "General-Purpose Computation on GPUs". GPGPU researchers have achieved over an order of magnitude speedup over modern CPUs on some non-graphics problems.This course provides detailed coverage of general-purpose computation on graphics hardware. We emphasize core computational building blocks, ranging from linear algebra to database queries, and review the tools, perils, and strategies in GPU programming. We present analysis of GPU performance characteristics, and use this analysis to provide insight into how to build efficient GPGPU algorithms. Finally we present a set of case studies on general-purpose applications of graphics hardware. David P. Luebke, Mark J. Harris, Naga K. Govindaraju, Aaron E. Lefohn, Mike Houston, John D. Owens, Mark Segal, Matthew Papakipos, Ian Buck |
SC | 3 |
| 2006 | Interactive 3D distance field computation using linear factorizationabstractWe present an interactive algorithm to compute discretized 3D Euclidean distance fields. Given a set of piecewise linear geometric primitives, our algorithm computes the distance field for each slice of a uniform spatial grid. We express the non-linear distance function of each primitive as a dot product of linear factors. The linear terms are efficiently computed using texture mapping hardware. We also improve the performance by using culling techniques that reduce the number of distance function evaluations using bounds on Voronoi regions of the primitives. Our algorithm involves no preprocessing and is able to handle complex deforming models at interactive rates. We have implemented our algorithm on a PC with NVIDIA GeForce 7800 GPU and applied it to models composed of thousands of triangles. We demonstrate its application to medial axis approximation and proximity computations between rigid and deformable models. In practice, our algorithm is more accurate and almost one order of magnitude faster as compared to previous distance computation algorithms that use graphics hardware. Avneesh Sud, Naga K. Govindaraju, Russell Gayle, Dinesh Manocha |
SI3D | 2 |
| 2006 | GPUTeraSort: high performance graphics co-processor sorting for large database managementabstractWe present a novel external sorting algorithm using graphics processors (GPUs) on large databases composed of billions of records and wide keys. Our algorithm uses the data parallelism within a GPU along with task parallelism by scheduling some of the memory-intensive and compute-intensive threads on the GPU. Our new sorting architecture provides multiple memory interfaces on the same PC -- a fast and dedicated memory interface on the GPU along with the main memory interface for CPU computations. As a result, we achieve higher memory bandwidth as compared to CPU-based algorithms running on commodity PCs. Our approach takes into account the limited communication bandwidth between the CPU and the GPU, and reduces the data communication between the two processors. Our algorithm also improves the performance of disk transfers and achieves close to peak I/O performance. We have tested the performance of our algorithm on the SortBenchmark and applied it to large databases composed of a few hundred Gigabytes of data. Our results on a 3 GHz Pentium IV PC with $300 NVIDIA 7800 GT GPU indicate a significant performance improvement over optimized CPU-based algorithms on high-end PCs with 3.6 GHz Dual Xeon processors. Our implementation is able to outperform the current high-end PennySort benchmark and results in a higher performance to price ratio. Overall, our results indicate that using a GPU as a co-processor can significantly improve the performance of sorting algorithms on large databases. Naga K. Govindaraju, Jim Gray 0001, Dinesh Manocha |
SIGMOD Conference | 1 |
| 2006 | Query Co-Processing on Commodity Processors
Anastasia Ailamaki, Naga K. Govindaraju, Stavros Harizopoulos, Dinesh Manocha |
VLDB | 2 |
| 2006 | Fast proximity computation among deformable models using discrete Voronoi diagramsabstractWe present novel algorithms to perform collision and distance queries among multiple deformable models in dynamic environments. These include inter-object queries between different objects as well as intra-object queries. We describe a unified approach to compute these queries based on N-body distance computation and use properties of the 2 nd order discrete Voronoi diagram to perform N-body culling. Our algorithms involve no preprocessing and also work well on models with changing topologies. We can perform all proximity queries among complex deformable models consisting of thousands of triangles in a fraction of a second on a high-end PC. Moreover, our Voronoi-based culling algorithm can improve the performance of separation distance and penetration queries by an order of magnitude. Avneesh Sud, Naga K. Govindaraju, Russell Gayle, Ilknur Kabul, Dinesh Manocha |
ACM Trans. Graph. | 2 |
| 2006 | Fast and Reliable Collision Culling Using Graphics HardwareabstractWe present a reliable culling algorithm that enables fast and accurate collision detection between triangulated models in a complex environment. Our algorithm performs fast visibility queries on the GPUs for eliminating a subset of primitives that are not in close proximity. In order to overcome the accuracy problems caused by the limited viewport resolution, we compute the Minkowski sum of each primitive with a sphere and perform reliable 2.5D overlap tests between the primitives. We are able to achieve more effective collision culling as compared to prior object-space culling algorithms. We integrate our culling algorithm with CULLIDE [1] and use it to perform reliable GPU-based collision queries at interactive rates on all types of models, including nonmanifold geometry, deformable models, and breaking objects. Naga K. Govindaraju, Ming C. Lin, Dinesh Manocha |
IEEE Trans. Vis. Comput. Graph. | 1 |
| 2005 | Fast and reliable collision detection using graphics processorsabstractWe present a fast and reliable collision detection algorithm using graphics processors. We use visibility computations to prune non-overlapping pairs of triangles. We overcome the accuracy problems due to limited viewport resolution using Minkowski sums of primitives and a pixel-size sphere. Naga K. Govindaraju, Ming C. Lin, Dinesh Manocha |
SCG | 1 |
| 2005 | Efficient Relational Database Management using Graphics Processors
Naga K. Govindaraju, Dinesh Manocha |
DaMoN | 1 |
| 2005 | LU-GPU: Efficient Algorithms for Solving Dense Linear Systems on Graphics HardwareabstractWe present a novel algorithm to solve dense linear systems using graphics processors (GPUs). We reduce matrix decomposition and row operations to a series of rasterization problems on the GPU. These include new techniques for streaming index pairs, swapping rows and columns and parallelizing the computation to utilize multiple vertex and fragment processors. We also use appropriate data representations to match the rasterization order and cache technology of graphics processors. We have implemented our algorithm on different GPUs and compared the performance with optimized CPU implementations. In particular, our implementation on a NVIDIA GeForce 7800 GPU outperforms a CPU-based ATLAS implementation. Moreover, our results show that our algorithm is cache and bandwidth efficient and scales well with the number of fragment processors within the GPU and the core GPU clock rate. We use our algorithm for fluid flow simulation and demonstrate that the commodity GPU is a useful co-processor for many scientific applications. Nico Galoppo, Naga K. Govindaraju, Michael Henson, Dinesh Manocha |
SC | 2 |
| 2005 | Interactive visibility ordering and transparency computations among geometric primitives in complex environmentsabstractWe describe a novel algorithm for visibility ordering among non-overlapping geometric objects in complex and dynamic environments. Our algorithm rearranges the objects in a back-to-front or a front-to-back order from a given viewpoint. We perform comparisons between the primitives by using occlusion queries on the GPUs and exploit frame to frame coherence to reduce the number of occlusion queries. Our visibility ordering algorithm requires no preprocessing and is applicable to all kind of models, including polygon soups and deformable models. We have used our algorithm for order-independent transparency computations in high-depth complexity environments and performing N-body collision culling in dynamic environments. We have implemented our algorithm on a PC with a 3.4 GHz Pentium IV CPU with a NVIDIA GeForce FX 6800 Ultra GPU and applied it to complex environments with tens or hundreds of thousands of polygons. Our algorithm can compute a visibility ordering among the objects and triangles at interactive frame rates. Naga K. Govindaraju, Michael Henson, Ming C. Lin, Dinesh Manocha |
SI3D | 1 |
| 2005 | Fast and Approximate Stream Mining of Quantiles and Frequencies Using Graphics ProcessorsabstractWe present algorithms for fast quantile and frequency estimation in large data streams using graphics processors (GPUs). We exploit the high computation power and memory bandwidth of graphics processors and present a new sorting algorithm that performs rasterization operations on the GPUs. We use sorting as the main computational component for histogram approximation and construction of ε-approximate quantile and frequency summaries. Our algorithms for numerical statistics computation on data streams are deterministic, applicable to fixed or variable-sized sliding windows and use a limited memory footprint. We use GPU as a co-processor and minimize the data transmission between the CPU and GPU by taking into account the low bus bandwidth. We implemented our algorithms on a PC with a NVIDIA GeForce FX 6800 Ultra GPU and a 3.4 GHz Pentium IV CPU and applied them to large data streams consisting of more than 100 million values. We also compared the performance of our GPU-based algorithms with optimized implementations of prior CPU-based algorithms. Overall, our results demonstrate that the graphics processors available on a commodity computer system are efficient stream-processor and useful co-processors for mining data streams. Naga K. Govindaraju, Nikunj Raghuvanshi, Dinesh Manocha |
SIGMOD Conference | 1 |
| 2005 | Quick-CULLIDE: Fast Inter- and Intra-Object Collision Culling Using Graphics HardwareabstractWe present a fast collision culling algorithm for performing interand intra-object collision detection among complex models using graphics hardware. Our algorithm is based on CULLIDE [8] and performs visibility queries on the GPUs to eliminate a subset of geometric primitives that are not in close proximity. We present an extension to CULLIDE to perform intra-object or selfcollisions between complex models. Furthermore, we describe a novel visibility-based classification scheme to compute potentiallycolliding and collision-free subsets of objects and primitives, which considerably improves the culling performance. We have implemented our algorithm on a PC with an NVIDIA GeForce FX 6800 Ultra graphics card and applied it to three complex simulations, each consisting of objects with tens of thousands of triangles. In practice, we are able to compute all the self-collisions for cloth simulation up to image-space precision at interactive rates. Naga K. Govindaraju, Ming C. Lin, Dinesh Manocha |
VR | 1 |
| 2005 | Multi-resolution collision handling for cloth-like simulationsabstractAbstract We present a novel multi‐resolution algorithm for simulation of complex cloth‐like deforming meshes. Our algorithm precomputes a multi‐resolution hierarchy by using a combination of ‘chromatic decomposition’1and polygonal simplification of the underlying mesh. At runtime we selectively refine or coarsen the mesh based on the collision proximity of the mesh primitives with non‐adjacent primitives. Our algorithm handles all kind of contacts, including self collisions among mesh primitives. The multi‐resolution hierarchy is used to compute simplification of contact manifolds and to accelerate collision detection and response computations. We have implemented our algorithm on a high‐end PC and applied it to complex simulations with tens of thousands of polygons. In practice, our algorithm is able to achieve interactive performance, while maintaining good visual fidelity. Copyright © 2005 John Wiley & Sons, Ltd. Nitin Jain, Ilknur Kabul, Naga K. Govindaraju, Dinesh Manocha, Ming C. Lin |
Comput. Animat. Virtual Worlds | 3 |
| 2005 | Interactive collision detection between deformable models using chromatic decompositionabstractWe present a novel algorithm for accurately detecting all contacts, including self-collisions, between deformable models. We precompute a chromatic decomposition of a mesh into non-adjacent primitives using graph coloring algorithms. The chromatic decomposition enables us to check for collisions between non-adjacent primitives using a linear-time culling algorithm. As a result, we achieve higher culling efficiency and significantly reduce the number of false positives. We use our algorithm to check for collisions among complex deformable models consisting of tens of thousands of triangles for cloth modeling and medical simulation. Our algorithm accurately computes all contacts at interactive rates. We observed up to an order of magnitude speedup over prior methods. Naga K. Govindaraju, David Knott, Nitin Jain, Ilknur Kabul, Rasmus Tamstorf, Russell Gayle, Ming C. Lin, Dinesh Manocha |
ACM Trans. Graph. | 1 |
| 2004 | Fast Computation of Database Operations using Graphics ProcessorsabstractWe present new algorithms for performing fast computation of several common database operations on commodity graphics processors. Specifically, we consider operations such as conjunctive selections, aggregations, and semi-linear queries, which are essential computational components of typical database, data warehousing, and data mining applications. While graphics processing units (GPUs) have been designed for fast display of geometric primitives, we utilize the inherent pipelining and parallelism, single instruction and multiple data (SIMD) capabilities, and vector processing functionality of GPUs, for evaluating boolean predicate combinations and semi-linear queries on attributes and executing database operations efficiently. Our algorithms take into account some of the limitations of the programming model of current GPUs and perform no data rearrangements. Our algorithms have been implemented on a programmable GPU (e.g. NVIDIA's GeForce FX 5900) and applied to databases consisting of up to a million records. We have compared their performance with an optimized implementation of CPU-based algorithms. Our experiments indicate that the graphics processor available on commodity computer systems is an effective co-processor for performing database operations. Naga K. Govindaraju, Brandon Lloyd, Wei Wang 0010, Ming C. Lin, Dinesh Manocha |
SIGMOD Conference | 1 |
| 2004 | Fast and reliable collision culling using graphics hardwareabstractWe present a reliable culling algorithm that enables fast and accurate collision detection between triangulated models in a complex environment. Our algorithm performs fast visibility queries on the GPUs for eliminating a subset of primitives that are not in close proximity. To overcome the accuracy problems caused by the limited viewport resolution, we compute the Minkowski sum of each primitive with a sphere and perform reliable 2.5D overlap tests between the primitives. We are able to achieve more effective collision culling as compared to prior object-space culling algorithms. We integrate our culling algorithm with CULLIDE [8] and use it to perform reliable GPU-based collision queries at interactive rates on all types of models, including non-manifold geometry, deformable models, and breaking objects. Naga K. Govindaraju, Ming C. Lin, Dinesh Manocha |
VRST | 1 |
| 2003 | Interactive visibility culling in complex environments using occlusion-switchesabstractWe present occlusion-switches for interactive visibility culling in complex 3D environments. An occlusion-switch consists of two GPUs (graphics processing units) and each GPU is used to either compute an occlusion representation or cull away primitives not visible from the current viewpoint. Moreover, we switch the roles of each GPU between successive frames. The visible primitives are rendered in parallel on a third GPU. We utilize frame-to-frame coherence to lower the communication overhead between different GPUs and improve the overall performance. The overall visibility culling algorithm is conservative up to image-space precision. This algorithm has been combined with levels-of-detail and implemented on three networked PCs, each consisting of a single GPU. We highlight its performance on complex environments composed of tens of millions of triangles. In practice, it is able to render these environments at interactive rates with little loss in image quality. Naga K. Govindaraju, Avneesh Sud, Sung-Eui Yoon, Dinesh Manocha |
SI3D | 1 |
| 2003 | Interactive shadow generation in complex environmentsabstractWe present a new algorithm for interactive generation of hard-edged, umbral shadows in complex environments with a moving light source. Our algorithm uses a hybrid approach that combines the image quality of object-precision methods with the efficiencies of image-precision techniques. We present an algorithm for computing a compact potentially visible set (PVS) using levels-of-detail (LODs) and visibility culling. We use the PVSs computed from both the eye and the light in a novel cross-culling algorithm that identifies a reduced set of potential shadow-casters and shadow-receivers. Finally, we use a combination of shadow-polygons and shadow maps to generate shadows. We also present techniques for LOD-selection to minimize possible artifacts arising from the use of LODs. Our algorithm can generate sharp shadow edges and reduces the aliasing in pure shadow map approaches. We have implemented the algorithm on a three-PC system with NVIDIA GeForce 4 cards. We achieve 7--25 frames per second in three complex environments composed of millions of triangles. Naga K. Govindaraju, Brandon Lloyd, Sung-Eui Yoon, Avneesh Sud, Dinesh Manocha |
ACM Trans. Graph. | 1 |