Prasun Gera

dblp:190/7262 · DBLP profile ↗
← Back
6ranked-venue papers
3as first author
1since 2021 · last 2023
—ORCID · none

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

Systems, architecture and hardware · 3 · 1 first-author · 1 since 2021Software engineering, systems software and programming languages · 2 · 1 first-authorSecurity and privacy · 1Databases, data management, data science and information retrieval · 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.

Computer architecture, parallel and distributed computing, and storage systems
3 papers
GPUs and heterogeneous computing · 38% Memory systems · 38% High-performance computing · 12%
Theoretical computer science
1 paper
Graph algorithms and graph theory · 77% Mathematical optimization · 23%
Network and information security
1 paper
Hardware security and side channels · 100%

Topics — the 15 heaviest of 16, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
GPUs and heterogeneous computing › GPU memory management
unified virtual memory
0.922020
Traversing Large Graphs on GPUs with Unified Memory · Proc. VLDB Endow. 2020
Batch-Aware Unified Memory Management in GPUs for Irregular Workloads · ASPLOS 2020
Memory systems › virtual memory management
demand paging
0.412020
Batch-Aware Unified Memory Management in GPUs for Irregular Workloads · ASPLOS 2020
GPUs and heterogeneous computing
GPU memory management
0.412020
Batch-Aware Unified Memory Management in GPUs for Irregular Workloads · ASPLOS 2020
Memory systems › data layout optimization
graph reordering
0.412020
Traversing Large Graphs on GPUs with Unified Memory · Proc. VLDB Endow. 2020
Parallel and multicore computing › graph processing
graph traversal
0.412020
Traversing Large Graphs on GPUs with Unified Memory · Proc. VLDB Endow. 2020
Memory systems › memory management
virtual memory
0.412020
Batch-Aware Unified Memory Management in GPUs for Irregular Workloads · ASPLOS 2020
Graph algorithms and graph theory › shortest path
all-pairs shortest paths
0.412020
A supernodal all-pairs shortest path algorithm · PPoPP 2020
Graph algorithms and graph theory › graph algorithms › path problems
shortest path algorithms
0.412020
A supernodal all-pairs shortest path algorithm · PPoPP 2020
Hardware security and side channels › trusted execution environments
SGX enclave
0.312017
Inferring Fine-grained Control Flow Inside SGX Enclaves with Branch Shadowing · USENIX Security Symposium 2017
Hardware security and side channels
side-channel attack
0.312017
Inferring Fine-grained Control Flow Inside SGX Enclaves with Branch Shadowing · USENIX Security Symposium 2017
Hardware security and side channels
trusted execution environments
0.312017
Inferring Fine-grained Control Flow Inside SGX Enclaves with Branch Shadowing · USENIX Security Symposium 2017
Memory systems › data locality
cache locality
0.112020
Traversing Large Graphs on GPUs with Unified Memory · Proc. VLDB Endow. 2020
GPUs and heterogeneous computing
GPU runtime systems
0.112020
Batch-Aware Unified Memory Management in GPUs for Irregular Workloads · ASPLOS 2020
Mathematical optimization › numerical computation
cholesky factorization
0.112020
A supernodal all-pairs shortest path algorithm · PPoPP 2020
Mathematical optimization › continuous optimization › matrix optimization
sparse matrix factorization
0.112020
A supernodal all-pairs shortest path algorithm · PPoPP 2020

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

symbolic analysis · 0.9supernodal traversal · 0.9fill-in reducing ordering · 0.9elimination tree parallelism · 0.9recursive graph bisection · 0.4page prefetching · 0.4graph reordering · 0.4context switching · 0.4batch processing · 0.4
YearPublicationVenuePosition
2023 Traversing Large Compressed Graphs on GPUs
abstract
GPUs can be used effectively for accelerating graph analytics, provided the datasets fit in GPU memory. This is often not the case for large real-world datasets such as social, web, or biological graphs. We propose a graph compression format for static unweighted graphs based on Elias-Fano encoding that is amenable to run-time decompression on massively parallel architectures such as GPUs. We show that we can compress a variety of large graphs by a factor of 1.55x over the commonly used compressed sparse row (CSR) representation. The scheme is particularly beneficial for cases where conventional CSR based approaches do not work at all due to memory capacity constraints, or incur a significant penalty for out-of-core processing. We implement GPU accelerated breadth first search for this graph representation and show that the runtime performance for in-memory compressed graphs is 3.8x-6.5x better than out-of-core implementations for CSR graphs. Further, our implementation is also 1.45x-2x faster than the current state of the art in GPU based compressed graph traversals while maintaining a competitive compression ratio. We also extend our work to other analytics applications such as single source shortest paths and PageRank. Finally, we explore the interplay between graph reordering, graph compression, and performance.
Prasun Gera, Hyesoon Kim
IPDPS1
2020 Batch-Aware Unified Memory Management in GPUs for Irregular Workloads
abstract
While unified virtual memory and demand paging in modern GPUs provide convenient abstractions to programmers for working with large-scale applications, they come at a significant performance cost. We provide the first comprehensive analysis of major inefficiencies that arise in page fault handling mechanisms employed in modern GPUs. To amortize the high costs in fault handling, the GPU runtime processes a large number of GPU page faults together. We observe that this batched processing of page faults introduces large-scale serialization that greatly hurts the GPU's execution throughput. We show real machine measurements that corroborate our findings. Our goal is to mitigate these inefficiencies and enable efficient demand paging for GPUs. To this end, we propose a GPU runtime software and hardware solution that (1) increases the batch size (i.e., the number of page faults handled together), thereby amortizing the øverheadName time, and reduces the number of batches by supporting CPU-like thread block context switching, and (2) takes page eviction off the critical path with no hardware changes by overlapping evictions with CPU-to-GPU page migrations. Our evaluation demonstrates that the proposed solution provides an average speedup of 2x over the state-of-the-art page prefetching. We show that our solution increases the batch size by 2.27x and reduces the total number of batches by 51% on average. We also show that the average batch processing time is reduced by 27%.
Hyojong Kim, Jaewoong Sim, Prasun Gera, Ramyad Hadidi, Hyesoon Kim
ASPLOS3
2020 A supernodal all-pairs shortest path algorithm
abstract
We show how to exploit graph sparsity in the Floyd-Warshall algorithm for the all-pairs shortest path (Apsp) problem. Floyd-Warshall is an attractive choice for Apsp on high-performing systems due to its structural similarity to solving dense linear systems and matrix multiplication. However, if sparsity of the input graph is not properly exploited, Floyd-Warshall will perform unnecessary asymptotic work and thus may not be a suitable choice for many input graphs. To overcome this limitation, the key idea in our approach is to use the known algebraic relationship between Floyd-Warshall and Gaussian elimination, and import several algorithmic techniques from sparse Cholesky factorization, namely, fill-in reducing ordering, symbolic analysis, supernodal traversal, and elimination tree parallelism. When combined, these techniques reduce computation, improve locality and enhance parallelism. We implement these ideas in an efficient shared memory parallel prototype that is orders of magnitude faster than an efficient multi-threaded baseline Floyd-Warshall that does not exploit sparsity. Our experiments suggest that the Floyd-Warshall algorithm can compete with Dijkstra's algorithm (the algorithmic core of Johnson's algorithm) for several classes sparse graphs.
Piyush Sao, Ramakrishnan Kannan, Prasun Gera, Richard W. Vuduc
PPoPP3
2020 Traversing Large Graphs on GPUs with Unified Memory
abstract
Due to the limited capacity of GPU memory, the majority of prior work on graph applications on GPUs has been restricted to graphs of modest sizes that fit in memory. Recent hardware and software advances make it possible to address much larger host memory transparently as a part of a feature known as unified virtual memory. While accessing host memory over an interconnect is understandably slower, the problem space has not been sufficiently explored in the context of a challenging workload with low computational intensity and an irregular data access pattern such as graph traversal. We analyse the performance of breadth first search (BFS) for several large graphs in the context of unified memory and identify the key factors that contribute to slowdowns. Next, we propose a lightweight offline graph reordering algorithm, HALO (Harmonic Locality Ordering), that can be used as a pre-processing step for static graphs. HALO yields speedups of 1.5x-1.9x over baseline in subsequent traversals. Our method specifically aims to cover large directed real world graphs in addition to undirected graphs whereas prior methods only account for the latter. Additionally, we demonstrate ties between the locality ordering problem and graph compression and show that prior methods from graph compression such as recursive graph bisection can be suitably adapted to this problem.
Prasun Gera, Hyojong Kim, Piyush Sao, Hyesoon Kim, David A. Bader
Proc. VLDB Endow.1
2018 Performance Characterisation and Simulation of Intel's Integrated GPU Architecture
abstract
Integrated GPUs (iGPUs) are ubiquitous in today's client devices such as laptops and desktops. Examples include Intel's HD or Iris Graphics and AMD's APUs. An iGPU resides on the same chip as the CPU, which is in contrast to a conventional discrete GPU that would typically be connected over the PCI-E bus. Much like discrete GPUs, iGPUs are also capable of general purpose computation in addition to traditional graphics roles. Further, iGPUs have some interesting differences compared to traditional GPUs such as a cache-coherent memory hierarchy and a shared last level cache with the CPU. Despite their wide spread use, they are not studied very extensively. To the best of our knowledge, this paper introduces the first open source trace generation and microarchitectural simulation framework for Intel's integrated GPUs. We characterise the performance of Intel's Skylake and Kabylake GPUs through detailed microbenchmarks, and use the performance evaluations to guide our models and validate the simulator.
Prasun Gera, Hyojong Kim, Hyesoon Kim, Sunpyo Hong, Vinod George, Chi-Keung Luk
ISPASS1
2017 Inferring Fine-grained Control Flow Inside SGX Enclaves with Branch Shadowing
Sangho Lee 0001, Ming-Wei Shih, Prasun Gera, Taesoo Kim, Hyesoon Kim, Marcus Peinado
USENIX Security Symposium3