Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Randy Allen

dblp:61/5032 · DBLP profile ↗
← Back
7ranked-venue papers
5as first author
1since 2021 · last 2026
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 4 · 2 first-author · 1 since 2021Software engineering, systems software and programming languages · 4 · 3 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.

Software engineering, system software, and programming languages
4 papers
Compilers and program optimization · 100%
Computer architecture, parallel and distributed computing, and storage systems
3 papers
Parallel and multicore computing · 53% High-performance computing · 32% Processor architecture and microarchitecture · 16%

Topics — the 10 heaviest of 10, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Compilers and program optimization
vectorization
0.021988
Compiling C for Vectorization, Parallelization, and Inline Expansion · PLDI 1988
Automatic Translation of Fortran Programs to Vector Form · ACM Trans. Program. Lang. Syst. 1987
Compilers and program optimization › parallelization
automatic parallelization
0.021987
Automatic Translation of Fortran Programs to Vector Form · ACM Trans. Program. Lang. Syst. 1987
Automatic Decomposition of Scientific Programs for Parallel Execution · POPL 1987
Compilers and program optimization
register allocation
0.011992
Vector Register Allocation · IEEE Trans. Computers 1992
Compilers and program optimization
parallelization
0.011988
Compiling C for Vectorization, Parallelization, and Inline Expansion · PLDI 1988
Compilers and program optimization
dependence analysis
0.011987
Automatic Translation of Fortran Programs to Vector Form · ACM Trans. Program. Lang. Syst. 1987
Compilers and program optimization › parallelization › automatic parallelization
loop parallelization
0.011987
Automatic Decomposition of Scientific Programs for Parallel Execution · POPL 1987
Parallel and multicore computing
parallel program transformation
0.011987
Automatic Decomposition of Scientific Programs for Parallel Execution · POPL 1987
High-performance computing › supercomputer architecture
vector supercomputer
0.011992
Vector Register Allocation · IEEE Trans. Computers 1992
Compilers and program optimization › interprocedural optimization
inlining
0.011988
Compiling C for Vectorization, Parallelization, and Inline Expansion · PLDI 1988
Processor architecture and microarchitecture
vector processor
0.011987
Automatic Translation of Fortran Programs to Vector Form · ACM Trans. Program. Lang. Syst. 1987

Methods — techniques the papers use, named apart from their topics

program transformation · 0.0data dependence analysis · 0.0loop interchange · 0.0dependence analysis · 0.0vectorization · 0.0parallelization · 0.0inline expansion · 0.0
YearPublicationVenuePosition
2026 Ember: A Compiler for Embedding Operations on Decoupled Access-Execute Architectures
abstract
Decoupled Access-Execute (DAE) architectures separate memory accesses from computation in two specialized units. This design is becoming increasingly popular among hyperscalers to accelerate irregular embedding lookups in recommendation models. In this paper, we first broaden the scope by demonstrating the benefits of DAE architectures across a wider range of irregular embedding operations in several machine learning models. Then, we propose the Ember compiler to automatically compile all of these embedding operations to DAE architectures. Conversely from other DAE compilers, Ember features multiple intermediate representations specifically designed for different optimization levels. In this way, Ember can implement all optimizations to match the performance of hand-written code, unlocking the full potential of DAE architectures at scale.
Marco Siracusa, Olivia Hsu, Víctor Soria 0001, Joshua Randall 0001, Arnaud Grasset, Eric Biscondi, Douglas J. Joseph, Randy Allen, Fredrik Kjolstad, Miquel Moretó, Adrià Armejach
CGO8
1996 Opportunities and pitfalls in HDL-based system design
abstract
This panel discusses the complexities of system designs using textual Hardware Description Languages (HDLs) such as Verilog and VHDL. As the proliferation of circuits and systems design using HDLs continues questions arise as to whether HDL-based programming provides any real productivity gains in the design of complex integrated hardware. Are there are any alternatives, such as graphical or visual formalisms that are perhaps better suited for the task? We start the discussion by examining the relevant features of today's complex hardware systems and the requirements these impose on the modeling language and methodologies.
Rajesh K. Gupta 0001, Daniel Gajski, Randy Allen, Yatin Trivedi
ICCD3
1992 Vector Register Allocation
abstract
The problem of allocating vector registers on supercomputers is addressed in the context of compiling vector languages. Two subproblems must be solved to achieve good vector register allocation. First, the vector operations in the source program must be subdivided into sections that fit the hardware of the target machine. Second, the locality of reference of the vector operations must be improved via aggressive program transformations. Solutions to both of these problems, based on the use of novel aspects of data dependence, are presented. The techniques described extend naturally to scalar machines by observing that a scalar register is simply a vector register of length one.>
Randy Allen, Ken Kennedy
IEEE Trans. Computers1
1988 Compiling C for Vectorization, Parallelization, and Inline Expansion
abstract
Practical implementations of real languages are often an excellent way of testing the applicability of theoretical principles. Many stresses and strains arise from fitting practicalities, such as performance and standard compatibility, to theoretical models and methods. These stresses and strains are valuable sources of new research and insight, as well as an oft-needed check on the egos of theoreticians.
Randy Allen
PLDI1
1987 Automatic Decomposition of Scientific Programs for Parallel Execution
abstract
An algorithm for transforming sequential programs into equivalent parallel programs is presented. The method concentrates on finding loops whose separate iterations can be run in parallel without syn-chronization. Although a simple version of the method can be shown to be optimal, the problem of generating optimal code when loop interchange is employed is shown to be intractable. These methods are implemented in an experimental translation system developed at Rice University. 1.
Randy Allen, David Callahan, Ken Kennedy
POPL1
1987 Automatic Translation of Fortran Programs to Vector Form
abstract
The recent success of vector computers such as the Cray-1 and array processors such as those manufactured by Floating Point Systems has increased interest in making vector operations available to the FORTRAN programmer. The FORTRAN standards committee is currently considering a successor to FORTRAN 77, usually called FORTRAN 8x, that will permit the programmer to explicitly specify vector and array operations. Although FORTRAN 8x will make it convenient to specify explicit vector operations in new programs, it does little for existing code. In order to benefit from the power of vector hardware, existing programs will need to be rewritten in some language (presumably FORTRAN 8x) that permits the explicit specification of vector operations. One way to avoid a massive manual recoding effort is to provide a translator that discovers the parallelism implicit in a FORTRAN program and automatically rewrites that program in FORTRAN 8x. Such a translation from FORTRAN to FORTRAN 8x is not straightforward because FORTRAN DO loops are not always semantically equivalent to the corresponding FORTRAN 8x parallel operation. The semantic difference between these two constructs is precisely captured by the concept of dependence . A translation from FORTRAN to FORTRAN 8x preserves the semantics of the original program if it preserves the dependences in that program. The theoretical background is developed here for employing data dependence to convert FORTRAN programs to parallel form. Dependence is defined and characterized in terms of the conditions that give rise to it; accurate tests to determine dependence are presented; and transformations that use dependence to uncover additional parallelism are discussed.
Randy Allen, Ken Kennedy
ACM Trans. Program. Lang. Syst.1
1986 PTOOL : A Semi-Automatic Parallel Programming Assistant
Randy Allen, Donn Bäumgartner, Ken Kennedy, Allan Porterfield
ICPP1