Demo Data from EDBT 2026 / reviewers in the wild / expert
Erik R. Altman
dblp:75/5714 · also Erik Altman
· DBLP profile ↗
26ranked-venue papers
10as first author
4since 2021 · last 2024
0009-0001-0978-0360ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 15 · 4 first-author · 1 since 2021Software engineering, systems software and programming languages · 7 · 4 first-authorArtificial intelligence and machine learning · 2 · 1 first-author · 2 since 2021Graphics, computer vision, multimedia, augmented reality and games · 2 · 2 since 2021Applied, interdisciplinary, general and emerging computing · 2 · 2 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.
| Artificial intelligence
1 paper |
Graph learning · 87% Trustworthy machine learning · 13% | |
| Interdisciplinary, comprehensive, and emerging computing
1 paper |
Computational finance and economics · 100% | |
| Databases, data mining, and information retrieval
1 paper |
Data integration and cleaning · 100% | |
| Software engineering, system software, and programming languages
10 papers |
Compilers and program optimization · 55% Runtime systems and virtual machines · 44% Operating systems · 1% | |
| Computer architecture, parallel and distributed computing, and storage systems
8 papers |
Processor architecture and microarchitecture · 50% Performance modeling and evaluation · 30% Distributed systems · 9% | |
| Network and information security
1 paper |
Security and privacy of machine learning · 100% |
Topics — the 30 heaviest of 34, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Machine learning › Graph learning
graph neural network |
0.8 | 1 | 2024 | Provably Powerful Graph Neural Networks for Directed Multigraphs · AAAI 2024 |
Machine learning › Graph learning › graph analytics › graph mining
subgraph detection |
0.8 | 1 | 2024 | Provably Powerful Graph Neural Networks for Directed Multigraphs · AAAI 2024 |
Computational finance and economics › financial fraud detection
anti-money laundering |
0.7 | 1 | 2023 | Realistic Synthetic Financial Transactions for Anti-Money Laundering Models · NeurIPS 2023 |
Computational finance and economics
financial fraud detection |
0.7 | 1 | 2023 | Realistic Synthetic Financial Transactions for Anti-Money Laundering Models · NeurIPS 2023 |
Data integration and cleaning › data generation
synthetic data generation |
0.7 | 1 | 2023 | Realistic Synthetic Financial Transactions for Anti-Money Laundering Models · NeurIPS 2023 |
Performance modeling and evaluation
bottleneck analysis |
0.1 | 1 | 2010 | Performance analysis of idle programs · OOPSLA 2010 |
Runtime systems and virtual machines › dynamic compilation
just-in-time compilation |
0.1 | 2 | 2007 | Efficient Register Mapping and Allocation in LaTTe, an Open-Source Java Just-in-Time Compiler · IEEE Trans. Parallel Distributed Syst. 2007 Advances and future challenges in binary translation and optimization · Proc. IEEE 2001 |
Compilers and program optimization
register allocation |
0.1 | 3 | 2007 | Efficient Register Mapping and Allocation in LaTTe, an Open-Source Java Just-in-Time Compiler · IEEE Trans. Parallel Distributed Syst. 2007 A Framework for Resource-Constrained Rate-Optimal Software Pipelining · IEEE Trans. Parallel Distributed Syst. 1996 Minimizing register requirements under resource-constrained rate-optimal software pipelining · MICRO 1994 |
Compilers and program optimization › instruction scheduling
software pipelining |
0.1 | 4 | 1996 | A Framework for Resource-Constrained Rate-Optimal Software Pipelining · IEEE Trans. Parallel Distributed Syst. 1996 Co-Scheduling Hardware and Software Pipelines · HPCA 1996 Scheduling and Mapping: Software Pipelining in the Presence of Structural Hazards · PLDI 1995 |
Runtime systems and virtual machines › binary translation
dynamic binary translation |
0.1 | 2 | 2001 | Advances and future challenges in binary translation and optimization · Proc. IEEE 2001 Optimizations and Oracle Parallelism with Dynamic Translation · MICRO 1999 |
Processor architecture and microarchitecture › instruction-level parallelism
VLIW |
0.0 | 2 | 2001 | Dynamic Binary Translation and Optimization · IEEE Trans. Computers 2001 DAISY: Dynamic Compilation for 100% Architectural Compatibility · ISCA 1997 |
Processor architecture and microarchitecture
instruction set architecture |
0.0 | 2 | 2001 | Dynamic Binary Translation and Optimization · IEEE Trans. Computers 2001 Advances and future challenges in binary translation and optimization · Proc. IEEE 2001 |
Runtime systems and virtual machines
garbage collection |
0.0 | 1 | 2010 | Performance analysis of idle programs · OOPSLA 2010 |
Compilers and program optimization
binary optimization |
0.0 | 1 | 2001 | Advances and future challenges in binary translation and optimization · Proc. IEEE 2001 |
Runtime systems and virtual machines
binary translation |
0.0 | 1 | 2001 | Advances and future challenges in binary translation and optimization · Proc. IEEE 2001 |
Runtime systems and virtual machines
dynamic compilation |
0.0 | 1 | 2001 | Dynamic Binary Translation and Optimization · IEEE Trans. Computers 2001 |
Compilers and program optimization › dynamic optimization
profile-guided optimization |
0.0 | 1 | 2001 | Dynamic Binary Translation and Optimization · IEEE Trans. Computers 2001 |
Processor architecture and microarchitecture › binary translation
dynamic binary translation |
0.0 | 1 | 2001 | Dynamic Binary Translation and Optimization · IEEE Trans. Computers 2001 |
Processor architecture and microarchitecture
instruction-level parallelism |
0.0 | 2 | 1999 | Optimizations and Oracle Parallelism with Dynamic Translation · MICRO 1999 A Framework for Resource-Constrained Rate-Optimal Software Pipelining · IEEE Trans. Parallel Distributed Syst. 1996 |
Compilers and program optimization
instruction scheduling |
0.0 | 2 | 1995 | Scheduling and Mapping: Software Pipelining in the Presence of Structural Hazards · PLDI 1995 Minimizing register requirements under resource-constrained rate-optimal software pipelining · MICRO 1994 |
Compilers and program optimization
compiler back end |
0.0 | 1 | 2007 | Efficient Register Mapping and Allocation in LaTTe, an Open-Source Java Just-in-Time Compiler · IEEE Trans. Parallel Distributed Syst. 2007 |
Compilers and program optimization › parallelization
dynamic parallelization |
0.0 | 1 | 1997 | DAISY: Dynamic Compilation for 100% Architectural Compatibility · ISCA 1997 |
Compilers and program optimization › instruction scheduling
instruction-level parallelism |
0.0 | 1 | 1997 | DAISY: Dynamic Compilation for 100% Architectural Compatibility · ISCA 1997 |
Processor architecture and microarchitecture
binary translation |
0.0 | 1 | 1997 | DAISY: Dynamic Compilation for 100% Architectural Compatibility · ISCA 1997 |
Reconfigurable computing and FPGAs
dynamic compilation |
0.0 | 1 | 1997 | DAISY: Dynamic Compilation for 100% Architectural Compatibility · ISCA 1997 |
Processor architecture and microarchitecture › pipelining
pipeline design |
0.0 | 1 | 1996 | Co-Scheduling Hardware and Software Pipelines · HPCA 1996 |
Parallel and multicore computing › task scheduling
pipeline scheduling |
0.0 | 1 | 1996 | Co-Scheduling Hardware and Software Pipelines · HPCA 1996 |
Compilers and program optimization › register allocation
register pressure reduction |
0.0 | 1 | 1994 | Minimizing register requirements under resource-constrained rate-optimal software pipelining · MICRO 1994 |
Operating systems › virtualization
hypervisor |
0.0 | 1 | 1997 | DAISY: Dynamic Compilation for 100% Architectural Compatibility · ISCA 1997 |
Electronic design automation › high-level synthesis › scheduling
resource-constrained scheduling |
0.0 | 1 | 1994 | Minimizing register requirements under resource-constrained rate-optimal software pipelining · MICRO 1994 |
Methods — techniques the papers use, named apart from their topics
machine learning · 2.0agent-based simulation · 2.0reverse message passing · 0.8port numbering · 0.8message passing · 0.8ego IDs · 0.8sampling · 0.2expert system · 0.2declarative rules · 0.2dynamic translation · 0.1register mapping · 0.1register allocation · 0.1virtual device emulation · 0.1runtime profiling · 0.1just-in-time compilation · 0.1instruction-level parallelism extraction · 0.1instruction-level parallelism optimization · 0.0parallelization · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2024 | Provably Powerful Graph Neural Networks for Directed MultigraphsabstractThis paper analyses a set of simple adaptations that transform standard message-passing Graph Neural Networks (GNN) into provably powerful directed multigraph neural networks. The adaptations include multigraph port numbering, ego IDs, and reverse message passing. We prove that the combination of these theoretically enables the detection of any directed subgraph pattern. To validate the effectiveness of our proposed adaptations in practice, we conduct experiments on synthetic subgraph detection tasks, which demonstrate outstanding performance with almost perfect results. Moreover, we apply our proposed adaptations to two financial crime analysis tasks. We observe dramatic improvements in detecting money laundering transactions, improving the minority-class F1 score of a standard message-passing GNN by up to 30%, and closely matching or outperforming tree-based and GNN baselines. Similarly impressive results are observed on a real-world phishing detection dataset, boosting three standard GNNs’ F1 scores by around 15% and outperforming all baselines. An extended version with appendices can be found on arXiv: https://arxiv.org/abs/2306.11586. Beni Egressy, Luc von Niederhäusern, Jovan Blanusa, Erik R. Altman, Roger Wattenhofer, Kubilay Atasu |
AAAI | 4 |
| 2023 | Realistic Synthetic Financial Transactions for Anti-Money Laundering ModelsabstractWith the widespread digitization of finance and the increasing popularity of cryptocurrencies, the sophistication of fraud schemes devised by cybercriminals is growing. Money laundering -- the movement of illicit funds to conceal their origins -- can cross bank and national boundaries, producing complex transaction patterns. The UN estimates 2-5\% of global GDP or \$0.8 - \$2.0 trillion dollars are laundered globally each year. Unfortunately, real data to train machine learning models to detect laundering is generally not available, and previous synthetic data generators have had significant shortcomings. A realistic, standardized, publicly-available benchmark is needed for comparing models and for the advancement of the area.To this end, this paper contributes a synthetic financial transaction dataset generator and a set of synthetically generated AML (Anti-Money Laundering) datasets. We have calibrated this agent-based generator to match real transactions as closely as possible and made the datasets public. We describe the generator in detail and demonstrate how the datasets generated can help compare different machine learning models in terms of their AML abilities. In a key way, using synthetic data in these comparisons can be even better than using real data: the ground truth labels are complete, whilst many laundering transactions in real data are never detected. Erik R. Altman, Jovan Blanusa, Luc von Niederhäusern, Beni Egressy, Andreea Anghel, Kubilay Atasu |
NeurIPS | 1 |
| 2023 | Anomaly Detection on IBM Z Mainframes: Performance Analysis and MoreabstractAnomalous events can signal a variety of problems in any system. As such, robust, fast detection of anomalies is important so issues can be fixed before they cascade to create larger problems. In this paper we focus on IBM Z mainframes, although most of the problems addressed and techniques used are broadly applicable. For example, anomalies can signal issues such as disk malfunctions, slow or unresponsive modules, crashes and latent bugs, lock contention, excessive retries, the need to allocate more resources to reduce contention, etc. Although there are specific techniques for addressing individual issues, anomaly detection is useful in its broad spectrum utility, and its ability to identify combinations of problems for which there may not be a specific approach implemented. In addition, anomaly detection serves as a backstop: truly anomalous events suggest that normal mechanisms did not work. Erik R. Altman, Benjamin Segal |
SYSTOR | 1 |
| 2021 | Tabular Transformers for Modeling Multivariate Time SeriesabstractTabular datasets are ubiquitous in data science applications. Given their importance, it seems natural to apply state-of-the-art deep learning algorithms in order to fully unlock their potential. Here we propose neural network models that represent tabular time series that can optionally leverage their hierarchical structure. This results in two architectures for tabular time series: one for learning representations that is analogous to BERT and can be pre-trained end-to-end and used in downstream tasks, and one that is akin to GPT and can be used for generation of realistic synthetic tabular sequences. We demonstrate our models on two datasets: a synthetic credit card transaction dataset, where the learned representations are used for fraud detection and synthetic data generation, and on a real pollution dataset, where the learned encodings are used to predict atmospheric pollutant concentrations. Code and data are available at https://github.com/IBM/TabFormer. Inkit Padhi, Yair Schiff, Igor Melnyk, Mattia Rigotti, Youssef Mroueh, Pierre L. Dognin, Jerret Ross, Ravi Nair, Erik R. Altman |
ICASSP | 9 |
| 2014 | Predicting GPU Performance from CPU Runs Using Machine LearningabstractGraphics processing units (GPUs) can deliver considerable performance gains over general purpose processors. However, GPU performance improvement vary considerably across applications. Porting applications to GPUs by rewriting code with GPU-specific languages requires significant effort. In consequence, it is desirable to predict which applications would benefit most before porting to the GPU. This paper shows that machine learning techniques can build accurate predictive models for GPU acceleration. This study presents an approach which applies supervised learning algorithms to infer predictive models, based on dynamic profile data collected via instrumented runs on general purpose processors. For a set of 18 parallel benchmarks, the results show that a small set of easily-obtainable features can predict the magnitude of GPU speedups on two different high-end GPUs, with accuracies varying between 77% and 90%, depending on the prediction mechanism and scenario. For already-ported applications, similar models can predict the best device to run an application with an effective accuracy of 91%. Ioana Baldini, Stephen J. Fink, Erik R. Altman |
SBAC-PAD | 3 |
| 2013 | The Liquid Metal Blokus Duo DesignabstractThis paper describes the Liquid Metal entry in the 2013 ICFPT Design Competition. The Liquid Metal system provides a high-level language called Lime and a toolchain targeting FPGAs. Lime allowed us to use standard software development processes for programming, debugging, and performance tuning our FPGA design. We believe such iteration and refinement are far more challenging with low-level languages and design tools commonly used for FPGA development. Erik R. Altman, Joshua S. Auerbach, David F. Bacon, Ioana Baldini, Perry Cheng, Stephen J. Fink, Rodric M. Rabbah |
FPT | 1 |
| 2013 | Preface
Erik R. Altman, Weisong Shi |
J. Comput. Sci. Technol. | 1 |
| 2011 | The language, optimizer, and tools messabstractFor many years, new languages promised higher performance in addition to other desirable characteristics such as higher productivity, better static checking, better reusability and composability, etc. However, in practice, virtually no new languages win in performance over historic languages like C and Fortran. Why? Higher level semantics were supposed to provide additional information so that optimizers could perform better analyses and so that conservative analyses could be less conservative. Erik R. Altman |
CGO | 1 |
| 2010 | Performance analysis of idle programsabstractThis paper presents an approach for performance analysis of modern enterprise-class server applications. In our experience, performance bottlenecks in these applications differ qualitatively from bottlenecks in smaller, stand-alone systems. Small applications and benchmarks often suffer from CPU-intensive hot spots. In contrast, enterprise-class multi-tier applications often suffer from problems that manifest not as hot spots, but as idle time, indicating a lack of forward motion. Many factors can contribute to undesirable idle time, including locking problems, excessive system-level activities like garbage collection, various resource constraints, and problems driving load.We present the design and methodology for WAIT, a tool to diagnosis the root cause of idle time in server applications. Given lightweight samples of Java activity on a single tier, the tool can often pinpoint the primary bottleneck on a multi-tier system. The methodology centers on an informative abstraction of the states of idleness observed in a running program. This abstraction allows the tool to distinguish, for example, between hold-ups on a database machine, insufficient load, lock contention in application code, and a conventional bottleneck due to a hot method. To compute the abstraction, we present a simple expert system based on an extensible set of declarative rules.WAIT can be deployed on the fly, without modifying or even restarting the application. Many groups in IBM have applied the tool to diagnosis performance problems in commercial systems, and we present a number of examples as case studies. Erik R. Altman, Matthew Arnold, Stephen J. Fink, Nick Mitchell |
OOPSLA | 1 |
| 2007 | Efficient Register Mapping and Allocation in LaTTe, an Open-Source Java Just-in-Time Compiler
Byung-Sun Yang, Junpyo Lee, SeungIl Lee, Seongbae Park, Yoo C. Chung, Suhyun Kim 0001, Kemal Ebcioglu, Erik R. Altman, Soo-Mook Moon |
IEEE Trans. Parallel Distributed Syst. | 8 |
| 2005 | Panel Discussion: Architectures for the Future
Erik R. Altman |
ISPASS | 1 |
| 2002 | Precise Exception Semantics in Dynamic Compilation
Michael Gschwind, Erik R. Altman |
CC | 2 |
| 2001 | Advances and future challenges in binary translation and optimizationabstractBinary translation and optimization have achieved a high profile in recent years. Binary translation has several potential attractions. While still in its early stages, could binary translation offer a new way to design processors, i.e. is it a disruptive technology? This paper discusses this question, examines some future possibilities for binary translation, and then gives an overview of selected projects (DAISY, Crusoe, Dynamo and LaTTe). One future possibility for binary translation is the Virtual IT Shop. Binary translation offers a possible solution for better utilization of computational resources as services over the World Wide Web. The Internet is radically changing the software landscape, and is fostering platform independence and interoperability. Along the lines of software convergence, recent advances in binary JIT (just-in-time) optimizations also present the future possibility of a convergence virtual machine (CVM). CVM aims to address research challenges in allowing the same standard operating system and application object code to run on different hardware platforms, through state-of-the-art JIT compilation and virtual device emulation. Erik R. Altman, Kemal Ebcioglu, Michael Gschwind, Sumedh Sathaye |
Proc. IEEE | 1 |
| 2001 | Dynamic Binary Translation and OptimizationabstractWe describe a VLIW architecture designed specifically as a target for dynamic compilation of an existing instruction set architecture. This design approach offers the simplicity and high performance of statically scheduled architectures, achieves compatibility with an established architecture, and makes use of dynamic adaptation. Thus, the original architecture is implemented using dynamic compilation, a process we refer to as DAISY (Dynamically Architected Instruction Set from Yorktown). The dynamic compiler exploits runtime profile information to optimize translations so as to extract instruction level parallelism. This paper reports different design trade-offs in the DAISY system and their impact on final system performance. The results show high degrees of instruction parallelism with reasonable translation overhead and memory usage. Kemal Ebcioglu, Erik R. Altman, Michael Gschwind, Sumedh W. Sathaye |
IEEE Trans. Computers | 2 |
| 2000 | A Theory for Software-Hardware Co-Scheduling for ASIPs and Embedded ProcessorsabstractExploiting instruction-level parallelism (ILP) is extremely important for achieving high performance in application specific instruction set processors (ASIPs) and embedded processors. Existing techniques deal with either scheduling hardware pipelines to obtain higher throughput or software pipeline-an instruction scheduling technique for iterative computation-loops for exploiting greater ILP. We integrate these techniques to co-schedule hardware and software pipelines to achieve greater instruction throughput. In this paper, we develop the underlying theory of co-scheduling, called the Modulo-Scheduled Pipeline (or MS-Pipeline) theory. More specifically, we establish the necessary and sufficient condition for achieving the maximum throughput in a given pipeline operating under module scheduling. Further, we establish a sufficient condition to achieve a specified throughput, based on which we also develop a methodology for designing the hardware pipelines that achieve such a throughput. R. Govindarajan, Erik R. Altman, Guang R. Gao |
ASAP | 2 |
| 2000 | Binary translation and architecture convergence issues for IBM system/390abstractWe describe the design issues in an implementation of the ESA/390 architecture based on binary translation to a very long instruction word (VLIW) processor. During binary translation, complex ESA/390 instructions are decomposed into instruction “primitives” which are then scheduled onto a wide-issue machine. The aim is to achieve high instruction level parallelism due to the increased scheduling and optimization opportunities which can be exploited by binary translation software, combined with the efficiency of long instruction word architectures. A further aim is to study the feasibility of a common execution platform for different instruction set architectures, such as ESA/390, RS?6000, AS/400 and the Java Virtual Machine, so that multiple systems can be built around a common execution platform. Michael Gschwind, Kemal Ebcioglu, Erik R. Altman, Sumedh W. Sathaye |
ICS | 3 |
| 1999 | Execution-Based Scheduling for VLIW Architectures
Kemal Ebcioglu, Erik R. Altman, Sumedh W. Sathaye, Michael Gschwind |
Euro-Par | 2 |
| 1999 | Optimizations and Oracle Parallelism with Dynamic TranslationabstractWe describe several optimizations which can be employed in a dynamic binary translation (DBT) system, where low compilation/translation overhead is essential. These optimizations achieve a high degree of ILP, sometimes even surpassing a static compiler employing more sophisticated, and more time-consuming algorithms. We present results in which we employ these optimizations in a dynamic binary translation system capable of computing oracle parallelism. Kemal Ebcioglu, Erik R. Altman, Sumedh W. Sathaye, Michael Gschwind |
MICRO | 2 |
| 1998 | An eight-issue tree-VLIW processor for dynamic binary translationabstractPresented is an 8-issue tree-VLIW processor designed for efficient support of dynamic binary translation. This processor confronts two primary problems faced by VLIW architectures: binary compatibility and branch performance. Binary compatibility with existing architectures is achieved through dynamic binary translation which translates and schedules PowerPC instructions to take advantage of the available instruction level parallelism. Efficient branch performance is achieved through tree instructions that support multi-way path and branch selection within a single VLIW instruction. The processor architecture is described, along with design details of the branch unit, pipeline, register file and memory hierarchy for a 0.25 micron standard-cell design. Performance simulations show that the simplicity of a VLIW architecture allows a wide-issue processor to operate at high frequencies. Kemal Ebcioglu, Jason Fritts, Stephen V. Kosonocky, Michael Gschwind, Erik R. Altman, Krishnan Kailas, Terry Bright |
ICCD | 5 |
| 1998 | A Unified Framework for Instruction Scheduling and Mapping for Function Units with Structural Hazards
Erik R. Altman, R. Govindarajan, Guang R. Gao |
J. Parallel Distributed Comput. | 1 |
| 1997 | DAISY: Dynamic Compilation for 100% Architectural CompatibilityabstractAlthough VLIW architectures offer the advantages of simplicity of design and high issue rates, a major impediment to their use is that they are not compatible with the existing software base. We describe new simple hardware features for a VLIW machine we call DAISY (DynamicallyArchitectedInstructionSet fromYorktown). DAISY is specifically intended to emulate existing architectures, so that all existing software for an old architecture (including operating system kernel code) runs without changes on the VLIW. Each time a new fragment of code is executed for the first time, the code is translated to VLIW primitives, parallelized and saved in a portion of main memory not visible to the old architecture, by a Virtual Machine Monitor (software) residing in read only memory. Subsequent executions of the same fragment do not require a translation (unless cast out). We discuss the architectural requirements for such a VLIW, to deal with issues including self-modifying code, precise exceptions, and aggressive reordering of memory references in the presence of strong MP consistency and memory mapped I/O. We have implemented the dynamic parallelization algorithms for the PowerPC architecture. The initial results show high degrees of instruction level parallelism with reasonable translation overhead and memory usage. Kemal Ebcioglu, Erik R. Altman |
ISCA | 2 |
| 1996 | Co-Scheduling Hardware and Software PipelinesabstractIn this paper we propose co-scheduling, a framework for simultaneous design of hardware pipelines structures and software-pipelined schedules. Two important components of the co-scheduling framework are: (1) An extension to the analysis of hardware pipeline design that meets the needs of periodic (or software pipelined) schedules. Reservation tables, forbidden latencies, collision vectors, and state diagrams from classical pipeline theory are revisited and extended to solve the new problems. (2) An efficient method, based on the above extension of pipeline analysis, to perform (a) software pipeline scheduling and (b) hardware pipeline reconfiguration which are mutually "compatible". The proposed method has been implemented and preliminary experimental results for 1008 kernel loops are reported. Co-scheduling successfully obtains a schedule for 95% of these loops. The median time to obtain these schedules is 0.25 seconds on a Sparc-20. R. Govindarajan, Erik R. Altman, Guang R. Gao |
HPCA | 2 |
| 1996 | A Framework for Resource-Constrained Rate-Optimal Software PipeliningabstractThe rapid advances in high-performance computer architecture and compilation techniques provide both challenges and opportunities to exploit the rich solution space of software pipelined loop schedules. In this paper, we develop a framework to construct a software pipelined loop schedule which runs on the given architecture (with a fixed number of processor resources) at the maximum possible iteration rate (a la rate-optimal) while minimizing the number of buffers-a close approximation to minimizing the number of registers. The main contributions of this paper are: First, we demonstrate that such problem can be described by a simple mathematical formulation with precise optimization objectives under a periodic linear scheduling framework. The mathematical formulation provides a clear picture which permits one to visualize the overall solution space (for rate-optimal schedules) under different sets of constraints. Secondly, we show that a precise mathematical formulation and its solution does make a significant performance difference. We evaluated the performance of our method against three leading contemporary heuristic methods. Experimental results show that the method described in this paper performed significantly better than these methods. The techniques proposed in this paper are useful in two different ways: 1) As a compiler option which can be used in generating faster schedules for performance-critical loops (if the interested users are willing to trade the cost of longer compile time with faster runtime). 2) As a framework for compiler writers to evaluate and improve other heuristics-based approaches by providing quantitative information as to where and how much their heuristic methods could be further improved. R. Govindarajan, Erik R. Altman, Guang R. Gao |
IEEE Trans. Parallel Distributed Syst. | 2 |
| 1995 | Scheduling and Mapping: Software Pipelining in the Presence of Structural HazardsabstractRecently, software pipelining methods based on an ILP (Integer Linear Programming) framework have been successfully applied to derive rate-optimal schedules for architectures involving clean pipelines - pipelines without structural hazards. The problem for architectures beyond such clean pipelines remains open. One challenge is how, under a unified ILP framework, to simultaneously represent resource constraints for unclean pipelines, and the assignment or mapping of operations from a loop to those pipelines. In this paper we provide a framework which does exactly this, and in addition constructs rate-optimal software pipelined schedules. The proposed formulation and a solution method have been implemented and tested on a set of 1006 loops taken from various scientific and integer benchmark suites. The formulation found a rate-optimal schedule for 75% of the loops, and required a median time of only 2 seconds per loop on a Sparc 10/30. Erik R. Altman, R. Govindarajan, Guang R. Gao |
PLDI | 1 |
| 1994 | Minimizing register requirements under resource-constrained rate-optimal software pipeliningabstractIn this paper we address the following software pipelining problem: given a loop and a machine architecture with a fixed number of processor resources (e.g. function units), how can one construct a software-pipelined schedule which runs on the given architecture at the maximum possible iteration rate (a` la rate-optimal) while minimizing the number of registers? R. Govindarajan, Erik R. Altman, Guang R. Gao |
MICRO | 2 |
| 1992 | A Register Allocation Framework Based on Hierarchical Cyclic Interval Graphs
Laurie J. Hendren, Guang R. Gao, Erik R. Altman, Chandrika Mukerji |
CC | 3 |