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.

Jonathan Beaumont

dblp:172/4651 · also Jonathan R. Beaumont · DBLP profile ↗
← Back
11ranked-venue papers
4as first author
2since 2021 · last 2024
—ORCID · conflict

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

Systems, architecture and hardware · 8 · 2 first-authorSoftware engineering, systems software and programming languages · 1 · 1 first-authorHuman-computer interaction and ubiquitous computing · 1 · 1 first-author · 1 since 2021Theory of computation · 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
4 papers
Integrated circuit design · 24% GPUs and heterogeneous computing · 18% Memory systems · 16%
Theoretical computer science
1 paper
Algorithms and data structures · 100%

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

TopicWeightPapersLastEvidence papers
Integrated circuit design
asynchronous circuit design
0.312018
High-Level Asynchronous Concepts at the Interface Between Analog and Digital Worlds · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2018
Reconfigurable computing and FPGAs
reconfigurable architecture
0.312018
OuterSPACE: An Outer Product Based Sparse Matrix Multiplication Accelerator · HPCA 2018
Integrated circuit design › asynchronous circuit design
signal transition graph
0.312018
High-Level Asynchronous Concepts at the Interface Between Analog and Digital Worlds · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2018
Hardware accelerators and domain-specific architectures
sparse matrix multiplication accelerator
0.312018
OuterSPACE: An Outer Product Based Sparse Matrix Multiplication Accelerator · HPCA 2018
GPUs and heterogeneous computing
GPU architecture
0.312017
Regless: just-in-time operand staging for GPUs · MICRO 2017
Processor architecture and microarchitecture
register file
0.312017
Regless: just-in-time operand staging for GPUs · MICRO 2017
GPUs and heterogeneous computing › GPU memory
GPU memory hierarchy
0.212015
WarpPool: sharing requests with inter-warp coalescing for throughput processors · MICRO 2015
Memory systems › memory hierarchy › cache hierarchy
l1 cache
0.212015
WarpPool: sharing requests with inter-warp coalescing for throughput processors · MICRO 2015
Memory systems › DRAM › DRAM architecture
high bandwidth memory
0.112018
OuterSPACE: An Outer Product Based Sparse Matrix Multiplication Accelerator · HPCA 2018
Algorithms and data structures › numerical linear algebra
sparse linear algebra
0.112018
OuterSPACE: An Outer Product Based Sparse Matrix Multiplication Accelerator · HPCA 2018
Energy-efficient computing › energy-efficient architecture
GPU energy efficiency
0.112017
Regless: just-in-time operand staging for GPUs · MICRO 2017
Energy-efficient computing
power management
0.112017
Regless: just-in-time operand staging for GPUs · MICRO 2017
Memory systems
cache
0.112015
WarpPool: sharing requests with inter-warp coalescing for throughput processors · MICRO 2015
Memory systems › cache › cache performance
cache thrashing
0.112015
WarpPool: sharing requests with inter-warp coalescing for throughput processors · MICRO 2015

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

simulation · 0.7outer product matrix multiplication · 0.7workcraft · 0.3behavioral concepts · 0.3STG translation · 0.3
YearPublicationVenuePosition
2024 Scalable Autograding for Quantum Programming Assignments
abstract
Quantum computing has gained significant prominence within computer science curricula. Unfortunately, the conventional mechanism for grading programming assignments (running students' code on multiple test cases and verifying the output) is impractical for quantum computing. Scalable quantum computers are unlikely to be available for at least the next several years, and all known methods of simulating their behavior require exponential time.
Jonathan Beaumont, Kathryn Wakevainen
ITiCSE (1)1
2021 General hardware multicasting for fine-grained message-passing architectures
abstract
Manycore architectures are increasingly favouring message-passing or partitioned global address spaces (PGAS) over cache coherency for reasons of power efficiency and scalability. However, in the absence of cache coherency, there can be a lack of hardware support for one-to-many communication patterns, which are prevalent in some application domains. To address this, we present new hardware primitives for multicast communication in rack-scale manycore systems. These primitives guarantee delivery to both colocated and distributed destinations, and can capture large unstructured communication patterns precisely. As a result, reliable multicast transfers among any number of software tasks, connected in any topology, can be fully offloaded to hardware. We implement the new primitives in a research platform consisting of 50K RISC-V threads distributed over 48 FPGAs, and demonstrate significant performance benefits on a range of applications expressed using a high-level vertex-centric programming model.
Matthew Naylor 0002, Simon W. Moore, David B. Thomas, Jonathan Beaumont, Shane T. Fleming, Mark Vousden, A. Theodore Markettos, Thomas Bytheway, Andrew D. Brown
PDP4
2020 Transmuter: Bridging the Efficiency Gap using Memory and Dataflow Reconfiguration
abstract
With the end of Dennard scaling and Moore's law, it is becoming increasingly difficult to build hardware for emerging applications that meet power and performance targets, while remaining flexible and programmable for end users. This is particularly true for domains that have frequently changing algorithms and applications involving mixed sparse/dense data structures, such as those in machine learning and graph analytics. To overcome this, we present a flexible accelerator called Transmuter, in a novel effort to bridge the gap between General-Purpose Processors (GPPs) and Application-Specific Integrated Circuits (ASICs). Transmuter adapts to changing kernel characteristics, such as data reuse and control divergence, through the ability to reconfigure the on-chip memory type, resource sharing and dataflow at run-time within a short latency. This is facilitated by a fabric of light-weight cores connected to a network of reconfigurable caches and crossbars. Transmuter addresses a rapidly growing set of algorithms exhibiting dynamic data movement patterns, irregularity, and sparsity, while delivering GPU-like efficiencies for traditional dense applications. Finally, in order to support programmability and ease-of-adoption, we prototype a software stack composed of low-level runtime routines, and a high-level language library called TransPy, that cater to expert programmers and end-users, respectively.
Subhankar Pal, Siying Feng, Dong-Hyeon Park, Aporva Amarnath, Chi-Sheng Yang, Xin He 0011, Jonathan Beaumont, Kyle May, Yan Xiong 0002, Kuba Kaszyk, John Magnus Morton, Jiawen Sun, Michael F. P. O'Boyle, Murray Cole, Chaitali Chakrabarti, David T. Blaauw, Hun-Seok Kim, Trevor N. Mudge, Ronald G. Dreslinski
PACT8
2020 Termination detection for fine-grained message-passing architectures
abstract
Barrier primitives provided by standard parallel programming APIs are the primary means by which applications implement global synchronisation. Typically these primitives are fully-committed to synchronisation in the sense that, once a barrier is entered, synchronisation is the only way out. For message-passing applications, this raises the question of what happens when a message arrives at a thread that already resides in a barrier. Without a satisfactory answer, barriers do not interact with message-passing in any useful way.In this paper, we propose a new refutable barrier primitive that combines with message-passing to form a simple, expressive, efficient, well-defined API. It has a clear semantics based on termination detection, and supports the development of both globally-synchronous and asynchronous parallel applications.To evaluate the new primitive, we implement it in a prototype large-scale message-passing machine with 49,152 RISC-V threads distributed over 48 FPGAs. We show that hardware support for the primitive leads to a highly-efficient implementation, capable of synchronisation rates that are an order-of-magnitude higher than what is achievable in software. Using the primitive, we implement synchronous and asynchronous versions of a range of applications, observing that each version can have significant advantages over the other, depending on the application. Therefore, a barrier primitive supporting both styles can greatly assist the development of parallel programs.
Matthew Naylor 0002, Simon W. Moore, Andrey Mokhov, David B. Thomas, Jonathan Beaumont, Shane T. Fleming, A. Theodore Markettos, Thomas Bytheway, Andrew D. Brown
ASAP5
2019 Fine-Grained Management of Thread Blocks for Irregular Applications
abstract
Co-locating threads with complementary resource usage is a key strategy for improving throughput in parallel machines such as GPUs. However, the proliferation of irregular algorithms which change execution behavior dynamically makes optimal thread placement impossible when done statically or by profiling kernels as a whole. In this work, we characterize the performance loss associated with current thread block scheduling policies in GPU architectures. We then demonstrate that an extension of these strategies incorporating dynamic performance metrics such as memory and functional unit utilization at the thread block level as well as preemptive thread block swapping can improve throughput. We show that performance on irregular algorithms can be improved by an average increase of 17.1% over static profiling methods and 12.9% over dynamic strategies with no changes to legacy software and minimal hardware extensions which increase SRAM storage area by less than 0.5%.
Jonathan Beaumont, Trevor N. Mudge
ICCD1
2018 OuterSPACE: An Outer Product Based Sparse Matrix Multiplication Accelerator
abstract
Sparse matrices are widely used in graph and data analytics, machine learning, engineering and scientific applications. This paper describes and analyzes OuterSPACE, an accelerator targeted at applications that involve large sparse matrices. OuterSPACE is a highly-scalable, energy-efficient, reconfigurable design, consisting of massively parallel Single Program, Multiple Data (SPMD)-style processing units, distributed memories, high-speed crossbars and High Bandwidth Memory (HBM). We identify redundant memory accesses to non-zeros as a key bottleneck in traditional sparse matrix-matrix multiplication algorithms. To ameliorate this, we implement an outer product based matrix multiplication technique that eliminates redundant accesses by decoupling multiplication from accumulation. We demonstrate that traditional architectures, due to limitations in their memory hierarchies and ability to harness parallelism in the algorithm, are unable to take advantage of this reduction without incurring significant overheads. OuterSPACE is designed to specifically overcome these challenges. We simulate the key components of our architecture using gem5 on a diverse set of matrices from the University of Florida's SuiteSparse collection and the Stanford Network Analysis Project and show a mean speedup of 7.9× over Intel Math Kernel Library on a Xeon CPU, 13.0× against cuSPARSE and 14.0× against CUSP when run on an NVIDIA K40 GPU, while achieving an average throughput of 2.9 GFLOPS within a 24 W power budget in an area of 87 mm2.
Subhankar Pal, Jonathan Beaumont, Dong-Hyeon Park, Aporva Amarnath, Siying Feng, Chaitali Chakrabarti, Hun-Seok Kim, David T. Blaauw, Trevor N. Mudge, Ronald G. Dreslinski
HPCA2
2018 High-Level Asynchronous Concepts at the Interface Between Analog and Digital Worlds
abstract
Asynchronous circuits are becoming increasingly important in system design for Internet of Things, where they orchestrate the interface between big synchronous computation components and the analog environment, which is inherently asynchronous and has high uncertainty with respect to power supply, temperature, and long-term aging effects. However, wide adoption of asynchronous circuits by industrial users is hindered by a steep learning curve for asynchronous control models, such as signal transition graphs (STGs), that are developed by the academic community for specification, verification, and synthesis of asynchronous circuits. In this paper, we introduce a novel high-level description language for asynchronous circuits, which is based on behavioral concepts-high-level descriptions of asynchronous circuit requirements, that can be shared, reused, and extended by users, and can be automatically translated to STGs for further processing by conventional asynchronous and synchronous electronic design automation tools, such as Petrify and Mpsat. Our aim is to simplify the process of capturing system requirements in the form of a formal specification, and to promote behavioral concepts as a means for design reuse. The proposed design flow is fully automated in open-source toolsuite Workcraft, and is applied to the development of an asynchronous power regulator.
Jonathan Beaumont, Andrey Mokhov, Danil Sokolov, Alexandre Yakovlev
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.1
2017 Accelerating Smith-Waterman Alignment Workload with Scalable Vector Computing
abstract
Recent breakthroughs in DNA sequencing opened up new avenues for bioinformatics, and we have seen increasing demand to make such advanced biomedical technologies cheaper and more accessible. Sequence alignment, the process of matching two gene fragments, is a major bottleneck in Whole Genome Sequencing (WGS). We explored the potential of accelerating Smith-Waterman sequence alignment algorithm through ARM's scalable vector extension (SVE) as an alternative to scalar and traditional SIMD implementations using three vectorization paradigms: batching, slicing, and Wavefront. Our SVE implementation is able to achieve over 18x speedup over a NEON implementation and up to 54x speedup over a scalar CPU implementation for long queries, with minimal memory bandwidth overhead that scales efficiently with sequence length.
Dong-Hyeon Park, Jonathan Beaumont, Trevor N. Mudge
CLUSTER2
2017 Regless: just-in-time operand staging for GPUs
abstract
The register file is one of the largest and most power-hungry structures in a Graphics Processing Unit (GPU), because massive multithreading requires all the register state for every active thread to be available. Previous approaches to making register accesses more efficient have optimized how registers are stored, but they must keep all values for active threads in a large, high-bandwidth structure. If operand storage is to be reduced further, there will not be enough capacity for every live value to be stored at the same time. Our insight is that computation graphs can be sliced into regions and operand storage can be allocated to these regions as they are encountered at run time, allowing a small operand staging unit to replace the register file. Most operand values have a short lifetime that is contained in one region, so their value does not need to persist in the staging unit past the end of that region. The small number of longer-lived operands can be stored in lower-bandwidth global memory, but the hardware must anticipate their use to fetch them early enough to avoid stalls. In RegLess, hardware uses compiler annotations to anticipate warps' operand usage at run time, allowing the register file to be replaced with an operand staging unit 25% of the size, saving 75% of register file energy and 11% of total GPU energy with no average performance loss.
John Kloosterman, Jonathan Beaumont, Davoud Anoushe Jamshidi, Jonathan Bailey, Trevor N. Mudge, Scott A. Mahlke
MICRO2
2015 Compositional design of asynchronous circuits from behavioural concepts
abstract
Asynchronous circuits can be useful in many applications, however, they are yet to be widely used in industry. The main reason for this is a steep learning curve for concurrency models, such Signal Transition Graphs, that are developed by the academic community for specification and synthesis of asynchronous circuits. In this paper we introduce a compositional design flow for asynchronous circuits using concepts - a set of formalised descriptions for system requirements. Our aim is to simplify the process of capturing system requirements in the form of a formal specification, and promote the concepts as a means for design reuse. The proposed design flow is applied to the development of an asynchronous buck converter.
Jonathan Beaumont, Andrey Mokhov, Danil Sokolov, Alexandre Yakovlev
MEMOCODE1
2015 WarpPool: sharing requests with inter-warp coalescing for throughput processors
abstract
Although graphics processing units (GPUs) are capable of high compute throughput, their memory systems need to supply the arithmetic pipelines with data at a sufficient rate to avoid stalls. For benchmarks that have divergent access patterns or cause the L1 cache to run out of resources, the link between the GPU's load/store unit and the L1 cache becomes a bottleneck in the memory system, leading to low utilization of compute resources. While current GPU memory systems are able to coalesce requests between threads in the same warp, we identify a form of spatial locality between threads in multiple warps. We use this locality, which is overlooked in current systems, to merge requests being sent to the L1 cache. This relieves the bottleneck between the load/store unit and the cache, and provides an opportunity to prioritize requests to minimize cache thrashing. Our implementation, WarpPool, yields a 38% speedup on memory throughput-limited kernels by increasing the throughput to the L1 by 8% and the reducing the number of L1 misses by 23%. We also demonstrate that WarpPool can improve GPU programmability by achieving high performance without the need to optimize workloads' memory access patterns. A Verilog implementation including place-and route shows WarpPool requires 1.0% added GPU area and 0.8% added power.
John Kloosterman, Jonathan Beaumont, Mick Wollman, Ankit Sethia, Ronald G. Dreslinski, Trevor N. Mudge, Scott A. Mahlke
MICRO2