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

Mike Mantor

dblp:17/3731 · also Michael Mantor · DBLP profile ↗
← Back
14ranked-venue papers
2as first author
1since 2021 · last 2024
—ORCID · none

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

Systems, architecture and hardware · 14 · 2 first-author · 1 since 2021Software engineering, systems software and programming languages · 1 · 1 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
6 papers
GPUs and heterogeneous computing · 43% Memory systems · 14% Integrated circuit design · 12%
Software engineering, system software, and programming languages
2 papers
Compilers and program optimization · 100%

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

TopicWeightPapersLastEvidence papers
GPUs and heterogeneous computing › heterogeneous architecture
accelerated processing unit
0.812024
Realizing the AMD Exascale Heterogeneous Processor Vision : Industry Product · ISCA 2024
High-performance computing › supercomputing
exascale computing
0.812024
Realizing the AMD Exascale Heterogeneous Processor Vision : Industry Product · ISCA 2024
Integrated circuit design
heterogeneous integration
0.812024
Realizing the AMD Exascale Heterogeneous Processor Vision : Industry Product · ISCA 2024
Memory systems › memory bandwidth management
bandwidth partitioning
0.412019
Coordinated CTA Combination and Bandwidth Partitioning for GPU Concurrent Kernel Execution · ACM Trans. Archit. Code Optim. 2019
GPUs and heterogeneous computing › GPU scheduling
concurrent kernel execution
0.412019
Coordinated CTA Combination and Bandwidth Partitioning for GPU Concurrent Kernel Execution · ACM Trans. Archit. Code Optim. 2019
GPUs and heterogeneous computing
GPU resource management
0.412019
Coordinated CTA Combination and Bandwidth Partitioning for GPU Concurrent Kernel Execution · ACM Trans. Archit. Code Optim. 2019
Processor architecture and microarchitecture › multithreading
context switching
0.312018
GPU Performance vs. Thread-Level Parallelism: Scalability Analysis and a Novel Way to Improve TLP · ACM Trans. Archit. Code Optim. 2018
GPUs and heterogeneous computing › GPU computing
GPU performance
0.312018
GPU Performance vs. Thread-Level Parallelism: Scalability Analysis and a Novel Way to Improve TLP · ACM Trans. Archit. Code Optim. 2018
GPUs and heterogeneous computing › multi-GPU computing
GPU scaling
0.312018
GPU Performance vs. Thread-Level Parallelism: Scalability Analysis and a Novel Way to Improve TLP · ACM Trans. Archit. Code Optim. 2018
Parallel and multicore computing
thread-level parallelism
0.312018
GPU Performance vs. Thread-Level Parallelism: Scalability Analysis and a Novel Way to Improve TLP · ACM Trans. Archit. Code Optim. 2018
Memory systems › cache management › cache insertion policy
cache bypassing
0.212016
A model-driven approach to warp/thread-block level GPU cache bypassing · DAC 2016
Performance modeling and evaluation › cache performance modeling
cache contention modeling
0.212016
A model-driven approach to warp/thread-block level GPU cache bypassing · DAC 2016
GPUs and heterogeneous computing › GPU memory
GPU memory hierarchy
0.212016
A model-driven approach to warp/thread-block level GPU cache bypassing · DAC 2016
Memory systems
cache
0.222018
CPU-assisted GPGPU on fused CPU-GPU architectures · HPCA 2012
GPU Performance vs. Thread-Level Parallelism: Scalability Analysis and a Novel Way to Improve TLP · ACM Trans. Archit. Code Optim. 2018
Hardware accelerators and domain-specific architectures
machine learning accelerator
0.212024
Realizing the AMD Exascale Heterogeneous Processor Vision : Industry Product · ISCA 2024
Compilers and program optimization › accelerator compilation
GPU compiler
0.112012
A unified optimizing compiler framework for different GPGPU architectures · ACM Trans. Archit. Code Optim. 2012
Compilers and program optimization › memory optimization
memory hierarchy optimization
0.112012
A unified optimizing compiler framework for different GPGPU architectures · ACM Trans. Archit. Code Optim. 2012
GPUs and heterogeneous computing › CPU-GPU heterogeneous computing
fused CPU-GPU architecture
0.112012
CPU-assisted GPGPU on fused CPU-GPU architectures · HPCA 2012
GPUs and heterogeneous computing
GPU programming
0.112012
A unified optimizing compiler framework for different GPGPU architectures · ACM Trans. Archit. Code Optim. 2012
Compilers and program optimization › compiler construction
compiler algorithms
0.012012
CPU-assisted GPGPU on fused CPU-GPU architectures · HPCA 2012

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

chiplet integration · 0.8advanced packaging · 0.8dominant resource fairness · 0.4CTA combination · 0.4throughput utilization analysis · 0.3fast context switching · 0.3pre-execution · 0.3l2 prefetcher · 0.3instruction-level parallelism · 0.3performance modeling · 0.2kernel generation · 0.1architecture-specific optimization · 0.1
YearPublicationVenuePosition
2024 Realizing the AMD Exascale Heterogeneous Processor Vision : Industry Product
abstract
AMD had previously detailed its exascale research journey from initial targets and requirements to the development and evolution of its vision of a high-performance computing (HPC) accelerated processing unit (APU), dubbed the Exascale Heterogeneous Processor or EHP. At the conclusion of that work, the learnings were integrated into the design of the node architecture that went into the Frontier supercomputer, the world’s first exascale machine. However, while the Frontier node architecture embodied many of the attributes of the EHP concept, advanced heterogeneous integration capabilities at the time were not yet sufficiently mature to realize our vision of a fully-integrated APU for HPC and AI. In this paper, we finish the EHP’s story by digging deeper into why an APU was not the right solution at the time of our first exascale architecture, what the shortcomings were of previous EHP concepts, and how AMD further evolved the concept into the AMD Instinct™ MI300A APU. MI300A is the culmination of years of AMD developments in advanced packaging technologies, its APU hardware and software, and the next step in our highly effective chiplet strategy to not only deliver a groundbreaking design for exascale computing, but to also meet the demands of new large-language model and generative AI applications.
Alan Smith 0003, Gabriel H. Loh, Michael J. Schulte, Mike Ignatowski, Samuel Naffziger, Mike Mantor, Nathan Kalyanasundharam, Vamsi Alla, Nicholas Malaya, Joseph L. Greathouse, Eric Chapman, Raja Swaminathan
ISCA6
2019 7NM "NAVI" GPU - A GPU Built for Performance and Efficiency
abstract
This article consists only of a collection of slides from the author's conference presentation.
Mike Mantor
Hot Chips Symposium1
2019 Coordinated CTA Combination and Bandwidth Partitioning for GPU Concurrent Kernel Execution
abstract
Contemporary GPUs support multiple kernels to run concurrently on the same streaming multiprocessors (SMs). Recent studies have demonstrated that such concurrent kernel execution (CKE) improves both resource utilization and computational throughput. Most of the prior works focus on partitioning the GPU resources at the cooperative thread array (CTA) level or the warp scheduler level to improve CKE. However, significant performance slowdown and unfairness are observed when latency-sensitive kernels co-run with bandwidth-intensive ones. The reason is that bandwidth over-subscription from bandwidth-intensive kernels leads to much aggravated memory access latency, which is highly detrimental to latency-sensitive kernels. Even among bandwidth-intensive kernels, more intensive kernels may unfairly consume much higher bandwidth than less-intensive ones. In this article, we first make a case that such problems cannot be sufficiently solved by managing CTA combinations alone and reveal the fundamental reasons. Then, we propose a coordinated approach for CTA combination and bandwidth partitioning. Our approach dynamically detects co-running kernels as latency sensitive or bandwidth intensive. As both the DRAM bandwidth and L2-to-L1 Network-on-Chip (NoC) bandwidth can be the critical resource, our approach partitions both bandwidth resources coordinately along with selecting proper CTA combinations. The key objective is to allocate more CTA resources for latency-sensitive kernels and more NoC/DRAM bandwidth resources to NoC-/DRAM-intensive kernels. We achieve it using a variation of dominant resource fairness (DRF). Compared with two state-of-the-art CKE optimization schemes, SMK [52] and WS [55], our approach improves the average harmonic speedup by 78% and 39%, respectively. Even compared to the best possible CTA combinations, which are obtained from an exhaustive search among all possible CTA combinations, our approach improves the harmonic speedup by up to 51% and 11% on average.
Hongwen Dai, Mike Mantor, Huiyang Zhou
ACM Trans. Archit. Code Optim.3
2018 GPU Performance vs. Thread-Level Parallelism: Scalability Analysis and a Novel Way to Improve TLP
abstract
Graphics Processing Units (GPUs) leverage massive thread-level parallelism (TLP) to achieve high computation throughput and hide long memory latency. However, recent studies have shown that the GPU performance does not scale with the GPU occupancy or the degrees of TLP that a GPU supports, especially for memory-intensive workloads. The current understanding points to L1 D-cache contention or off-chip memory bandwidth. In this article, we perform a novel scalability analysis from the perspective of throughput utilization of various GPU components, including off-chip DRAM, multiple levels of caches, and the interconnect between L1 D-caches and L2 partitions. We show that the interconnect bandwidth is a critical bound for GPU performance scalability. For the applications that do not have saturated throughput utilization on a particular resource, their performance scales well with increased TLP. To improve TLP for such applications efficiently, we propose a fast context switching approach. When a warp/thread block (TB) is stalled by a long latency operation, the context of the warp/TB is spilled to spare on-chip resource so that a new warp/TB can be launched. The switched-out warp/TB is switched back when another warp/TB is completed or switched out. With this fine-grain fast context switching, higher TLP can be supported without increasing the sizes of critical resources like the register file. Our experiment shows that the performance can be improved by up to 47% and a geometric mean of 22% for a set of applications with unsaturated throughput utilization. Compared to the state-of-the-art TLP improvement scheme, our proposed scheme achieves 12% higher performance on average and 16% for unsaturated benchmarks.
Mike Mantor, Huiyang Zhou
ACM Trans. Archit. Code Optim.2
2016 A model-driven approach to warp/thread-block level GPU cache bypassing
abstract
The high amount of memory requests from massive threads may easily cause cache contention and cache-miss-related resource congestion on GPUs. This paper proposes a simple yet effective performance model to estimate the impact of cache contention and resource congestion as a function of the number of warps/thread blocks (TBs) to bypass the cache. Then we design a hardware-based dynamic warp/thread-block level GPU cache bypassing scheme, which achieves 1.68x speedup on average on a set of memory-intensive benchmarks over the baseline. Compared to prior works, our scheme achieves 21.6% performance improvement over SWL-best [29] and 11.9% over CBWT-best [4] on average.
Hongwen Dai, Chao Li 0004, Huiyang Zhou, Saurabh Gupta 0002, Christos Kartsaklis, Mike Mantor
DAC6
2015 Revisiting ILP Designs for Throughput-Oriented GPGPU Architecture
abstract
Many-core architectures such as graphics processing units (GPUs) rely on thread-level parallelism (TLP)to overcome pipeline hazards. Consequently, each core in a many-core processor employs a relatively simple in-order pipeline with limited capability to exploit instruction-level parallelism (ILP). In this paper, we study the ILP impact on the throughput-oriented many-core architecture, including data bypassing, score boarding and branch prediction. We show that these ILP techniques significantly reduce the performance dependency on TLP. This is especially useful for applications, whose resource usage limits the hardware to run a high number of threads concurrently. Furthermore, ILP techniques reduce the demand on on-chip resource to support high TLP. Given the workload-dependent impact from ILP, we propose heterogeneous GPGPU architecture, consisting of both the cores designed for high TLP and those customized with ILPtechniques. Our results show that our heterogeneous GPUarchitecture achieves high throughput as well as high energy and area-efficiency compared to homogenous designs.
Ping Xiang, Yi Yang 0018, Mike Mantor, Norman Rubin, Huiyang Zhou
CCGRID3
2014 A Case for a Flexible Scalar Unit in SIMT Architecture
abstract
The wide availability and the Single-Instruction Multiple-Thread (SIMT)-style programming model have made graphics processing units (GPUs) a promising choice for high performance computing. However, because of the SIMT style processing, an instruction will be executed in every thread even if the operands are identical for all the threads. To overcome this inefficiency, the AMD's latest Graphics Core Next (GCN) architecture integrates a scalar unit into a SIMT unit. In GCN, both the SIMT unit and the scalar unit share a single SIMT style instruction stream. Depending on its type, an instruction is issued to either a scalar or a SIMT unit. In this paper, we propose to extend the scalar unit so that it can either share the instruction stream with the SIMT unit or execute a separate instruction stream. The program to be executed by the scalar unit is referred to as a scalar program and its purpose is to assist SIMT-unit execution. The scalar programs are either generated from SIMT programs automatically by the compiler or manually developed by expert developers. We make a case for our proposed flexible scalar unit through three collaborative execution paradigms: data prefetching, control divergence elimination, and scalar-workload extraction. Our experimental results show that significant performance gains can be achieved using our proposed approaches compared to the state-of-art SIMT style processing.
Yi Yang 0018, Ping Xiang, Mike Mantor, Norman Rubin, Lisa R. Hsu, Qunfeng Dong, Huiyang Zhou
IPDPS3
2013 Exploiting uniform vector instructions for GPGPU performance, energy efficiency, and opportunistic reliability enhancement
abstract
State-of-art graphics processing units (GPUs) employ the single-instruction multiple-data (SIMD) style execution to achieve both high computational throughput and energy efficiency. As previous works have shown, there exists significant computational redundancy in SIMD execution, where different execution lanes operate on the same operand values. Such value locality is referred to as uniform vectors. In this paper, we first show that besides redundancy within a uniform vector, different vectors can also have the identical values. Then, we propose detailed architecture designs to exploit both types of redundancy. For redundancy within a uniform vector, we propose to either extend the vector register file with token bits or add a separate small scalar register file to eliminate redundant computations as well as redundant data storage. For redundancy across different uniform vectors, we adopt instruction reuse, proposed originally for CPU architectures, to detect and eliminate redundancy. The elimination of redundant computations and data storage leads to both significant energy savings and performance improvement. Furthermore, we propose to leverage such redundancy to protect arithmetic-logic units (ALUs) and register files against hardware errors. Our detailed evaluation shows that our proposed design has low hardware overhead and achieves performance gains, up to 23.9% and 12.0% on average, along with energy savings, up to 24.8% and 12.6% on average, as well as a 21.1% and 14.1% protection coverage for ALUs and register files, respectively.
Ping Xiang, Yi Yang 0018, Mike Mantor, Norman Rubin, Lisa R. Hsu, Huiyang Zhou
ICS3
2012 Many-thread aware instruction-level parallelism: architecting shader cores for GPU computing
abstract
No abstract available.
Ping Xiang, Yi Yang 0018, Mike Mantor, Norman Rubin, Huiyang Zhou
PACT3
2012 Shared memory multiplexing: a novel way to improve GPGPU throughput
abstract
On-chip shared memory (a.k.a. local data share) is a critical resource to many GPGPU applications. In current GPUs, the shared memory is allocated when a thread block (also called a workgroup) is dispatched to a streaming multiprocessor (SM) and is released when the thread block is completed. As a result, the limited capacity of shared memory becomes a bottleneck for a GPU to host a high number of thread blocks, limiting the otherwise available thread-level parallelism (TLP). In this paper, we propose software and/or hardware approaches to multiplex the shared memory among multiple thread blocks.
Yi Yang 0018, Ping Xiang, Mike Mantor, Norman Rubin, Huiyang Zhou
PACT3
2012 AMD Radeon™ HD 7970 with graphics core next (GCN) architecture
Mike Mantor
Hot Chips Symposium1
2012 CPU-assisted GPGPU on fused CPU-GPU architectures
abstract
This paper presents a novel approach to utilize the CPU resource to facilitate the execution of GPGPU programs on fused CPU-GPU architectures. In our model of fused architectures, the GPU and the CPU are integrated on the same die and share the on-chip L3 cache and off-chip memory, similar to the latest Intel Sandy Bridge and AMD accelerated processing unit (APU) platforms. In our proposed CPU-assisted GPGPU, after the CPU launches a GPU program, it executes a pre-execution program, which is generated automatically from the GPU kernel using our proposed compiler algorithms and contains memory access instructions of the GPU kernel for multiple thread-blocks. The CPU pre-execution program runs ahead of GPU threads because (1) the CPU pre-execution thread only contains memory fetch instructions from GPU kernels and not floating-point computations, and (2) the CPU runs at higher frequencies and exploits higher degrees of instruction-level parallelism than GPU scalar cores. We also leverage the prefetcher at the L2-cache on the CPU side to increase the memory traffic from CPU. As a result, the memory accesses of GPU threads hit in the L3 cache and their latency can be drastically reduced. Since our pre-execution is directly controlled by user-level applications, it enjoys both high accuracy and flexibility. Our experiments on a set of benchmarks show that our proposed pre-execution improves the performance by up to 113% and 21.4% on average.
Yi Yang 0018, Ping Xiang, Mike Mantor, Huiyang Zhou
HPCA3
2012 Fixing Performance Bugs: An Empirical Study of Open-Source GPGPU Programs
abstract
Given the extraordinary computational power of modern graphics processing units (GPUs), general purpose computation on GPUs (GPGPU) has become an increasingly important platform for high performance computing. To better understand how well the GPU resource has been utilized by application developers and then to facilitate them to develop high performance GPGPU code, we conduct an empirical study on GPGPU programs from ten open-source projects. These projects span a wide range of disciplines and many are designed as high performance libraries. Among these projects, we found various performance 'bugs', i.e., code segments leading to inefficient use of GPU hardware. We characterize these performance bugs, and propose the bug fixes. Our experiments confirm both significant performance gains and energy savings from our fixes and reveal interesting insights on different GPUs.
Yi Yang 0018, Ping Xiang, Mike Mantor, Huiyang Zhou
ICPP3
2012 A unified optimizing compiler framework for different GPGPU architectures
abstract
This article presents a novel optimizing compiler for general purpose computation on graphics processing units (GPGPU). It addresses two major challenges of developing high performance GPGPU programs: effective utilization of GPU memory hierarchy and judicious management of parallelism. The input to our compiler is a naïve GPU kernel function, which is functionally correct but without any consideration for performance optimization. The compiler generates two kernels, one optimized for global memories and the other for texture memories. The proposed compilation process is effective for both AMD/ATI and NVIDIA GPUs. The experiments show that our optimized code achieves very high performance, either superior or very close to highly fine-tuned libraries.
Yi Yang 0018, Ping Xiang, Jingfei Kong, Mike Mantor, Huiyang Zhou
ACM Trans. Archit. Code Optim.4