Demo Data from VLDB 2026 / reviewers in the wild / expert
Yevgen Voronenko
dblp:74/6120
· DBLP profile ↗
12ranked-venue papers
4as first author
0since 2021 · last 2011
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 5 · 1 first-authorGraphics, computer vision, multimedia, augmented reality and games · 3 · 2 first-authorSoftware engineering, systems software and programming languages · 2 · 1 first-authorArtificial intelligence and machine learning · 1Theory of computation · 1 · 1 first-authorApplied, interdisciplinary, general and emerging computing · 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 |
Electronic design automation · 44% Integrated circuit design · 29% High-performance computing · 19% | |
| Software engineering, system software, and programming languages
3 papers |
Compilers and program optimization · 100% | |
| Theoretical computer science
2 papers |
Mathematical optimization · 85% Graph algorithms and graph theory · 15% |
Topics — the 16 heaviest of 17, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Compilers and program optimization
code generation |
0.1 | 2 | 2005 | SPIRAL: Code Generation for DSP Transforms · Proc. IEEE 2005 Formal loop merging for signal transforms · PLDI 2005 |
Mathematical optimization
combinatorial optimization |
0.1 | 1 | 2009 | Bandit-based optimization on graphs with application to library performance tuning · ICML 2009 |
Integrated circuit design › digital circuit design
arithmetic circuit design |
0.1 | 1 | 2007 | Multiplierless multiple constant multiplication · ACM Trans. Algorithms 2007 |
Electronic design automation › high-level synthesis
constant multiplication |
0.1 | 1 | 2007 | Multiplierless multiple constant multiplication · ACM Trans. Algorithms 2007 |
Integrated circuit design
digital circuit design |
0.1 | 1 | 2007 | Multiplierless multiple constant multiplication · ACM Trans. Algorithms 2007 |
Electronic design automation
high-level synthesis |
0.1 | 1 | 2007 | Multiplierless multiple constant multiplication · ACM Trans. Algorithms 2007 |
Electronic design automation › high-level synthesis › constant multiplication
multiple constant multiplication |
0.1 | 1 | 2007 | Multiplierless multiple constant multiplication · ACM Trans. Algorithms 2007 |
High-performance computing
performance optimization |
0.1 | 1 | 2006 | Tools and techniques for performance - FFT program generation for shared memory: SMP and multicore · SC 2006 |
Compilers and program optimization
autotuning |
0.1 | 1 | 2005 | SPIRAL: Code Generation for DSP Transforms · Proc. IEEE 2005 |
Compilers and program optimization
loop optimization |
0.1 | 1 | 2005 | Formal loop merging for signal transforms · PLDI 2005 |
Mathematical optimization
discrete optimization |
0.0 | 1 | 2009 | Bandit-based optimization on graphs with application to library performance tuning · ICML 2009 |
Graph algorithms and graph theory
graph optimization |
0.0 | 1 | 2007 | Multiplierless multiple constant multiplication · ACM Trans. Algorithms 2007 |
Processor architecture and microarchitecture
chip multiprocessor |
0.0 | 1 | 2006 | Tools and techniques for performance - FFT program generation for shared memory: SMP and multicore · SC 2006 |
Parallel and multicore computing › parallel programming models
shared-memory parallelization |
0.0 | 1 | 2006 | Tools and techniques for performance - FFT program generation for shared memory: SMP and multicore · SC 2006 |
High-performance computing
fast fourier transform |
0.0 | 1 | 2005 | Formal loop merging for signal transforms · PLDI 2005 |
High-performance computing
scientific computing |
0.0 | 1 | 2005 | SPIRAL: Code Generation for DSP Transforms · Proc. IEEE 2005 |
Methods — techniques the papers use, named apart from their topics
k-armed bandits · 0.2grammar-based search · 0.2rewriting system · 0.2runtime analysis · 0.1graph-based algorithm · 0.1search · 0.1machine learning · 0.1domain-specific language · 0.1monte-carlo evaluation · 0.1monte carlo evaluation · 0.1spiral · 0.1automatic performance tuning · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2011 | Real-time software implementation of an IEEE 802.11a baseband receiver on Intel multicoreabstractWe present a software-only implementation of an IEEE 802.11a (WiFi) receiver optimized for Intel multicore platforms. The receiver is about 50 times faster than a straightforward C implementation, i.e., an implementation that has the same functionality, but leaves optimization completely to the compiler. Our hand-optimized implementation achieves real-time for all data rates up to the maximum of 54 Mbit/s on a Core i7, clocked at 3.3 GHz, and for up to 12 Mbit/s on an Atom, clocked at 1.6 GHz, using two cores in both cases. To achieve this performance we use up to two threads, up to 16-way vectorization using Intel's SSE, and various other optimizations. Christian R. Berger, Volodymyr Arbatov, Yevgen Voronenko, Franz Franchetti, Markus Püschel |
ICASSP | 3 |
| 2010 | Offline library adaptation using automatically generated heuristicsabstractAutomatic tuning has emerged as a solution to provide high-performance libraries for fast changing, increasingly complex computer architectures. We distinguish offline adaptation (e.g., in ATLAS) that is performed during installation without the full problem description from online adaptation (e.g., in FFTW) that is performed at runtime. Offline adaptive libraries are simpler to use, but, unfortunately, writing the adaptation heuristics that power them is a daunting task. The overhead of online adaptive libraries, on the other hand, makes them unsuitable for a number of applications. In this paper, we propose to automatically generate heuristics in the form of decision trees using a statistical classifier, effectively converting an online adaptive library into an offline one. As testbed we use Spiral-generated adaptive transform libraries for current multicores with vector extensions. We show that replacing the online search with generated decision trees maintains a performance competitive with vendor libraries while allowing for a simpler interface and reduced computation overhead. Frédéric de Mesmay, Yevgen Voronenko, Markus Püschel |
IPDPS | 2 |
| 2009 | Automatic Tuning of Discrete Fourier Transforms Driven by Analytical ModelingabstractAnalytical models have been used to estimate optimal values for parameters such as tile sizes in the context of loop nests. However, important algorithms such as fast Fourier transforms (FFTs) present a far more complex search space consisting of many thousands of different implementations with very different complex access patterns and nesting and code structures. As a results, some of the best available FFT implementations use heuristic search based on runtime measurements. In this paper we present the first analytical model that can successfully replace the measurement in this search on modern platforms. The model includes many details of the platform's memory system including the TLBs, and, for the first time, physically addressed caches and hardware prefetching. The effect, as we show, is a dramatically reduced search time to find the best FFT without significant loss in performance. Even though our model is adapted to the FFT in this paper, its underlying structure should be applicable for a much larger set of code structures and hence is a candidate for iterative compilation. Basilio B. Fraguela, Yevgen Voronenko, Markus Püschel |
PACT | 2 |
| 2009 | Computer Generation of General Size Linear Transform LibrariesabstractThe development of high-performance libraries has become extraordinarily difficult due to multiple processor cores, vector instruction sets, and deep memory hierarchies. Often, the library has to be reimplemented and reoptimized, when a new platform is released. In this paper we show how to automatically generate general input-size libraries for the domain of linear transforms. The input to our generator is a formal specification of the transform and the recursive algorithms the library should use; the output is a library that supports general input size, is vectorized and multithreaded, provides an adaptation mechanism for the memory hierarchy, and has excellent performance, comparable to or better than the best human-written libraries. Further, we show that our library generator enables various customizations; one example is the generation of Java libraries. Yevgen Voronenko, Frédéric de Mesmay, Markus Püschel |
CGO | 1 |
| 2009 | Bandit-based optimization on graphs with application to library performance tuningabstractThe problem of choosing fast implementations for a class of recursive algorithms such as the fast Fourier transforms can be formulated as an optimization problem over the language generated by a suitably defined grammar. We propose a novel algorithm that solves this problem by reducing it to maximizing an objective function over the sinks of a directed acyclic graph. This algorithm valuates nodes using Monte-Carlo and grows a subgraph in the most promising directions by considering local maximum k-armed bandits. When used inside an adaptive linear transform library, it cuts down the search time by an order of magnitude compared to the existing algorithm. In some cases, the performance of the implementations found is also increased by up to 10% which is of considerable practical importance since it consequently improves the performance of all applications using the library. Frédéric de Mesmay, Arpad Rimmel, Yevgen Voronenko, Markus Püschel |
ICML | 3 |
| 2008 | Domain-specific library generation for parallel software and hardware platformsabstractWe overview a library generation framework called Spiral. For the domain of linear transforms, Spiral automatically generates implementations for parallel platforms including SIMD vector extensions, multicore processors, field-programmable gate arrays (FPGAs) and FPGA accelerated processors. The performance of the generated code is competitive with the best available hand-written libraries. Franz Franchetti, Yevgen Voronenko, Peter A. Milder, Srinivas Chellappa, Marek R. Telgarsky, Paolo D'Alberto, Frédéric de Mesmay, James C. Hoe, José M. F. Moura, Markus Püschel |
IPDPS | 2 |
| 2007 | Multiplierless multiple constant multiplicationabstractA variable can be multiplied by a given set of fixed-point constants using a multiplier block that consists exclusively of additions, subtractions, and shifts. The generation of a multiplier block from the set of constants is known as the multiple constant multiplication (MCM) problem. Finding the optimal solution, namely, the one with the fewest number of additions and subtractions, is known to be NP-complete. We propose a new algorithm for the MCM problem, which produces solutions that require up to 20% less additions and subtractions than the best previously known algorithm. At the same time our algorithm, in contrast to the closest competing algorithm, is not limited by the constant bitwidths. We present our algorithm using a unifying formal framework for the best, graph-based MCM algorithms and provide a detailed runtime analysis and experimental evaluation. We show that our algorithm can handle problem sizes as large as 100 32-bit constants in a time acceptable for most applications. The implementation of the new algorithm is available at www.spiral.net. Yevgen Voronenko, Markus Püschel |
ACM Trans. Algorithms | 1 |
| 2006 | Algebraic Derivation of General Radix Cooley-Tukey Algorithms for the Real Discrete Fourier TransformabstractWe first show that the real version of the discrete Fourier transform (called RDFT) can be characterized in the framework of polynomial algebras just as the DFT and the discrete cosine and sine transforms. Then, we use this connection to algebraically derive a general radix Cooley-Tukey type algorithm for the RDFT The algorithm has a similar structure as its complex counterpart, but there are also important differences, which are exhibited by our Kronecker product style presentation. In particular, the RDFT is decomposed into smaller RDFTs but also other auxiliary transforms, which we then decompose by their own Cooley-Tukey type algorithms to obtain a full recursive algorithm for the RDFT Yevgen Voronenko, Markus Püschel |
ICASSP (3) | 1 |
| 2006 | Tools and techniques for performance - FFT program generation for shared memory: SMP and multicoreabstractThe chip maker?s response to the approaching end of CPU frequency scaling are multicore systems, which offer the same programming paradigm as traditional shared memory platforms but have different performance characteristics. This situation considerably increases the burden on library developers and strengthens the case for automatic performance tuning frameworks like Spiral, a program generator and optimizer for linear transforms such as the discrete Fourier transform (DFT). We present a shared memory extension of Spiral. The extension within Spiral consists of a rewriting system that manipulates the structure of transform algorithms to achieve load balancing and avoids false sharing, and of a backend to generate multithreaded code. Application to the DFT produces a novel class of algorithms suitable for multicore systems as validated by experimental results: we demonstrate a parallelization speed-up already for sizes that fit into L1 cache and compare favorably to other DFT libraries across all small and midsize DFTs and considered platforms. Franz Franchetti, Yevgen Voronenko, Markus Püschel |
SC | 2 |
| 2005 | Formal loop merging for signal transformsabstractA critical optimization in the domain of linear signal transforms, such as the discrete Fourier transform (DFT), is loop merging, which increases data locality and reuse and thus performance. In particular, this includes the conversion of shuffle operations into array reindexings. To date, loop merging is well understood only for the DFT, and only for Cooley-Tukey FFT based algorithms, which excludes DFT sizes divisible by large primes. In this paper, we present a formal loop merging framework for general signal transforms and its implementation within the SPIRAL code generator. The framework consists of Ε-SPL, a mathematical language to express loops and index mappings; a rewriting system to merge loops in Ε-SPL and a compiler that translates Ε-SPL into code. We apply the framework to DFT sizes that cannot be handled using only the Cooley-Tukey FFT and compare our method to FFTW 3.0.1 and the vendor library Intel MKL 7.2.1. Compared to FFTW our generated code is a factor of 2--4 faster under equal implementation conditions (same algorithms, same unrolling threshold). For some sizes we show a speed-up of a factor of 9 using Bluestein's algorithm. Further, we give a detailed comparison against the Intel vendor library MKL; our generated code is between 2 times faster and 4.5 times slower. Franz Franchetti, Yevgen Voronenko, Markus Püschel |
PLDI | 2 |
| 2005 | SPIRAL: Code Generation for DSP TransformsabstractFast changing, increasingly complex, and diverse computing platforms pose central problems in scientific computing: How to achieve, with reasonable effort, portable optimal performance? We present SPIRAL, which considers this problem for the performance-critical domain of linear digital signal processing (DSP) transforms. For a specified transform, SPIRAL automatically generates high-performance code that is tuned to the given platform. SPIRAL formulates the tuning as an optimization problem and exploits the domain-specific mathematical structure of transform algorithms to implement a feedback-driven optimizer. Similar to a human expert, for a specified transform, SPIRAL "intelligently" generates and explores algorithmic and implementation choices to find the best match to the computer's microarchitecture. The "intelligence" is provided by search and learning techniques that exploit the structure of the algorithm and implementation space to guide the exploration and optimization. SPIRAL generates high-performance code for a broad set of DSP transforms, including the discrete Fourier transform, other trigonometric transforms, filter transforms, and discrete wavelet transforms. Experimental results show that the code generated by SPIRAL competes with, and sometimes outperforms, the best available human tuned transform library code. Markus Püschel, José M. F. Moura, Jeremy Johnson 0001, David A. Padua, Manuela M. Veloso, Bryan Singer, Jianxin Xiong, Franz Franchetti, Aca Gacic, Yevgen Voronenko, Robert W. Johnson, Nick Rizzolo |
Proc. IEEE | 10 |
| 2004 | Automatic generation of implementations for DSP transforms on fused multiply-add architecturesabstractMany modern computer architectures feature fused multiply-add (FMA) instructions, which offer potentially faster performance for numerical applications. For DSP transforms, compilers can only generate FMA code to a very limited extent because optimal use of FMAs requires modifying the chosen algorithm. In this paper, we present a framework for automatically generating FMA code for every linear DSP transform, which we implemented as an extension to the SPIRAL code generation system. We show that for many transforms and transform sizes, our generated FMA code matches the best-known hand-derived FMA algorithms in terms of arithmetic cost. Further, we present actual runtime results that show the speed-up obtained by using FMA instructions. Yevgen Voronenko, Markus Püschel |
ICASSP (5) | 1 |