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

Negin Mahani

dblp:21/11071 · also Negin Nematollahi · DBLP profile ↗
← Back
4ranked-venue papers
2as first author
4since 2021 · last 2025
0000-0001-5232-3539ORCID · verified

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

Systems, architecture and hardware · 4 · 2 first-author · 4 since 2021

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
4 papers
GPUs and heterogeneous computing · 43% Memory systems · 31% Parallel and multicore computing · 9%

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

TopicWeightPapersLastEvidence papers
GPUs and heterogeneous computing › GPU memory
GPU memory hierarchy
1.522025
A Low-latency On-chip Cache Hierarchy for Load-to-use Stall Reduction in GPUs · ACM Trans. Archit. Code Optim. 2025
Snake: A Variable-length Chain-based Prefetching for GPUs · MICRO 2023
Distributed systems › resource sharing
data sharing
0.912025
VISTA: Optimizing GPU Scheduling through Versatile Locality-Aware Data Sharing · DAC 2025
GPUs and heterogeneous computing › GPU memory management
GPU memory access optimization
0.912025
VISTA: Optimizing GPU Scheduling through Versatile Locality-Aware Data Sharing · DAC 2025
GPUs and heterogeneous computing
GPU scheduling
0.912025
VISTA: Optimizing GPU Scheduling through Versatile Locality-Aware Data Sharing · DAC 2025
Memory systems › cache › CPU cache
l1 data cache
0.912025
A Low-latency On-chip Cache Hierarchy for Load-to-use Stall Reduction in GPUs · ACM Trans. Archit. Code Optim. 2025
Parallel and multicore computing › parallel scheduling
locality-aware scheduling
0.912025
VISTA: Optimizing GPU Scheduling through Versatile Locality-Aware Data Sharing · DAC 2025
Memory systems
cache
0.712023
Snake: A Variable-length Chain-based Prefetching for GPUs · MICRO 2023
Memory systems › cache
prefetching
0.712023
Snake: A Variable-length Chain-based Prefetching for GPUs · MICRO 2023
GPUs and heterogeneous computing
GPU architecture
0.512021
Efficient Nearest-Neighbor Data Sharing in GPUs · ACM Trans. Archit. Code Optim. 2021
High-performance computing
stencil computation
0.512021
Efficient Nearest-Neighbor Data Sharing in GPUs · ACM Trans. Archit. Code Optim. 2021
Memory systems › memory hierarchy
cache hierarchy
0.312025
A Low-latency On-chip Cache Hierarchy for Load-to-use Stall Reduction in GPUs · ACM Trans. Archit. Code Optim. 2025
Memory systems
cache management
0.312025
A Low-latency On-chip Cache Hierarchy for Load-to-use Stall Reduction in GPUs · ACM Trans. Archit. Code Optim. 2025
GPUs and heterogeneous computing
GPU computing
0.212023
Snake: A Variable-length Chain-based Prefetching for GPUs · MICRO 2023
Memory systems
memory-bound computation
0.212023
Snake: A Variable-length Chain-based Prefetching for GPUs · MICRO 2023
Electronic design automation › high-level synthesis › resource binding
register allocation
0.112021
Efficient Nearest-Neighbor Data Sharing in GPUs · ACM Trans. Archit. Code Optim. 2021

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

simulation · 0.9runtime locality detection · 0.9learning-based cache utility prediction · 0.9throttling · 0.7memory decoupling · 0.7cycle-accurate simulation · 0.5compiler-allocated registers · 0.5
YearPublicationVenuePosition
2025 VISTA: Optimizing GPU Scheduling through Versatile Locality-Aware Data Sharing
abstract
Graphics Processing Units (GPUs) play a pivotal role in high-performance computing by utilizing the massive parallelism of concurrent thread execution to enhance processing efficiency, known as thread-level parallelism (TLP). However, effectively managing the significant memory access generated by a large number of concurrent threads presents a significant challenge, affecting both performance and energy consumption. However, previous GPU scheduling methods often overlook the significant potential of data sharing among non-adjacent warps or Cooperative Thread Arrays (CTAs), thereby limiting their effectiveness in reducing unnecessary memory accesses through supporting data sharing. Our observation underscores the untapped potential of non-adjacent data sharing, motivating our work to optimize schedules more effectively. In this paper, we present VISTA, a smart locality-aware GPU scheduler that dynamically identifies data locality patterns at both the CTA and warp levels, leveraging this runtime information to make intelligent scheduling decisions and improving memory efficiency and overall performance. VISTA significantly reduces unnecessary memory accesses. Simulation results show a 48.1% improvement in performance and a 51.8% reduction in energy consumption for memory-intensive GPGPU applications, compared to the baseline, with negligible hardware overhead.
Hajar Falahati, Negin Mahani, Adrián Cristal, Osman S. Unsal
DAC2
2025 A Low-latency On-chip Cache Hierarchy for Load-to-use Stall Reduction in GPUs
abstract
Memory hierarchy in Graphics Processing Units (GPUs) is conventionally designed to provide high bandwidth rather than low latency. In particular, because of the high tolerance to load-to-use latency (i.e., the time that warps wait for data fetched by memory loads), GPU L1D caches are optimized for density, capacity, and low power with latencies that are often orders of magnitude longer than conventional CPU caches. However, there are many important classes of data-parallel applications (e.g., graph, tree, priority queue processing, and sparse deep learning applications) that benefit from lower load-to-use latency than that offered by modern GPUs due to their inherent divergence and low effective Thread-Level Parallelism (TLP). This article introduces an innovative on-chip cache hierarchy that incorporates a decoupled L1D cache with reduced latency (LoTUS) and its management scheme. LoTUS is a minimally sized fully associative cache placed in each GPU subcore that captures the primary working set of data-parallel applications. It exploits conventional high-performance low-density SRAM cells and dramatically reduces load-to-use latency. We also propose an intelligent extension of LoTUS, called LoTUSage, which employs a lightweight learning-based model to predict the utility of caching requests in LoTUS. Evaluation results show that LoTUS and LoTUSage improve the average performance by 23.9% and 35.4% and reduce the average energy consumption by 27.8% and 38.5%, respectively, for the applications suffering from high load-to-use stalls with negligible area and power overheads.
Negin Mahani, Hajar Falahati, Sina Darabi, Ahmad Javadi Nezhad, Yunho Oh, Mohammad Sadrosadati, Hamid Sarbazi-Azad, Babak Falsafi
ACM Trans. Archit. Code Optim.1
2023 Snake: A Variable-length Chain-based Prefetching for GPUs
abstract
Graphics Processing Units (GPUs) utilize memory hierarchy and Thread-Level Parallelism (TLP) to tolerate off-chip memory latency, which is a significant bottleneck for memory-bound applications. However, parallel threads generate a large number of memory requests, which increases the average memory latency and degrades cache performance due to high contention. Prefetching is an effective technique to reduce memory access latency, and prior research shows the positive impact of stride-based prefetching on GPU performance. However, existing prefetching methods only rely on fixed strides. To address this limitation, this paper proposes a new prefetching technique, Snake, which is built upon chains of variable strides, using throttling and memory decoupling strategies. Snake achieves 80% coverage and 75% accuracy in prefetching demand memory requests, resulting in a 17% improvement in total GPU performance and energy consumption for memory-bound General-Purpose Graphics Processing Unit (GPGPU) applications.
Saba Mostofi, Hajar Falahati, Negin Mahani, Pejman Lotfi-Kamran, Hamid Sarbazi-Azad
MICRO3
2021 Efficient Nearest-Neighbor Data Sharing in GPUs
abstract
Stencil codes (a.k.a. nearest-neighbor computations) are widely used in image processing, machine learning, and scientific applications. Stencil codes incur nearest-neighbor data exchange because the value of each point in the structured grid is calculated as a function of its value and the values of a subset of its nearest-neighbor points. When running on Graphics Processing Unit (GPUs), stencil codes exhibit a high degree of data sharing between nearest-neighbor threads. Sharing is typically implemented through shared memories, shuffle instructions, and on-chip caches and often incurs performance overheads due to the redundancy in memory accesses. In this article, we propose Neighbor Data (NeDa), a direct nearest-neighbor data sharing mechanism that uses two registers embedded in each streaming processor (SP) that can be accessed by nearest-neighbor SP cores. The registers are compiler-allocated and serve as a data exchange mechanism to eliminate nearest-neighbor shared accesses. NeDa is embedded carefully with local wires between SP cores so as to minimize the impact on density. We place and route NeDa in an open-source GPU and show a small area overhead of 1.3%. The cycle-accurate simulation indicates an average performance improvement of 21.8% and power reduction of up to 18.3% for stencil codes in General-Purpose Graphics Processing Unit (GPGPU) standard benchmark suites. We show that NeDa’s performance is within 13.2% of an ideal GPU with no overhead for nearest-neighbor data exchange.
Negin Mahani, Mohammad Sadrosadati, Hajar Falahati, Marzieh Barkhordar, Mario Drumond, Hamid Sarbazi-Azad, Babak Falsafi
ACM Trans. Archit. Code Optim.1