Demo Data from EDBT 2026 / reviewers in the wild / expert
Henry Styles
dblp:00/1054
· DBLP profile ↗
14ranked-venue papers
6as first author
0since 2021 · last 2015
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 14 · 6 first-authorSoftware engineering, systems software and programming languages · 1
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 |
Reconfigurable computing and FPGAs · 45% Electronic design automation · 44% GPUs and heterogeneous computing · 4% | |
| Software engineering, system software, and programming languages
1 paper |
Compilers and program optimization · 100% |
Topics — the 9 heaviest of 11, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Electronic design automation
high-level synthesis |
0.2 | 1 | 2015 | Unlocking FPGAs Using High Level Synthesis Compiler Technologies · FPGA 2015 |
Reconfigurable computing and FPGAs
FPGA memory architecture |
0.1 | 1 | 2009 | Performance and power of cache-based reconfigurable computing · ISCA 2009 |
Compilers and program optimization
hardware compilation |
0.1 | 1 | 2015 | Unlocking FPGAs Using High Level Synthesis Compiler Technologies · FPGA 2015 |
Reconfigurable computing and FPGAs
FPGA accelerator |
0.1 | 1 | 2015 | Unlocking FPGAs Using High Level Synthesis Compiler Technologies · FPGA 2015 |
Electronic design automation › high-level synthesis
hardware compilation |
0.0 | 1 | 2004 | Exploiting Program Branch Probabilities in Hardware Compilation · IEEE Trans. Computers 2004 |
Reconfigurable computing and FPGAs › FPGA-based heterogeneous computing
CPU-FPGA platform |
0.0 | 1 | 2009 | Performance and power of cache-based reconfigurable computing · FPGA 2009 |
GPUs and heterogeneous computing › heterogeneous supercomputing
FPGA for HPC |
0.0 | 1 | 2009 | Performance and power of cache-based reconfigurable computing · ISCA 2009 |
Electronic design automation › multi-objective optimization
area-time tradeoff |
0.0 | 1 | 2004 | Exploiting Program Branch Probabilities in Hardware Compilation · IEEE Trans. Computers 2004 |
Performance modeling and evaluation › queueing models
queueing network model |
0.0 | 1 | 2004 | Exploiting Program Branch Probabilities in Hardware Compilation · IEEE Trans. Computers 2004 |
Methods — techniques the papers use, named apart from their topics
OpenCL · 0.4cache architecture design · 0.1C-based FPGA programming · 0.1queueing network model · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2015 | Unlocking FPGAs Using High Level Synthesis Compiler TechnologiesabstractFPGA devices have long been the standard for massively parallel computing fabrics with a low power footprint. Unfortunately, the complexity associated with an FPGA design has limited the rate of adoption by software application programmers. Recent advances in compiler and FPGA fabric capabilities are reversing this trend and there is a growing adoption of FPGAs for algorithmic workloads such as data analytics, feature detection in images, adaptive beam forming, etc. One of the pillars of this shift is the Vivado HLS compiler, which enables the compilation of algorithms captured in C and C++into efficient FPGA implementations. This talk focuses on how the HLS compiler creates algorithm specific compute architectures and how these elements are then used in an OpenCL based system level design abstraction. The evolution of these hardware design abstractions into software centric specifications enable application developers to leverage the flexibility of the FPGA fabric without the constraints typically found in fixed parallel architectures such as multi-core CPUs/GPUs. Fernando Martinez-Vallina, Henry Styles |
FPGA | 2 |
| 2015 | OpenCL library of stream memory components targeting FPGAsabstractIn recent years, high-level languages and compilers, such as OpenCL have improved both productivity and FPGA adoption on a wider scale. One of the challenges in the design of high-performance stream FPGA applications is iterative manual optimization of the numerous application buffers (e.g., arrays, FIFOs and scratch-pads). First, to achieve the desired throughput, the programmer faces the burden of analyzing the memory accesses of each application buffer, and based on observed data locality determines the optimal on-chip buffering, and off-chip read/write data access strategy. Second, to minimize throughput bottlenecks, the programmer has to carefully partition the limited on-chip memory resources among many application buffers. In this work we present an FPGA OpenCL library of pre-optimized stream memory components (SMCs). The library contains three types of SMCs, which implement frequently applied data transformations: 1) stencil, 2) transpose and 3) tiling. The library generates SMCs that are optimized both for the specific data transformation they perform as well as the user specified data set size. Further, to ease the partitioning of on-chip memory resources among many application memories, the library automatically maps application buffers to on-chip and off-chip memory resources. This is achieved by enabling the programmer to specify an on-chip memory budget for each component. In terms of on-chip memory, the SMCs perform data buffering to exploit data locality and maximize reuse. In terms of off-chip memory accesses, the SMCs optimize read/write memory operations by performing data coalescing, bursting and prefetching. We show that using the SMC library, the programmer can quickly generate scalable, pre-optimized stream application memory components, thus reaching throughput targets without time consuming manual memory optimization. Jasmina Vasiljevic, Ralph Wittig, Paul Schumacher, Jeff Fifield, Fernando Martinez-Vallina, Henry Styles, Paul Chow |
FPT | 6 |
| 2010 | MPI as a Programming Model for High-Performance Reconfigurable ComputersabstractHigh-Performance Reconfigurable Computers (HPRCs) consist of one or more standard microprocessors tightly-coupled with one or more reconfigurable FPGAs. HPRCs have been shown to provide good speedups and good cost/performance ratios, but not necessarily ease of use, leading to a slow acceptance of this technology. HPRCs introduce new design challenges, such as the lack of portability across platforms, incompatibilities with legacy code, users reluctant to change their code base, a prolonged learning curve, and the need for a system-level Hardware/Software co-design development flow. This article presents the evolution and current work on TMD-MPI, which started as an MPI-based programming model for Multiprocessor Systems-on-Chip implemented in FPGAs, and has now evolved to include multiple X86 processors. TMD-MPI is shown to address current design challenges in HPRC usage, suggesting that the MPI standard has enough syntax and semantics to program these new types of parallel architectures. Also presented is the TMD-MPI Ecosystem , which consists of research projects and tools that are developed around TMD-MPI to further improve HPRC usability. Finally, we present preliminary communication performance measurements. Manuel Saldaña, Arun Patel, Christopher A. Madill, Daniel Nunes, Danyao Wang, Paul Chow, Ralph Wittig, Henry Styles, Andrew Putnam |
ACM Trans. Reconfigurable Technol. Syst. | 8 |
| 2009 | Performance and power of cache-based reconfigurable computingabstractCHiMPS is a C-based compiler for high-performance computing (HPC) on heterogeneous CPU-FPGA computing platforms. CHiMPS efficiently supports random accesses to main memory through the many-cache memory model, enabling a broader range of applications to take advantage of FPGA-based acceleration. Many-cache creates multiple caches on top of an FGPA's small, independent memories, each targeting a particular data structure or region of memory in an application and each customized for the memory operations that access it. This poster presents the analyses and optimizations of the CHiMPS compiler that construct many-cache caches, and presents the details of the cache parameters on a Xilinx Virtex-5 LX110T FPGA. Detailed simulation results on HPC kernels demonstrate a 7.8x (geometric mean) performance boost over CPU-only execution of the same source code, FPGA power usage that is on average 4.1x less, and consequently performance per watt that is also greater, by a geometric mean of 21.3x. Andrew Putnam, Susan J. Eggers, Dave Bennett, Eric Dellinger, Jeff Mason, Henry Styles, Prasanna Sundararajan, Ralph Wittig |
FPGA | 6 |
| 2009 | Performance and power of cache-based reconfigurable computingabstractMany-cache is a memory architecture that efficiently supports caching in commercially available FPGAs. It facilitates FPGA programming for high-performance computing (HPC) developers by providing them with memory performance that is greater and power consumption that is less than their current CPU platforms, but without sacrificing their familiar, C-based programming environment. Andrew Putnam, Susan J. Eggers, Dave Bennett, Eric Dellinger, Jeff Mason, Henry Styles, Prasanna Sundararajan, Ralph Wittig |
ISCA | 6 |
| 2005 | Reconfigurable Designs for RadiosityabstractWe develop reconfigurable designs to support radiosity, a computer graphics algorithm for producing highly realistic images of artificial scenes, but which is computationally expensive. We implement radiosity using stochastic raytracing, which affords both instruction-level and data parallelism. Our designs are parameterisable by bitwidth, allowing trade-offs between image quality and computation speed. We measure the speed of our designs for a Xilinx XC2V6000 device in the Celoxica RC2000 platform: at 53 MHz it can run up to five times faster than a software implementation on an Athlon MP 2600+ processor at 2.1 GHz. We estimate that retargeting our design for a Virtex-4 XCVSX55 device can result in over 160 times software speed, while a Spartan-3 XC3S5000 device can run more than 40 times faster than the software implementation. Paul Baker, Tim Todman, Henry Styles, Wayne Luk |
FCCM | 3 |
| 2005 | Compilation and Management of Phase-Optimized Reconfigurable SystemsabstractA program phase is an interval over which the working set of the program remains more or less constant. This paper presents a dynamic optimization scheme which uses program phase information to optimize designs for reconfigurable computing. We present a mathematical formulation of the optimization problem and propose a solution which comprises of: (1) a hardware compilation scheme for generating configurations that are specialized for different phases of execution. (2) A runtime system which manages interchange of these configurations to maintain specialization between phase transitions. We report experimental results for Xilinx Virtex FPGAs involving OpenGL SFHCview-perf benchmarks and demonstrate 95.39% speedup over an optimized uniform rate static design and 11.13% speedup over an optimized multiinitiation interval static design. We present a framework for a posteriori performance analysis and architectural exploration with which we (a) establish a performance upper bound under perfect phase optimization, (b) investigate sensitivity to reconfiguration time, and (c) examine the quality of the proposed algorithm for phase-detection. The optimization is shown to be surprisingly insensitive to increased reconfiguration time. Faster reconfiguration yields limited benefits and performance improvements are possible up to 1 second reconfiguration time. Henry Styles, Wayne Luk |
FPL | 1 |
| 2004 | Pipelining designs with loop-carried dependenciesabstractThis work explores the reconfigurable dataflow approach in producing efficient hardware pipelines for programs with loop-carry dependencies in nested loops. Reconfigurable dataflow combines static and dynamic scheduling, and employs tagged tokens to enable reassembling of results which can retire out of order. The effectiveness of this approach is illustrated using a fractal set generator and a Newton-Raphson root polisher: implementations targeting Xilinx Virtex and Virtex-II FPGAs can run up to 55 times faster than hardware pipelines developed using other methods, at the expense of a 50% increase in area. Henry Styles, David B. Thomas, Wayne Luk |
FPT | 1 |
| 2004 | Exploiting Program Branch Probabilities in Hardware CompilationabstractThis paper explores using information about program branch probabilities to optimize the results of hardware compilation. The basic premise is to promote utilization by dedicating more resources to branches which execute more frequently. A new hardware compilation and flow control scheme are presented which enable the computation rate of different branches to be matched to the observed branch probabilities. We propose an analytical queuing network performance model to determine the optimal settings for basic block computation rates given a set of observed branch probabilities. An experimental hardware compilation system has been developed to evaluate this approach. The branch optimization design space is characterized in an experimental study for Xilinx Virtex FPGAs of two complex applications: video feature extraction and progressive refinement radiosity. For designs of equal performance, branch-optimized designs require 24 percent and 27.5 percent less area. For designs of equal area, branch optimized designs run up to three times faster. Our analytical performance model is shown to be highly accurate with relative error between 0.12 and 1.1 /spl times/ 10/sup -4/. Henry Styles, Wayne Luk |
IEEE Trans. Computers | 1 |
| 2003 | Branch Optimisation Techniques for Hardware Compilation
Henry Styles, Wayne Luk |
FPL | 1 |
| 2002 | Accelerating Radiosity Calculations Using Reconfigurable PlatformsabstractWe describe a feasibility study into accelerating computer graphics radiosity calculations using reconfigurable hardware. A modular hardware/software codesign framework has been developed for experimenting with hardware acceleration of a time consuming step: formfactor determination. We describe a parameterised hardware design pattern, captured in the Handel-C language, which enables rapid exploration of the area/throughput design space for simple pipelines. Using this pattern we determine speedup and resource usage on a range of Xilinx Virtex FPGA devices, and examine future trends in performance. As a sample of these results we demonstrate a 7.6 times speed-up over a 1.4GHz Athlon PC using a Xilinx XCV2000E and, based on place and route reports, estimate 31 times speed-up using a Xilinx XC2V8000. Henry Styles, Wayne Luk |
FCCM | 1 |
| 2001 | Pipelined Function Evaluation on FPGAs
Nicolas Boullis, Oskar Mencer, Wayne Luk, Henry Styles |
FCCM | 4 |
| 2001 | Parameterized Function Evaluation for FPGAs
Oskar Mencer, Nicolas Boullis, Wayne Luk, Henry Styles |
FPL | 4 |
| 2000 | Customizing Graphics Applications: Techniques and Programming InterfaceabstractThis paper identifies opportunities for customising architectures for graphics applications, such as infrared simulation and geometric visualisation. We have studied methods for exploiting custom data formats and datapath widths, and for optimising graphics operations such as texture mapping and hidden-surface removal. Techniques for balancing the graphics pipeline and for run-time reconfiguration have been implemented. The customised architectures are captured in Handel-C, a C-like language supporting parallelism and flexible data size, and compiled for Xilinx 4000 and Virtex FPGAs. We have also developed an application programming interface based on the OpenGL standard for automatic speedup of graphics applications, including the Quake 2 action game. Henry Styles, Wayne Luk |
FCCM | 1 |