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

Amir Kavyan Ziabari

dblp:133/9875 · DBLP profile ↗
← Back
9ranked-venue papers
3as first author
0since 2021 · last 2019
0000-0002-5963-2374ORCID · corroborated

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

Systems, architecture and hardware · 7 · 3 first-authorSoftware engineering, systems software and programming languages · 5

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
Performance modeling and evaluation · 34% Memory systems · 30% GPUs and heterogeneous computing · 23%

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

TopicWeightPapersLastEvidence papers
GPUs and heterogeneous computing
multi-GPU computing
0.522019
MGPUSim: enabling multi-GPU performance modeling and optimization · ISCA 2019
UMH: A Hardware-Based Unified Memory Hierarchy for Systems with Multiple Discrete GPUs · ACM Trans. Archit. Code Optim. 2016
Performance modeling and evaluation › processor performance modeling › accelerator performance modeling
GPU performance modeling
0.412019
MGPUSim: enabling multi-GPU performance modeling and optimization · ISCA 2019
Performance modeling and evaluation › simulation › parallel architecture simulation
GPU simulation
0.412019
MGPUSim: enabling multi-GPU performance modeling and optimization · ISCA 2019
Performance modeling and evaluation
simulation
0.412019
MGPUSim: enabling multi-GPU performance modeling and optimization · ISCA 2019
Hardware reliability and fault tolerance
error correction
0.312018
Block Cooperation: Advancing Lifetime of Resistive Memories by Increasing Utilization of Error Correcting Codes · ACM Trans. Archit. Code Optim. 2018
Memory systems
non-volatile memory
0.312018
Block Cooperation: Advancing Lifetime of Resistive Memories by Increasing Utilization of Error Correcting Codes · ACM Trans. Archit. Code Optim. 2018
Memory systems
memory hierarchy
0.212016
UMH: A Hardware-Based Unified Memory Hierarchy for Systems with Multiple Discrete GPUs · ACM Trans. Archit. Code Optim. 2016
Memory systems › virtual memory management
unified memory
0.212016
UMH: A Hardware-Based Unified Memory Hierarchy for Systems with Multiple Discrete GPUs · ACM Trans. Archit. Code Optim. 2016
GPUs and heterogeneous computing
GPU microarchitecture
0.112019
MGPUSim: enabling multi-GPU performance modeling and optimization · ISCA 2019
GPUs and heterogeneous computing › multi-GPU computing
multi-GPU interconnect
0.112019
MGPUSim: enabling multi-GPU performance modeling and optimization · ISCA 2019
Hardware reliability and fault tolerance › memory reliability
memory lifetime extension
0.112018
Block Cooperation: Advancing Lifetime of Resistive Memories by Increasing Utilization of Error Correcting Codes · ACM Trans. Archit. Code Optim. 2018
Memory systems
cache coherence
0.112016
UMH: A Hardware-Based Unified Memory Hierarchy for Systems with Multiple Discrete GPUs · ACM Trans. Archit. Code Optim. 2016
GPUs and heterogeneous computing › CPU-GPU heterogeneous computing
CPU-GPU memory management
0.112016
UMH: A Hardware-Based Unified Memory Hierarchy for Systems with Multiple Discrete GPUs · ACM Trans. Archit. Code Optim. 2016
Memory systems › cache coherence
directory-based coherence
0.112016
UMH: A Hardware-Based Unified Memory Hierarchy for Systems with Multiple Discrete GPUs · ACM Trans. Archit. Code Optim. 2016

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

simulation · 0.4monte carlo simulation · 0.3metadata sharing · 0.3data layout reorganization · 0.3block-level cooperation · 0.3NMOESI coherence protocol · 0.2
YearPublicationVenuePosition
2019 MGPUSim: enabling multi-GPU performance modeling and optimization
abstract
The rapidly growing popularity and scale of data-parallel workloads demand a corresponding increase in raw computational power of Graphics Processing Units (GPUs). As single-GPU platforms struggle to satisfy these performance demands, multi-GPU platforms have started to dominate the high-performance computing world. The advent of such systems raises a number of design challenges, including the GPU microarchitecture, multi-GPU interconnect fabric, runtime libraries, and associated programming models. The research community currently lacks a publicly available and comprehensive multi-GPU simulation framework to evaluate next-generation multi-GPU system designs.
Yifan Sun 0002, Trinayan Baruah, Saiful A. Mojumder, Shi Dong 0002, Shane Treadway, Yuhui Bao, Spencer Hance, Carter McCardwell, Vincent Zhao, Harrison Barclay, Amir Kavyan Ziabari, Zhongliang Chen, Rafael Ubal, José L. Abellán, John Kim 0001, Ajay Joshi, David R. Kaeli
ISCA12
2018 Block Cooperation: Advancing Lifetime of Resistive Memories by Increasing Utilization of Error Correcting Codes
abstract
Block-level cooperation is an endurance management technique that operates on top of error correction mechanisms to extend memory lifetimes. Once an error recovery scheme fails to recover from faults in a data block, the entire physical page associated with that block is disabled and becomes unavailable to the physical address space. To reduce the page waste caused by early block failures, other blocks can be used to support the failed block, working cooperatively to keep it alive and extend the faulty page’s lifetime. We combine the proposed technique with existing error recovery schemes, such as Error Correction Pointers (ECP) and Aegis, to increase memory lifetimes. Block cooperation is realized through metadata sharing in ECP, where one data block shares its unused metadata with another data block. When combined with Aegis, block cooperation is realized through reorganizing data layout, where blocks possessing few faults come to the aid of failed blocks, bringing them back from the dead. Our evaluation using Monte Carlo simulation shows that block cooperation at a single level (or multiple levels) on top of ECP and Aegis, boosts memory lifetimes by 28% (37%) and 8% (14%) on average, respectively. Furthermore, using trace-driven benchmark evaluation shows that lifetime boost can reach to 68% (30%) exploiting metadata sharing (or data layout reorganization).
Mohammad Khavari Tavana, Amir Kavyan Ziabari, David R. Kaeli
ACM Trans. Archit. Code Optim.2
2017 TwinKernels: an execution model to improve GPU hardware scheduling at compile time
Zhongliang Chen, Amir Kavyan Ziabari, Rafael Ubal, David R. Kaeli
CGO3
2017 Live together or Die Alone: Block cooperation to extend lifetime of resistive memories
abstract
Block-level cooperation is an endurance management technique that operates on top of error correction mechanisms to extend memory lifetimes. Once an error recovery scheme fails to recover from faults in a data block, the entire physical page associated with that block is disabled and becomes unavailable to the physical address space. To reduce the page waste caused by early block failures, other blocks can be used to support the failed block, working cooperatively to keep it alive and extend the faulty page's lifetime. We combine the proposed technique with existing error recovery schemes, such as Error Correction Pointers (ECP) and Aegis, to increase memory lifetimes. Block cooperation is realized through metadata sharing in ECP, where one data block shares its unused metadata with another data block. When combined with Aegis, block cooperation is realized through reorganizing data layout, where blocks possessing few faults come to the aid of failed blocks, bringing them back from the dead. Employing block cooperation at a single level (or multiple levels) on top of ECP and Aegis, we can increase memory lifetimes by 28% (37%), and 8% (14%) on average, respectively.
Mohammad Khavari Tavana, Amir Kavyan Ziabari, David R. Kaeli
DATE2
2016 A comprehensive performance analysis of HSA and OpenCL 2.0
abstract
Heterogeneous systems, that marry CPUs and GPUs together in a range of configurations, are quickly becoming the design paradigm for today's platforms because of their impressive parallel processing capabilities. However, in many existing heterogeneous systems, the GPU is only treated as an accelerator by the CPU, working as a slave to the CPU master. But recently we are starting to see the introduction of a new class of devices and changes to the system runtime model, which enable accelerators to be treated as first-class computing devices. To support programmability and efficiency of heterogeneous programming, the HSA foundation introduced the Heterogeneous System Architecture (HSA), which defines a platform and runtime architecture that provides rich support for OpenCL 2.0 features including shared virtual memory, dynamic parallelism, and improved atomic operations. In this paper, we provide the first comprehensive study of OpenCL 2.0 and HSA 1.0 execution, considering OpenCL 1.2 as the baseline. For workloads, we develop a suite of OpenCL micro-benchmarks designed to highlight the features of these emerging standards and also utilize real-world applications to better understand their impact at an application level. To fully exercise the new features provided by the HSA model, we experiment with a producer-consumer algorithm and persistent kernels. We find that by using HSA signals, we can remove 92% of the overhead due to synchronous kernel launches. In our real-world applications, the OpenCL 2.0 runtime achieves up to a 1.2X speedup, while the HSA 1.0 runtime achieves a 2.7X speedup over OpenCL 1.2.
Saoni Mukherjee, Yifan Sun 0002, Paul Blinzer, Amir Kavyan Ziabari, David R. Kaeli
ISPASS4
2016 UMH: A Hardware-Based Unified Memory Hierarchy for Systems with Multiple Discrete GPUs
abstract
In this article, we describe how to ease memory management between a Central Processing Unit (CPU) and one or multiple discrete Graphic Processing Units (GPUs) by architecting a novel hardware-based Unified Memory Hierarchy (UMH). Adopting UMH, a GPU accesses the CPU memory only if it does not find its required data in the directories associated with its high-bandwidth memory, or the NMOESI coherency protocol limits the access to that data. Using UMH with NMOESI improves performance of a CPU-multiGPU system by at least 1.92 × in comparison to alternative software-based approaches. It also allows the CPU to access GPUs modified data by at least 13 × faster.
Amir Kavyan Ziabari, Yifan Sun 0002, Yenai Ma, Dana Schaa, José L. Abellán, Rafael Ubal, John Kim 0001, Ajay Joshi, David R. Kaeli
ACM Trans. Archit. Code Optim.1
2015 Leveraging Silicon-Photonic NoC for Designing Scalable GPUs
abstract
Silicon-photonic link technology promises to satisfy the growing need for high bandwidth, low-latency and energy-efficient network-on-chip (NoC) architectures. While silicon-photonic NoC designs have been extensively studied for future many-core systems, their use in massively-threaded GPUs has received little attention to date. In this paper, we first analyze an electrical NoC which connects different cache levels (L1 to L2) in a contemporary GPU memory hierarchy. Evaluating workloads from the AMD SDK run on the Multi2sim GPU simulator finds that, apart from limits in memory bandwidth, an electrical NoC can significantly hamper performance and impede scalability, especially as the number of compute units grows in future GPU systems.
Amir Kavyan Ziabari, José L. Abellán, Rafael Ubal, Chao Chen 0003, Ajay Joshi, David R. Kaeli
ICS1
2015 Asymmetric NoC Architectures for GPU Systems
abstract
While both Chip MultiProcessors (CMPs) and Graphics Processing Units (GPUs) are many-core systems, they exhibit different memory access patterns. CMPs execute threads in parallel, where threads communicate and synchronize through the memory hierarchy (without any coalescing). GPUs on the other hand execute a large number of independent thread blocks and their accesses to memory are frequent and coalesced, resulting in a completely different access pattern.
Amir Kavyan Ziabari, José L. Abellán, Yenai Ma, Ajay Joshi, David R. Kaeli
NOCS1
2013 Quantifying the energy efficiency of FFT on heterogeneous platforms
abstract
Heterogeneous computing using Graphic Processing Units (GPUs) has become an attractive computing model given the available scale of data-parallel performance and programming standards such as OpenCL. However, given the energy issues present with GPUs, some devices can exhaust power budgets quickly. Better solutions are needed to effectively exploit the power efficiency available on heterogeneous systems. In this paper we evaluate the power-performance trade-offs of different heterogeneous signal processing applications. More specifically, we compare the performance of 7 different implementations of the Fast Fourier Transform algorithms. Our study covers discrete GPUs and shared memory GPUs (APUs) from AMD (Llano APUs and the Southern Islands GPU), Nvidia (Fermi) and Intel (Ivy Bridge). For this range of platforms, we characterize the different FFTs and identify the specific architectural features that most impact power consumption. Using the 7 FFT kernels, we obtain a 48% reduction in power consumption and up to a 58% improvement in performance across these different FFT implementations. These differences are also found to be target architecture dependent. The results of this study will help the signal processing community identify which class of FFTs are most appropriate for a given platform. More important, we have demonstrated that different algorithms implementing the same fundamental function (FFT) can perform vastly different based on the target hardware and associated programming optimizations.
Yash Ukidave, Amir Kavyan Ziabari, Perhaad Mistry, Gunar Schirner, David R. Kaeli
ISPASS2