Demo Data from VLDB 2026 / reviewers in the wild / expert
Michael Adler
dblp:21/2181
· DBLP profile ↗
18ranked-venue papers
1as first author
0since 2021 · last 2017
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 17 · 1 first-authorSoftware engineering, systems software and programming languages · 2
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
10 papers |
Reconfigurable computing and FPGAs · 46% Hardware accelerators and domain-specific architectures · 11% Electronic design automation · 11% | |
| Software engineering, system software, and programming languages
3 papers |
Compilers and program optimization · 94% Operating systems · 6% |
Topics — the 19 heaviest of 24, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Reconfigurable computing and FPGAs
FPGA memory architecture |
0.5 | 2 | 2017 | Automatic Construction of Program-Optimized FPGA Memory Networks · FPGA 2017 LMC: Automatic Resource-Aware Program-Optimized Memory Partitioning · FPGA 2016 |
Hardware accelerators and domain-specific architectures
spatial architecture |
0.4 | 2 | 2015 | Efficient Control and Communication Paradigms for Coarse-Grained Spatial Architectures · ACM Trans. Comput. Syst. 2015 Triggered instructions: a control paradigm for spatially-programmed architectures · ISCA 2013 |
Compilers and program optimization
memory optimization |
0.3 | 1 | 2017 | Automatic Construction of Program-Optimized FPGA Memory Networks · FPGA 2017 |
Compilers and program optimization › compiler optimization
memory partitioning |
0.2 | 1 | 2016 | LMC: Automatic Resource-Aware Program-Optimized Memory Partitioning · FPGA 2016 |
Reconfigurable computing and FPGAs
coarse-grained reconfigurable architecture |
0.2 | 1 | 2015 | Efficient Control and Communication Paradigms for Coarse-Grained Spatial Architectures · ACM Trans. Comput. Syst. 2015 |
Reconfigurable computing and FPGAs › FPGA partitioning
multi-FPGA partitioning |
0.1 | 1 | 2012 | Leveraging latency-insensitivity to ease multiple FPGA design · FPGA 2012 |
Memory systems
cache management |
0.1 | 1 | 2011 | Leap scratchpads: automatic memory and cache management for reconfigurable logic · FPGA 2011 |
Reconfigurable computing and FPGAs
FPGA-accelerated simulation |
0.1 | 1 | 2011 | HAsim: FPGA-based high-detail multicore simulation using time-division multiplexing · HPCA 2011 |
Performance modeling and evaluation › simulation › processor simulation
multicore simulation |
0.1 | 1 | 2011 | HAsim: FPGA-based high-detail multicore simulation using time-division multiplexing · HPCA 2011 |
Electronic design automation
hardware description language |
0.1 | 1 | 2009 | Soft connections: addressing the hardware-design modularity problem · DAC 2009 |
Electronic design automation › system-level design
module interface |
0.1 | 1 | 2009 | Soft connections: addressing the hardware-design modularity problem · DAC 2009 |
Electronic design automation
high-level synthesis |
0.1 | 1 | 2017 | Automatic Construction of Program-Optimized FPGA Memory Networks · FPGA 2017 |
Performance modeling and evaluation
simulation |
0.1 | 1 | 2008 | A-Ports: an efficient abstraction for cycle-accurate performance models on FPGAs · FPGA 2008 |
Memory systems
cache design |
0.1 | 1 | 2016 | LMC: Automatic Resource-Aware Program-Optimized Memory Partitioning · FPGA 2016 |
Reconfigurable computing and FPGAs
FPGA design flow |
0.1 | 1 | 2015 | Growing a Healthy FPGA Ecosystem · FPGA 2015 |
Parallel and multicore computing
pipeline parallelism |
0.1 | 1 | 2015 | Efficient Control and Communication Paradigms for Coarse-Grained Spatial Architectures · ACM Trans. Comput. Syst. 2015 |
Reconfigurable computing and FPGAs › coarse-grained reconfigurable architecture
processing element array |
0.0 | 1 | 2013 | Triggered instructions: a control paradigm for spatially-programmed architectures · ISCA 2013 |
Operating systems › resource management › memory management
virtual memory |
0.0 | 1 | 2011 | Leap scratchpads: automatic memory and cache management for reconfigurable logic · FPGA 2011 |
Processor architecture and microarchitecture
multicore design |
0.0 | 1 | 2011 | HAsim: FPGA-based high-detail multicore simulation using time-division multiplexing · HPCA 2011 |
Methods — techniques the papers use, named apart from their topics
resource-aware compilation · 0.5virtual memory · 0.2scratchpad memory · 0.2latency-insensitive channels · 0.2latency-insensitive design · 0.1automatic partitioning · 0.1time-division multiplexing · 0.1compilation-time connection resolution · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2017 | Automatic Construction of Program-Optimized FPGA Memory Networks
Hsin-Jung Yang, Kermin Fleming, Felix Winterstein, Annie I. Chen, Michael Adler, Joel S. Emer |
FPGA | 5 |
| 2017 | (FPL 2015) Scavenger: Automating the Construction of Application-Optimized Memory HierarchiesabstractHigh-level abstractions separate algorithm design from platform implementation, allowing programmers to focus on algorithms while building complex systems. This separation also provides system programmers and compilers an opportunity to optimize platform services on an application-by-application basis. In field-programmable gate arrays (FPGAs), platform-level malleability extends to the memory system: Unlike general-purpose processors, in which memory hardware is fixed at design time, the capacity, associativity, and topology of FPGA memory systems may all be tuned to improve application performance. Since application kernels may only explicitly use few memory resources, substantial memory capacity may be available to the platform for use on behalf of the user program. In this work, we present Scavenger, which utilizes spare resources to construct program-optimized memories, and we also perform an initial exploration of methods for automating the construction of these application-specific memory hierarchies. Although exploiting spare resources can be beneficial, naïvely consuming all memory resources may cause frequency degradation. To relieve timing pressure in large block RAM (BRAM) structures, we provide microarchitectural techniques to trade memory latency for design frequency. We demonstrate, by examining a set of benchmarks, that our scalable cache microarchitecture achieves performance gains of 7% to 74% (with a 26% geometric mean on average) over the baseline cache microarchitecture when scaling the size of first-level caches to the maximum. Hsin-Jung Yang, Kermin Fleming, Felix Winterstein, Michael Adler, Joel S. Emer |
ACM Trans. Reconfigurable Technol. Syst. | 4 |
| 2016 | LMC: Automatic Resource-Aware Program-Optimized Memory PartitioningabstractAs FPGAs have grown in size and capacity, FPGA memory systems have become both richer and more diverse in order to support the increased computational capacity of FPGA fabrics. Using these resources, and using them well, has become commensurately more difficult, especially in the context of legacy designs ported from smaller, simpler FPGA systems. This growing complexity necessitates resource-aware compilers that can make good use of memory resources on behalf of the programmer. In this work, we introduce the LEAP Memory Compiler (LMC), which can synthesize application-optimized cache networks for systems with multiple memory resources, enabling user programs to automatically take advantage of the expanded memory capabilities of modern FPGA systems. In our experiments, the optimized cache network achieves up to 49% performance gains for throughput-oriented applications and 15% performance gains for latency-oriented applications, while increasing design area by less than 6% of the total chip area. Hsin-Jung Yang, Kermin Fleming, Michael Adler, Felix Winterstein, Joel S. Emer |
FPGA | 3 |
| 2015 | Growing a Healthy FPGA EcosystemabstractThe personal computer market grew exponentially in the 1980's for vendors such as Apple, Microsoft, and Intel when there was a healthy mix of software, tools, and microprocessor devices. John Lockwood, Michael Adler, Dan Mansur, Derek Chiou, Mike Strickland, Jason Cong, Steve Teig |
FPGA | 2 |
| 2015 | Scavenger: Automating the construction of application-optimized memory hierarchiesabstractHigh-level abstractions separate algorithm design from platform implementation, allowing programmers to focus on algorithms while building increasingly complex systems. This separation also provides system programmers and compilers an opportunity to optimize platform services for each application. In FPGAs, this platform-level malleability extends to the memory system: unlike general-purpose processors, in which memory hardware is fixed at design time, the capacity, associativity, and topology of FPGA memory systems may all be tuned to improve application performance. Since application kernels often use few memory resources, substantial memory capacity may be available to the platform for use on behalf of the user program. In this work, we perform an initial exploration of methods for automating the construction of these application-specific memory hierarchies. Although exploiting spare resources can be beneficial, naïvely consuming all memory resources may cause frequency degradation. To relieve timing pressure in large BRAM structures, we provide microarchitectural techniques to trade memory latency for design frequency. We demonstrate, by examining both hand-assembled and HLS-compiled benchmarks, that our application-optimized memory system can improve pre-existing application runtime by 25% on average. Hsin-Jung Yang, Kermin Fleming, Michael Adler, Felix Winterstein, Joel S. Emer |
FPL | 3 |
| 2015 | Efficient Control and Communication Paradigms for Coarse-Grained Spatial ArchitecturesabstractThere has been recent interest in exploring the acceleration of nonvectorizable workloads with spatially programmed architectures that are designed to efficiently exploit pipeline parallelism. Such an architecture faces two main problems: how to efficiently control each processing element (PE) in the system, and how to facilitate inter-PE communication without the overheads of traditional shared-memory coherent memory. In this article, we explore solving these problems using triggered instructions and latency-insensitive channels. Triggered instructions completely eliminate the program counter (PC) and allow programs to transition concisely between states without explicit branch instructions. Latency-insensitive channels allow efficient communication of inter-PE control information while simultaneously enabling flexible code placement and improving tolerance for variable events such as cache accesses. Together, these approaches provide a unified mechanism to avoid overserialized execution, essentially achieving the effect of techniques such as dynamic instruction reordering and multithreading. Our analysis shows that a spatial accelerator using triggered instructions and latency-insensitive channels can achieve 8 × greater area-normalized performance than a traditional general-purpose processor. Further analysis shows that triggered control reduces the number of static and dynamic instructions in the critical paths by 62% and 64%, respectively, over a PC-style baseline, increasing the performance of the spatial programming approach by 2.0 ×. Michael Pellauer, Angshuman Parashar, Michael Adler, Bushra Ahsan, Randy L. Allmon, Neal Clayton Crago, Kermin Fleming, Mohit Gambhir, Aamer Jaleel, Tushar Krishna, Daniel Lustig, Stephen Maresh, Vladimir Pavlov, Rachid Rayess, Antonia Zhai, Joel S. Emer |
ACM Trans. Comput. Syst. | 3 |
| 2014 | LEAP Shared Memories: Automating the Construction of FPGA Coherent MemoriesabstractParallel programming has been widely used in many scientific and technical areas to solve large problems. While general-purpose processors have rich infrastructure to support parallel programming on shared memory, such as coherent caches and synchronization libraries, parallel programming infrastructure for FPGAs is limited. Thus, development of FPGA-based parallel algorithms remains difficult. In this work, we seek to simplify parallel programming on FPGAs. We provide a set of easy-to-use declarative primitives to maintain coherency and consistency of accesses to shared memory resources. We propose a shared-memory service that automatically manages coherent caches on multiple FPGAs. Experimental results of a 2-dimensional heat transfer equation show that the shared memory service with our distributed coherent caches outperforms a centralized cache by 2.6x. To handle synchronization, we provide new lock and barrier primitives that leverage native FPGA communication capabilities and outperform traditional through-memory primitives by 1.8x. Hsin-Jung Yang, Kermin Fleming, Michael Adler, Joel S. Emer |
FCCM | 3 |
| 2014 | The LEAP FPGA operating systemabstractFPGAs offer attractive power and performance for many applications, especially relative to traditional sequential architectures. In spite of these advantages, FPGAs have been deployed in only a few, niche domains.We argue that the difficulty of programming FPGAs all but precludes their use in more general systems: FPGA programmers are currently exposed to all the gory system details that software operating systems long ago abstracted away. In this work, we present the Latency-insensitive Environment for Application Programming (LEAP), an FPGA operating system built around latency-insensitive communications channels. LEAP alleviates the FPGA programming problem by providing a rich set of portable latency-insensitive abstraction layers for program development. Unlike software operating systems services, which are generally dynamic, the nature of FPGAs requires that many configuration decisions be made at compile time. We present an extensible interface for compile-time management of resources. We demonstrate that LEAP provides design portability, while consuming as little as 3% of FPGA area, by mapping several designs on to various FPGA platforms. Kermin Fleming, Hsin-Jung Yang, Michael Adler, Joel S. Emer |
FPL | 3 |
| 2013 | Optimizing under abstraction: Using prefetching to improve FPGA performanceabstractIn an effort to speed the development of FPGA-based accelerators, recent research has focused on providing FPGA developers with memory and communications abstractions. Because abstraction decouples the function of these interfaces from their implementation, these new interfaces present an enormous opportunity for optimization. In this paper we examine stride prefetching as a means of improving the performance of an automatically synthesized, abstract memory hierarchy. We demonstrate, by applying our technique to several large benchmarks, that prefetching can improve preexisting application runtime by 15% on average, and up to 40%, without requiring program modification. Hsin-Jung Yang, Kermin Fleming, Michael Adler, Joel S. Emer |
FPL | 3 |
| 2013 | Triggered instructions: a control paradigm for spatially-programmed architecturesabstractIn this paper, we present triggered instructions, a novel control paradigm for arrays of processing elements (PEs) aimed at exploiting spatial parallelism. Triggered instructions completely eliminate the program counter and allow programs to transition concisely between states without explicit branch instructions. They also allow efficient reactivity to inter-PE communication traffic. The approach provides a unified mechanism to avoid over-serialized execution, essentially achieving the effect of techniques such as dynamic instruction reordering and multithreading, which each require distinct hardware mechanisms in a traditional sequential architecture. Angshuman Parashar, Michael Pellauer, Michael Adler, Bushra Ahsan, Neal Clayton Crago, Daniel Lustig, Vladimir Pavlov, Antonia Zhai, Mohit Gambhir, Aamer Jaleel, Randy L. Allmon, Rachid Rayess, Stephen Maresh, Joel S. Emer |
ISCA | 3 |
| 2012 | Leveraging latency-insensitivity to ease multiple FPGA designabstractTraditionally, hardware designs partitioned across multiple FPGAs have had low performance due to the inefficiency of maintaining cycle-by-cycle timing among discrete FPGAs. In this paper, we present a mechanism by which complex designs may be efficiently and automatically partitioned among multiple FPGAs using explicitly programmed latency-insensitive links. We describe the automatic synthesis of an area efficient, high performance network for routing these inter-FPGA links. By mapping a diverse set of large research prototypes onto a multiple FPGA platform, we demonstrate that our tool obtains significant gains in design feasibility, compilation time, and even wall-clock performance. Kermin Fleming, Michael Adler, Michael Pellauer, Angshuman Parashar, Arvind 0001, Joel S. Emer |
FPGA | 2 |
| 2012 | ZIP-IO: Architecture for application-specific compression of Big DataabstractWe have entered the “Big Data” age: scaling of networks and sensors has led to exponentially increasing amounts of data. Compression is an effective way to deal with many of these large data sets, and application-specific compression algorithms have become popular in problems with large working sets. Unfortunately, these compression algorithms are often computationally difficult and can result in application-level slow-down when implemented in software. To address this issue, we investigate ZIP-IO, a framework for FPGA-accelerated compression. Using this system we demonstrate that an unmodified industrial software workload can be accelerated 3x while simultaneously achieving more than 1000x compression in its data set. Sang Woo Jun, Kermin Fleming, Michael Adler, Joel S. Emer |
FPT | 3 |
| 2011 | Leap scratchpads: automatic memory and cache management for reconfigurable logicabstractDevelopers accelerating applications on FPGAs or other reconfigurable logic have nothing but raw memory devices in their standard toolkits. Each project typically includes tedious development of single-use memory management. Software developers expect a programming environment to include automatic memory management. Virtual memory provides the illusion of very large arrays and processor caches reduce access latency without explicit programmer instructions. Michael Adler, Kermin Fleming, Angshuman Parashar, Michael Pellauer, Joel S. Emer |
FPGA | 1 |
| 2011 | HAsim: FPGA-based high-detail multicore simulation using time-division multiplexingabstractIn this paper we present the HAsim FPGA-accelerated simulator. HAsim is able to model a shared-memory multicore system including detailed core pipelines, cache hierarchy, and on-chip network, using a single FPGA. We describe the scaling techniques that make this possible, including novel uses of time-multiplexing in the core pipeline and on-chip network. We compare our time-multiplexed approach to a direct implementation, and present a case study that motivates why high-detail simulations should continue to play a role in the architectural exploration process. Michael Pellauer, Michael Adler, Michel A. Kinsy, Angshuman Parashar, Joel S. Emer |
HPCA | 2 |
| 2009 | Soft connections: addressing the hardware-design modularity problemabstractHardware-design languages typically impose a rigid communication hierarchy that follows module instantiation. This leads to an undesirable side-effect where changes to a child's interface result in changes to the parents. Soft connections address this problem by allowing the user to specify connection endpoints that are automatically connected at compilation time, rather than by the user. Michael Pellauer, Michael Adler, Derek Chiou, Joel S. Emer |
DAC | 2 |
| 2009 | A-Port Networks: Preserving the Timed Behavior of Synchronous Systems for Modeling on FPGAsabstractComputer architects need to run cycle-accurate performance models of processors orders of magnitude faster. We discuss why the speedup on traditional multicores is limited, and why FPGAs represent a good vehicle to achieve a dramatic performance improvement over software models. This article introduces A-Port Networks, a simulation scheme designed to expose the fine-grained parallelism inherent in performance models and efficiently exploit them using FPGAs. Michael Pellauer, Muralidaran Vijayaraghavan, Michael Adler, Arvind 0001, Joel S. Emer |
ACM Trans. Reconfigurable Technol. Syst. | 3 |
| 2008 | A-Ports: an efficient abstraction for cycle-accurate performance models on FPGAsabstractRecently there has been interest in using FPGAs as a platform for cycle-accurate performance models. We discuss how the properties of FPGAs make them a good platform to achieve a performance improvement over software models. Some metrics are developed to gain insight into the strengths and weaknesses of different simulation methodologies. This paper introduces A-Ports, a distributed, efficient simulation scheme for creating cycle-accurate performance models on FPGAs. Finally, we quantitatively demonstrate an average performance improvement of 19% using A-Ports over other FPGA-based simulation schemes Michael Pellauer, Muralidaran Vijayaraghavan, Michael Adler, Arvind 0001, Joel S. Emer |
FPGA | 3 |
| 2008 | Quick Performance Models Quickly: Closely-Coupled Partitioned Simulation on FPGAsabstractIn this paper we explore microprocessor performance models implemented on FPGAs. While FPGAs can help with simulation speed, the increased implementation complexity can degrade model development time. We assess whether a simulator split into closely-coupled timing and functional partitions can address this by easing the development of timing models while retaining fine-grained parallelism. We give the semantics of our simulator partitioning, and discuss the architecture of its implementation on an FPGA. We describe how three timing models of vastly different target processors can use the same functional partition, and assess their performance. Michael Pellauer, Muralidaran Vijayaraghavan, Michael Adler, Arvind 0001, Joel S. Emer |
ISPASS | 3 |