Demo Data from SIGIR 2026 / reviewers in the wild / expert
Tomofumi Yuki
dblp:14/8025
· DBLP profile ↗
17ranked-venue papers
3as first author
2since 2021 · last 2025
0000-0002-5737-6178ORCID · corroborated
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 12 · 3 first-author · 1 since 2021Software engineering, systems software and programming languages · 7 · 1 first-author · 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
4 papers |
Memory systems · 26% Electronic design automation · 17% Parallel and multicore computing · 15% | |
| Software engineering, system software, and programming languages
5 papers |
Compilers and program optimization · 87% Program analysis · 7% Programming languages and type systems · 4% | |
| Theoretical computer science
1 paper |
Computational complexity · 100% |
Topics — the 20 heaviest of 22, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Compilers and program optimization
loop optimization |
0.9 | 1 | 2025 | Maximal Simplification of Polyhedral Reductions · Proc. ACM Program. Lang. 2025 |
Compilers and program optimization › loop transformation
polyhedral compilation |
0.9 | 1 | 2025 | Maximal Simplification of Polyhedral Reductions · Proc. ACM Program. Lang. 2025 |
Compilers and program optimization › loop optimization
reduction optimization |
0.9 | 1 | 2025 | Maximal Simplification of Polyhedral Reductions · Proc. ACM Program. Lang. 2025 |
Computational complexity
reduction |
0.9 | 1 | 2025 | Maximal Simplification of Polyhedral Reductions · Proc. ACM Program. Lang. 2025 |
Reconfigurable computing and FPGAs
FPGA accelerator |
0.7 | 1 | 2023 | Increasing FPGA Accelerators Memory Bandwidth With a Burst-Friendly Memory Layout · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2023 |
Memory systems › memory bandwidth
memory bandwidth optimization |
0.7 | 1 | 2023 | Increasing FPGA Accelerators Memory Bandwidth With a Burst-Friendly Memory Layout · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2023 |
Memory systems
memory layout |
0.7 | 1 | 2023 | Increasing FPGA Accelerators Memory Bandwidth With a Burst-Friendly Memory Layout · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2023 |
Hardware reliability and fault tolerance › error detection › concurrent error detection
algorithm-based error detection |
0.4 | 1 | 2020 | Safe Overclocking for CNN Accelerators Through Algorithm-Level Error Detection · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2020 |
Hardware accelerators and domain-specific architectures › machine learning accelerator
CNN accelerator |
0.4 | 1 | 2020 | Safe Overclocking for CNN Accelerators Through Algorithm-Level Error Detection · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2020 |
Electronic design automation
high-level synthesis |
0.4 | 1 | 2020 | Toward Speculative Loop Pipelining for High-Level Synthesis · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2020 |
Electronic design automation › high-level synthesis › pipeline synthesis
loop pipelining |
0.4 | 1 | 2020 | Toward Speculative Loop Pipelining for High-Level Synthesis · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2020 |
Processor architecture and microarchitecture › speculation
timing speculation |
0.4 | 1 | 2020 | Safe Overclocking for CNN Accelerators Through Algorithm-Level Error Detection · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2020 |
Compilers and program optimization
dependence analysis |
0.4 | 1 | 2019 | Sparse computation data dependence simplification for efficient compiler-generated inspectors · PLDI 2019 |
Parallel and multicore computing › parallel programming models
automatic parallelization |
0.4 | 1 | 2019 | Sparse computation data dependence simplification for efficient compiler-generated inspectors · PLDI 2019 |
Parallel and multicore computing › parallel algorithms › parallel algorithm design
wavefront parallelism |
0.4 | 1 | 2019 | Sparse computation data dependence simplification for efficient compiler-generated inspectors · PLDI 2019 |
Program analysis
static analysis |
0.3 | 2 | 2020 | Array dataflow analysis for polyhedral X10 programs · PPoPP 2013 Toward Speculative Loop Pipelining for High-Level Synthesis · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2020 |
Compilers and program optimization › program transformation
source-to-source transformation |
0.2 | 1 | 2023 | Increasing FPGA Accelerators Memory Bandwidth With a Burst-Friendly Memory Layout · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2023 |
Compilers and program optimization › compiler analysis
array data-flow analysis |
0.2 | 1 | 2013 | Array dataflow analysis for polyhedral X10 programs · PPoPP 2013 |
Programming languages and type systems › language semantics › concurrent language semantics
parallel language semantics |
0.2 | 1 | 2013 | Array dataflow analysis for polyhedral X10 programs · PPoPP 2013 |
Concurrent programming › concurrency bug detection
data race detection |
0.0 | 1 | 2013 | Array dataflow analysis for polyhedral X10 programs · PPoPP 2013 |
Methods — techniques the papers use, named apart from their topics
piece-wise simplification · 1.7constructive proof · 1.7tiling · 1.3burst transfer · 1.3speculative execution · 0.9memory speculation · 0.9control-flow speculation · 0.9run-time dependence testing · 0.8compile-time analysis · 0.8high-level synthesis · 0.4algebraic error detection · 0.4data flow analysis · 0.2
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2025 | Maximal Simplification of Polyhedral ReductionsabstractReductions combine collections of input values with an associative and often commutative operator to produce collections of results. When the same input value contributes to multiple outputs, there is an opportunity to reuse partial results, enabling reduction simplification . Simplification often produces a program with lower asymptotic complexity. Typical compiler optimizations yield, at best, a constant fold speedup, but a complexity improvement from, say, cubic to quadratic complexity yields unbounded speedup for sufficiently large problems. It is well known that reductions in polyhedral programs may be simplified automatically , but previous methods cannot exploit all available reuse. This paper resolves this long-standing open problem, thereby attaining minimal asymptotic complexity in the simplified program. We propose extensions to prior work on simplification to support any independent commutative reduction. At the heart of our approach is piece-wise simplification, the notion that we can split an arbitrary reduction into pieces and then independently simplify each piece. However, the difficulty of using such piece-wise transformations is that they typically involve an infinite number of choices. We give constructive proofs to deal with this and select a finite number of pieces for simplification. Louis Narmour, Tomofumi Yuki, Sanjay V. Rajopadhye |
Proc. ACM Program. Lang. | 2 |
| 2023 | Increasing FPGA Accelerators Memory Bandwidth With a Burst-Friendly Memory LayoutabstractOffloading compute-intensive kernels to hardware accelerators relies on the large degree of parallelism offered by these platforms. However, the effective bandwidth of the memory interface often causes a bottleneck, hindering the accelerator’s effective performance. Techniques enabling data reuse, such as tiling, lower the pressure on memory traffic but do not fully exploit the bandwidth. A further increase in bandwidth utilization is possible by using burst rather than element-wise accesses, provided the data is contiguous in memory. In this article, we propose a memory allocation technique, and provide a proof-of-concept source-to-source compiler pass, that enables such burst transfers by modifying the data layout in external memory. Our experiments show the new memory allocation yields close to 100% bandwidth utilization while the memory engines occupy less than 5% of the field-programmable gate array (FPGA) logic area. Corentin Ferry, Tomofumi Yuki, Steven Derrien, Sanjay V. Rajopadhye |
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. | 2 |
| 2020 | Towards Generic and Scalable Word-Length OptimizationabstractIn this paper, we propose a method to improve the scalability of Word-Length Optimization (WLO) for large applications that use complex quality metrics such as Structural Similarity (SSIM). The input application is decomposed into smaller kernels to avoid uncontrolled explosion of the exploration time, which is known as noise budgeting. The main challenge addressed in this paper is how to allocate noise budgets to each kernel. This requires capturing the interactions across kernels. The main idea is to characterize the impact of approximating each kernel on accuracy/cost through simulation and regression. Our approach improves the scalability while finding better solutions for Image Signal Processor pipeline. Van-Phu Ha, Tomofumi Yuki, Olivier Sentieys |
DATE | 2 |
| 2020 | Toward Speculative Loop Pipelining for High-Level SynthesisabstractLoop pipelining (LP) is a key optimization in modern high-level synthesis (HLS) tools for synthesizing efficient hardware datapaths. Existing techniques for automatic LP are limited by static analysis that cannot precisely analyze loops with data-dependent control flow and/or memory accesses. We propose a technique for speculative LP that handles both control-flow and memory speculations in a unified manner. Our approach is entirely expressed at the source level, allowing a seamless integration to development flows using HLS. Our evaluation shows significant improvement in throughput over standard LP. Steven Derrien, Thibaut Marty, Simon Rokicki, Tomofumi Yuki |
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. | 4 |
| 2020 | Safe Overclocking for CNN Accelerators Through Algorithm-Level Error DetectionabstractIn this article, we propose a technique for improving the efficiency of convolutional neural network hardware accelerators based on timing speculation (overclocking) and fault tolerance. We augment the accelerator with a lightweight error detection mechanism to protect against timing errors in convolution layers, enabling aggressive timing speculation. The error detection mechanism we have developed works at the algorithm-level, utilizing algebraic properties of the computation, allowing the full implementation to be realized using high-level synthesis tools. Our prototype on ZC706 demonstrated up to 60% higher throughput with negligible area overhead for various wordlength implementations. Thibaut Marty, Tomofumi Yuki, Steven Derrien |
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. | 2 |
| 2019 | Sparse computation data dependence simplification for efficient compiler-generated inspectorsabstractThis paper presents a combined compile-time and runtime loop-carried dependence analysis of sparse matrix codes and evaluates its performance in the context of wavefront parallellism. Sparse computations incorporate indirect memory accesses such as x[col[j]] whose memory locations cannot be determined until runtime. The key contributions of this paper are two compile-time techniques for significantly reducing the overhead of runtime dependence testing: (1) identifying new equality constraints that result in more efficient runtime inspectors, and (2) identifying subset relations between dependence constraints such that one dependence test subsumes another one that is therefore eliminated. New equality constraints discovery is enabled by taking advantage of domain-specific knowledge about index arrays, such as col[j]. These simplifications lead to automatically-generated inspectors that make it practical to parallelize such computations. We analyze our simplification methods for a collection of seven sparse computations. The evaluation shows our methods reduce the complexity of the runtime inspectors significantly. Experimental results for a collection of five large matrices show parallel speedups ranging from 2x to more than 8x running on a 8-core CPU. Mahdi Soltan Mohammadi, Tomofumi Yuki, Kazem Cheshmi, Eddie C. Davis, Mary W. Hall, Maryam Mehri Dehnavi, Payal Nandy, Catherine Mills Olschanowsky, Anand Venkat, Michelle Mills Strout |
PLDI | 2 |
| 2018 | Enabling Overclocking Through Algorithm-Level Error DetectionabstractIn this paper, we propose a technique for improving the efficiency of hardware accelerators based on timing speculation (overclocking) and fault tolerance. We augment the accelerator with a lightweight error detection mechanism to protect against timing errors, enabling aggressive timing speculation. We demonstrate the validity of our approach for the convolution layers in convolutional neural networks. We present an implementation of a fault-tolerant convolution layer accelerator combined with the lightweight error detection. The error detection mechanism we have developed works at the algorithm-level, utilizing algebraic properties of the computation, allowing the full implementation to be realized using High-Level Synthesis tools. Our prototype on ZC706 demonstrated 68% - 77% higher throughput with negligible overhead. Thibaut Marty, Tomofumi Yuki, Steven Derrien |
FPT | 2 |
| 2017 | One size does not fit all: Implementation trade-offs for iterative stencil computations on FPGAsabstractIterative stencils are kernels in various application domains such as numerical simulations and medical imaging, that merit FPGA acceleration. The best architecture depends on many factors such as the target platform, off-chip memory bandwidth, problem size, and performance requirements. We generate a family of FPGA stencil accelerators targeting emerging System on Chip platforms, (e.g., Xilinx Zynq or Intel SoC). Our designs come with design knobs to explore trade-offs. We also propose performance models to hone in on the most interesting design points, and show how they accurately lead to optimal designs. The optimal choice depends on problem sizes and performance goals. Gaël Deest, Tomofumi Yuki, Sanjay V. Rajopadhye, Steven Derrien |
FPL | 2 |
| 2016 | Extended lattice-based memory allocationabstractThis work extends lattice-based memory allocation, an earlier work on memory reuse through array contraction. Such an optimization is used for optimizing high-level programming languages where storage mapping may be abstracted away from programmers and to complement code transformations that introduce intermediate buffers. The main motivation for this extension is to improve the handling of more general forms of specifications we see today, e.g., with loop tiling, pipelining, and other forms of parallelism available in explicitly-parallel languages. Specifically, we handle the case when conflicting constraints (those that describe the array indices that cannot share the same location) are specified as a (non-convex) union of polyhedra. The choice of directions (or basis) of array reuse becomes important when dealing with non-convex specifications. We extend the two dual approaches in the original work to handle unions of polyhedra, and to select a suitable basis. Our final approach relies on a combination of the two, also revealing their links with, on one hand, the construction of multi-dimensional schedules for parallelism and tiling (but with a fundamental difference that we identify) and, on the other hand, the construction of universal reuse vectors (UOV), which was only used so far in a specific context, for schedule-independent mapping. Alain Darte, Alexandre Isoard, Tomofumi Yuki |
CC | 3 |
| 2016 | EURECA compilation: Automatic optimisation of cycle-reconfigurable circuitsabstractEURECA architectures have been proposed as an enhancement to existing FPGAs, to enable cycle-by-cycle reconfiguration. Applications with irregular data accesses, which previously cannot be efficiently supported in hardware, can be efficiently mapped into EURECA architectures. One major challenge to apply the EURECA architectures to practical applications is the intensive design efforts required to analyse and optimise cycle-reconfigurable operations, in order to obtain accurate and high-performance results while underlying circuits reconfigure cycle by cycle. This work proposes novel compiler support for EURECA-based designs. The compiler adopts (a) techniques based on session types to automatically derive a runtime reconfiguration scheduler that guarantees design correctness, and (b) a streaming circuit model to ensure high-performance circuits. Three benchmark applications —large-scale sorting, Memcached, and Sparse Matrix Vector Multiplication (SpMV)— developed with the proposed compiler support show up to 11.2 times (21.8 times when architecture scales) reduction in area-delay product when compared with conventional architectures, and achieve up to 39% improvements compared with manually optimised EURECA designs. Xinyu Niu, Nicholas Ng, Tomofumi Yuki, Nobuko Yoshida, Wayne Luk |
FPL | 3 |
| 2014 | Toward scalable source level accuracy analysis for floating-point to fixed-point conversionabstractIn embedded systems, many numerical algorithms are implemented with fixed-point arithmetic to meet area cost and power constraints. Fixed-point encoding decisions can significantly affect cost and performance. To evaluate their impact on accuracy, designers resort to simulations. Their high running-time prevents thorough exploration of the design-space. To address this issue, analytical modeling techniques have been proposed, but their applicability is limited by scalability issues. In this paper, we extend these techniques to a larger class of programs. We use polyhedral methods to extract a more compact, graph-based representation of the program. We validate our approach with a several image and signal processing algorithms. Gaël Deest, Tomofumi Yuki, Olivier Sentieys, Steven Derrien |
ICCAD | 2 |
| 2013 | Coarse-Grain Optimization and Code Generation for Embedded Multicore SystemsabstractAs processors and systems-on-chip increasingly become multicore, parallel programming remains a difficult, time-consuming and complicated task. End users who are not parallel programming experts have a need to exploit such processors and architectures, using state of the art fourth generation of high programming languages, like Scilab or MATLAB. The ALMA toolset addresses this problem by receiving Scilab code as input and produces parallel code for embedded multiprocessor systems on chip, using platform quasi-agnostic optimisations. In this paper, coarse grain parallelism extraction and optimization issues as well as parallel code generation for the ALMA toolset are discussed. George Goulas, Christos Valouxis, Panayiotis Alefragis, Nikos S. Voros, Christos Gogos, Oliver Wolf, Timo Stripf, Thomas Bruckschlögl, Jürgen Becker 0001, Ali El Moussawi, Maxime Naullet, Tomofumi Yuki |
DSD | 12 |
| 2013 | Derivation of efficient FSM from loop nestsabstractPipelined execution is one of the most important optimizations in hardware design to improve hardware utilization rate, and hence the throughput. Loop pipelining is a transformation available in High Level Synthesis tools to execute multiple iterations of a loop in a pipeline. Nested loop pipelining is a related technique that improves hardware utilization rate when the iteration count of the innermost loop is small. However, it is also known to increase the complexity of the control, and hence degrading frequency. In this paper, we present an automatic transformation targeting HLS that improves the effectiveness of nested loop pipelining, by efficient implementations of the control-path. Specifically, we present (i) an analytical model that captures the trade-off between gain in cycles and loss in frequency, (ii), automatic derivation of efficient Finite State Machine from loop nests, and (iii) an efficient implementation of the derived FSM that improves the performance of synthesized hardware. Tomofumi Yuki, Antoine Morvan, Steven Derrien |
FPT | 1 |
| 2013 | Array dataflow analysis for polyhedral X10 programsabstractThis paper addresses the static analysis of an important class of X10 programs, namely those with finish/async parallelism, and affine loops and array reference structure as in the polyhedral model. For such programs our analysis can certify whenever a program is deterministic or flags races. Tomofumi Yuki, Paul Feautrier, Sanjay V. Rajopadhye, Vijay A. Saraswat |
PPoPP | 1 |
| 2013 | GeCoS: A framework for prototyping custom hardware design flowsabstractGeCoS is an open source framework that provide a highly productive environment for hardware design. GeCoS primarily targets custom hardware design using High Level Synthesis, distinguishing itself from classical compiler infrastructures. Compiling for custom hardware makes use of domain specific semantics that are not considered by general purpose compilers. Finding the right balance between various performance criteria, such as area, speed, and accuracy, is the goal, contrary to the typical goal in high performance context to maximize speed. The GeCoS infrastructure facilitates the prototyping of hardware design flows, going beyond compiler analyses and transformations. Hardware designers must interact with the compiler for design space exploration, and it is important to be able to give instant feedback to the users. Antoine Floch, Tomofumi Yuki, Ali El Moussawi, Antoine Morvan, Kevin J. M. Martin, Maxime Naullet, Mythri Alle, Ludovic L'Hours, Nicolas Simon, Steven Derrien, François Charot, Christophe Wolinski, Olivier Sentieys |
SCAM | 2 |
| 2011 | Model-Driven Engineering and Optimizing Compilers: A Bridge Too Far?
Antoine Floch, Tomofumi Yuki, Clément Guy, Steven Derrien, Benoît Combemale, Sanjay V. Rajopadhye, Robert B. France |
MoDELS | 2 |
| 2010 | Automatic creation of tile size selection modelsabstractTiling is a widely used loop transformation for exposing/exploiting parallelism and data locality. Effective use of tiling requires selection and tuning of the tile sizes. This is usually achieved by hand-crafting tile size selection (TSS) models that characterize the performance of the tiled program as a function of tile sizes. The best tile sizes are selected by either directly using the TSS model or by using the TSS model together with an empirical search. Hand-crafting accurate TSS models is hard, and adapting them to different architecture/compiler, or even keeping them up-to-date with respect to the evolution of a single compiler is often just as hard. Instead of hand-crafting TSS models, can we automatically learn or create them? In this paper, we show that for a specific class of programs fairly accurate TSS models can be automatically created by using a combination of simple program features, synthetic kernels, and standard machine learning techniques. The automatic TSS model generation scheme can also be directly used for adapting the model and/or keeping it up-to-date. We evaluate our scheme on six different architecture-compiler combinations (chosen from three different architectures and four different compilers). The models learned by our method have consistently shown near-optimal performance (within 5% of the optimal on average) across all architecture-compiler combinations. Tomofumi Yuki, Lakshminarayanan Renganarayanan, Sanjay V. Rajopadhye, Charles W. Anderson, Alexandre E. Eichenberger, Kevin O'Brien |
CGO | 1 |