Demo Data from SIGIR 2026 / reviewers in the wild / expert
Alvin M. Despain
dblp:50/3832
· DBLP profile ↗
40ranked-venue papers
4as first author
0since 2021 · last 2006
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 38 · 4 first-authorSoftware engineering, systems software and programming languages · 7 · 1 first-authorArtificial intelligence and machine learning · 1Graphics, computer vision, multimedia, augmented reality and games · 1Applied, 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
24 papers |
Processor architecture and microarchitecture · 44% Electronic design automation · 39% Energy-efficient computing · 4% | |
| Software engineering, system software, and programming languages
6 papers |
Compilers and program optimization · 100% |
Topics — the 30 heaviest of 55, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Electronic design automation
logic synthesis |
0.1 | 5 | 1998 | Low-power state assignment targeting two- and multilevel logic implementations · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1998 A Fast State Assignment Procedure for Large FSMs · DAC 1995 Power efficient technology decomposition and mapping under an extended power consumption model · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1994 |
Processor architecture and microarchitecture
branch prediction |
0.0 | 3 | 1994 | Minimizing branch misprediction penalties for superpipelined processors · MICRO 1994 Branch with Masked Squashing in Superpipelined Processors · ISCA 1994 Prophetic branches: a branch architecture for code compaction and efficient execution · MICRO 1993 |
Processor architecture and microarchitecture
instruction set architecture |
0.0 | 3 | 1995 | Synthesis of application specific instruction sets · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1995 Synthesis of Instruction Sets for Pipelined Microprocessors · DAC 1994 Fast Prolog with an Extended General Purpose Architecture · ISCA 1990 |
Electronic design automation
high-level synthesis |
0.0 | 3 | 1995 | Synthesis of application specific instruction sets · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1995 High Level Synthesis of Pipelined Instruction Set Processors and Back-End Compilers · DAC 1992 Synthesis of Instruction Sets for Pipelined Microprocessors · DAC 1994 |
Processor architecture and microarchitecture › instruction set architecture › instruction set design
instruction set synthesis |
0.0 | 2 | 1995 | Synthesis of application specific instruction sets · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1995 Synthesis of Instruction Sets for Pipelined Microprocessors · DAC 1994 |
Electronic design automation › logic synthesis › technology mapping
low-power technology mapping |
0.0 | 2 | 1994 | Power efficient technology decomposition and mapping under an extended power consumption model · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1994 Technology Decomposition and Mapping Targeting Low Power Dissipation · DAC 1993 |
Processor architecture and microarchitecture
pipelining |
0.0 | 2 | 1994 | Branch with Masked Squashing in Superpipelined Processors · ISCA 1994 Pipeline and Parallel-Pipeline FFT Processors for VLSI Implementations · IEEE Trans. Computers 1984 |
Integrated circuit design › digital circuit design
finite state machine |
0.0 | 1 | 1995 | A Fast State Assignment Procedure for Large FSMs · DAC 1995 |
Interconnection networks and networks-on-chip
graph embedding |
0.0 | 1 | 1995 | A Fast State Assignment Procedure for Large FSMs · DAC 1995 |
Electronic design automation › logic synthesis
state assignment |
0.0 | 1 | 1995 | A Fast State Assignment Procedure for Large FSMs · DAC 1995 |
Processor architecture and microarchitecture › branch prediction
branch misprediction penalty |
0.0 | 1 | 1994 | Minimizing branch misprediction penalties for superpipelined processors · MICRO 1994 |
Electronic design automation › logic synthesis › switching theory
finite state machine analysis |
0.0 | 1 | 1994 | Exact and Approximate Methods for Calculating Signal and Transition Probabilities in FSMs · DAC 1994 |
Electronic design automation
hardware verification and test |
0.0 | 1 | 1994 | Exact and Approximate Methods for Calculating Signal and Transition Probabilities in FSMs · DAC 1994 |
Electronic design automation › hardware verification and test
signal probability computation |
0.0 | 1 | 1994 | Exact and Approximate Methods for Calculating Signal and Transition Probabilities in FSMs · DAC 1994 |
Parallel and multicore computing › parallel computing › parallel programming languages
parallel logic programming |
0.0 | 2 | 1990 | The Performance of Parallel Prolog Programs · IEEE Trans. Computers 1990 Performance Studies of a Parallel Prolog Architecture · ISCA 1987 |
Processor architecture and microarchitecture › branch handling
branch architecture |
0.0 | 1 | 1993 | Prophetic branches: a branch architecture for code compaction and efficient execution · MICRO 1993 |
Processor architecture and microarchitecture
instruction-level parallelism |
0.0 | 1 | 1993 | An extended classification of inter-instruction dependency and its application in automatic synthesis of pipelined processors · MICRO 1993 |
Processor architecture and microarchitecture › pipelining
instruction pipeline |
0.0 | 1 | 1993 | Prophetic branches: a branch architecture for code compaction and efficient execution · MICRO 1993 |
Energy-efficient computing
low-power design |
0.0 | 1 | 1993 | Technology Decomposition and Mapping Targeting Low Power Dissipation · DAC 1993 |
Processor architecture and microarchitecture › exception handling
precise interrupts |
0.0 | 1 | 1993 | The 16-fold way: a microparallel taxonomy · MICRO 1993 |
Processor architecture and microarchitecture › out-of-order execution
register renaming |
0.0 | 1 | 1993 | The 16-fold way: a microparallel taxonomy · MICRO 1993 |
Processor architecture and microarchitecture › instruction set architecture
instruction set design |
0.0 | 1 | 1991 | Viewing Instruction Set Design as an Optimization Problem · MICRO 1991 |
Compilers and program optimization
instruction scheduling |
0.0 | 1 | 1995 | Synthesis of application specific instruction sets · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1995 |
Memory systems
cache coherence |
0.0 | 1 | 1986 | Multiprocessor Cache Synchronization: Issues, Innovations, Evolution · ISCA 1986 |
Electronic design automation
physical design |
0.0 | 1 | 1986 | Delay reduction using simulated annealing · DAC 1986 |
Parallel and multicore computing
synchronization |
0.0 | 1 | 1986 | Multiprocessor Cache Synchronization: Issues, Innovations, Evolution · ISCA 1986 |
Electronic design automation › circuit sizing
transistor sizing |
0.0 | 1 | 1986 | Delay reduction using simulated annealing · DAC 1986 |
Mathematical optimization › metaheuristic optimization
simulated annealing |
0.0 | 1 | 1986 | Delay reduction using simulated annealing · DAC 1986 |
Electronic design automation
power estimation |
0.0 | 1 | 1994 | Exact and Approximate Methods for Calculating Signal and Transition Probabilities in FSMs · DAC 1994 |
Electronic design automation › power estimation
probabilistic power estimation |
0.0 | 1 | 1994 | Exact and Approximate Methods for Calculating Signal and Transition Probabilities in FSMs · DAC 1994 |
Methods — techniques the papers use, named apart from their topics
simulated annealing · 0.0comparison · 0.0simulation · 0.0modified scheduling · 0.0binary tuple modeling · 0.0NAND decomposition · 0.0state encoding · 0.0power cost model · 0.0hypercube mapping · 0.0graph embedding · 0.0performance evaluation · 0.0modeling · 0.0optimization metric · 0.0microoperation compaction · 0.0timing analysis · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2006 | Design and evaluation of a hierarchical decoupled architecture
Won Woo Ro, Stephen P. Crago, Alvin M. Despain, Jean-Luc Gaudiot |
J. Supercomput. | 3 |
| 1998 | Low-power state assignment targeting two- and multilevel logic implementationsabstractThe problem of minimizing power consumption during the state encoding of a finite-state machine is addressed. A new power cost model for state encoding is proposed, and encoding techniques that minimize this power cost for two- and multilevel logic implementations are described. These techniques are compared with those that minimize area or the switching activity at the present state bits. Experimental results show significant improvements. Chi-Ying Tsui, Massoud Pedram, Alvin M. Despain |
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. | 3 |
| 1997 | State assignment based on two-dimensional placement and hypercube mapping
Shihming Liu, Massoud Pedram, Alvin M. Despain |
Integr. | 3 |
| 1996 | Correction to "Power Estimation Methods for Sequential Logic Circuits" [Correspondence]
Chi-Ying Tsui, José Monteiro 0001, Massoud Pedram, Srini Devadas, Alvin M. Despain, Bill Lin 0001 |
IEEE Trans. Very Large Scale Integr. Syst. | 5 |
| 1995 | A Fast State Assignment Procedure for Large FSMsabstractThis paper addresses the problem of state assignment for large Finite State Machines (FSM).This is an important problem in the high performance digital system design where added functionality often comes at the expense of a larger (and slower) FSM to control the system.We present a new method to solve the graph embedding problem which is the main step in the state assignment process.The basic idea is to place the state adjacency graph in a two-dimensional grid while minimizing the total wire length.The grid is then mapped into an n-dimensional hypercube while nearly preserving the adjacency relations that is with dilation at most 2. Experimental results are presented and compared with those of NOVA. Shihming Liu, Massoud Pedram, Alvin M. Despain |
DAC | 3 |
| 1995 | PLATO P: PLA Timing Optimization by PartitioningabstractThis paper addresses the problem of partitioning a large PLA into a number of smaller PLA's (sub-PLA's) such that the total area of these sub-PLA's is minimum and the cycle time of the partitioned circuit is minimized. First, we describe an iterative improvement method that deals with the case that sub-PLA's assume arbitrary sizes. Second, we present a partitioning technique based on fuzzy logic that deals with the case that the sizes of the sub-PLA's are fixed. Finally, we describe a method that considers not only delay through each sub-PLA, but also loading of sub-PLA's on the stage that is driving them. These techniques have been implemented and significantly outperformed conventional PLA partitioning schemes. Shihming Liu, Massoud Pedram, Alvin M. Despain |
ISCAS | 3 |
| 1995 | 190-MHz CMOS 4-Kbyte Pipelined CachesabstractIn this paper we describe the design and implementation of a 190-MHz pipelined 4-Kbyte instruction and data cache. The caches are designed in 1.0-µm CMOS and measure 0.78 x 0.47 cm 2 . This paper describes the microarchitecture, cache timing, circuit implementation, and layout of both the instruction and the data cache. The key features of these caches are pipelined execution and the use of dynamic single-phase clock logic. We discuss the interface of this cache with the processor core and the off-chip controller. This paper also describes the pipelined structure of the cache and the miss detection and handling logic. Published in ISCAS `95, Seattle 1 ABSTRACT In this paper we describe the design and implementation of a 190-MHz pipelined 4-Kbyte instruction and data cache. The caches are designed in 1.0-µm CMOS and measure 0.78 x 0.47 cm 2 . This paper describes the microarchitecture, cache timing, circuit implementation, and layout of both the instruction and the data cache. T... Apoorv Srivastava, Yong-Seon Koh, Barton Sano, Alvin M. Despain |
ISCAS | 4 |
| 1995 | Synthesis of application specific instruction setsabstractIn instruction set serves as the interface between hardware and software in a computer system. In an application specific environment, the system performance can be improved by designing an instruction set that matches the characteristics of hardware and the application. We present a systematic approach to generate application-specific instruction sets so that software applications can be efficiently mapped to a given pipelined micro-architecture. The approach synthesizes instruction sets from application benchmarks, given a machine model, an objective function, and a set of design constraints. In addition, assembly code is generated to show how the benchmarks can be compiled with the synthesized instruction set. The problem of designing instruction sets is formulated as a modified scheduling problem. A binary tuple is proposed to model the semantics of instructions and integrate the instruction formation process into the scheduling process. A simulated annealing scheme is used to solve for the schedules. Experiments have shown that the approach is capable of synthesizing powerful instructions for modern pipelined microprocessors, and running with reasonable time and a modest amount of memory for large applications.> Ing-Jer Huang, Alvin M. Despain |
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. | 2 |
| 1995 | Power estimation methods for sequential logic circuitsabstractRecently developed methods for power estimation have primarily focused on combinational logic. We present a framework for the efficient and accurate estimation of average power dissipation in sequential circuits. Switching activity is the primary cause of power dissipation in CMOS circuits. Accurate switching activity estimation for sequential circuits is considerably more difficult than that for combinational circuits, because the probability of the circuit being in each of its possible states has to be calculated. The Chapman-Kolmogorov equations can be used to compute the exact state probabilities in steady state. However, this method requires the solution of a linear system of equations of size 2/sup N/ where N is the number of flip-flops in the machine. We describe a comprehensive framework for exact and approximate switching activity estimation in a sequential circuit. The basic computation step is the solution of a nonlinear system of equations which is derived directly from a logic realization of the sequential machine. Increasing the number of variables or the number of equations in the system results in increased accuracy. For a wide variety of examples, we show that the approximation scheme is within 1-3% of the exact method, but is orders of magnitude faster for large circuits. Previous sequential switching activity estimation methods can have significantly greater inaccuracies.> Chi-Ying Tsui, José Monteiro 0001, Massoud Pedram, Srini Devadas, Alvin M. Despain, Bill Lin 0001 |
IEEE Trans. Very Large Scale Integr. Syst. | 5 |
| 1994 | Hardware-software co-designing benchmark-driven superpipelined instruction set processorsabstractThis paper focuses on the issues of designing an optimal superpipelined ISP (instruction set processor) driven by a set of benchmark programs. Most issues discussed in this paper also apply to VLIW and superscalar processors.> Ching-Long Su, Alvin M. Despain |
COMPSAC | 2 |
| 1994 | Synthesis of Instruction Sets for Pipelined MicroprocessorsabstractWe present a systematic approach to synthesize an instruction set such that the given application software can be efficiently mapped to a parameterized, pipelined microarchitecture. In addition, the assembly code is generated to show how the application can be compiled with the synthesized instruction set. The design of instruction sets is formulated as a modified scheduling problem. A binary tuple is proposed to model the semantics of instructions and integrate the instruction formation process into the scheduling process. A simulated annealing scheme is used to solve for the schedules. Experiments have shown that the approach is capable of synthesizing powerful instructions for modern pipelined microprocessors. The synthesis algorithm ran with reasonable time and a modest amount of memory for large benchmarks. 1. Ing-Jer Huang, Alvin M. Despain |
DAC | 2 |
| 1994 | Exact and Approximate Methods for Calculating Signal and Transition Probabilities in FSMsabstractIn this paper, we consider the problem of calculating the signal and transition probabilities of the internal nodes of the combinational logic part of a finite state machine (FSM). Given the state transition graph (STG) of the FSM, we first calculate the state probabilities by iteratively solving the Chapman-Kolmogorov equations. Using these probabilities, we then calculate the exact signal and transition probabilities by an implicit state enumeration procedure. For large sequential machines where the STG cannot be explicitly built, we unroll the next state logic k times and estimate the signal probability of the state bits using an OBDD-based approach. The basic computation step consists of solving a system of non-linear equations. We then use these estimates to approximately calculate signal and transition probabilities of the internal nodes. Our experimental results indicate that the average errors of transition probabilities and power estimation(compared to the exact method) are on... Chi-Ying Tsui, Massoud Pedram, Alvin M. Despain |
DAC | 3 |
| 1994 | Generating instruction sets and microarchitectures from applications
Ing-Jer Huang, Alvin M. Despain |
ICCAD | 2 |
| 1994 | Low power state assignment targeting two-and multi-level logic implementations
Chi-Ying Tsui, Massoud Pedram, Chih-Ang Chen, Alvin M. Despain |
ICCAD | 4 |
| 1994 | A Study of Cache Hashing Functions for Symbolic Applications in Micro-Parallel ProcessorsabstractThis paper presents a study of cache hashing functions for micro-parallel processors (e.g., superpipeline and super-scalar processors). Several novel cache hashing functions are experimented. Our simulation results show that an unconventional cache hashing function applied on a direct-mapped cache results in hit rates as good as a two-way set associative cache with traditional mapping, while the cache hit times are as fast as a direct-mapped cache with traditional mapping. Ching-Long Su, Chin-Chi Teng, Alvin M. Despain |
ICPADS | 3 |
| 1994 | Branch with Masked Squashing in Superpipelined ProcessorsabstractThe performance of a superpipeline processor heavily relies on its branch performance. Traditional branch strategies used in pipelined processors are delayed branches and branch with squashing. Delayed branches use safe instructions to fill delay slots. However, for a deeply pipelined processor, a compiler may not be able to find sufficient safe instructions to fill the branch delay slots. Branch with squashing takes advantage of using instructions in target basic blocks to fill the branch delay slots. However, the penalty of branch misprediction is large in superpipelined processors. The authors propose a novel branch scheme, named branch with masked squashing, which takes advantage of both delayed branch and branch with squashing. The basic idea is to fill delay slots with safe instructions which may come from above or after the branch. For the remaining unfilled delay slots, the authors fill with instructions from the predicted target path. In the case of misprediction, only unsafe instructions are annulled. The safe instructions in branch delay slots are always executed. Simulation results show that this branch strategy performs better than traditional delayed branch and branch with squashing.> Ching-Long Su, Alvin M. Despain |
ISCA | 2 |
| 1994 | Minimizing branch misprediction penalties for superpipelined processorsabstractBranch misprediction penalties depend on branch misprediction rates and branch penalties. Dynamic branch schemes take advantage of hardware to record and predict branch behavior at run-time for reducing branch misprediction rates. Static branch schemes take advantage of scheduling safe instructions into branch delay slots at compile-time for reducing branch penalties. This paper evaluates and compares the performance of various state-of-the-art static and dynamic branch schemes for super-pipelined processors. Ching-Long Su, Alvin M. Despain |
MICRO | 2 |
| 1994 | Power efficient technology decomposition and mapping under an extended power consumption modelabstractWe propose a new power consumption model that accounts for the power consumption at the internal nodes of a CMOS gate. Next, we address the problem of minimizing the average power consumption during the technology dependent phase of logic synthesis. Our approach consists of two steps. In the first step, we generate a NAND decomposition of an optimized Boolean network such that the sum of average switching rates for all nodes in the network is minimum. In the second step, we perform a power efficient technology mapping that finds a minimal power mapping for given timing constraints (subject to the unknown load problem).> Chi-Ying Tsui, Massoud Pedram, Alvin M. Despain |
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. | 3 |
| 1993 | Technology Decomposition and Mapping Targeting Low Power DissipationabstractIn his paper, we address the problem of minimizing the average power dissipation during the technology dependent phase of logic synthesis. Our approach consists of two steps. In the first step, we generate a Nand decomposition of an optimized Boolean network such that the sum of average switching rates for all nodes in the network is minimum. Our power-efficient decomposition procedure is optimal for dynamic CMOS circuits with uncorrelated input signals and produces very good results for static CMOS. In the second step, we perform a power efficient technology mapping that finds an optimal power delay trade-off value (subject to the unknown load problem) four given timing constraints. We obtain an average of 21% improvement in power at the expense of 12.6% increase in area and without any degradation in performance on a number of benchmarks. Chi-Ying Tsui, Massoud Pedram, Alvin M. Despain |
DAC | 3 |
| 1993 | Hardware/software resolution of pipeline hazards in pipeline synthesis of instruction set processorsabstractOne major problem in pipeline synthesis is the detection and resolution of pipeline hazards. We present a new solution to the problem in the domain of pipelined application-specific instruction set processors, based on hardware/software concurrent engineering approach. An extended taxonomy of inter-instruction dependencies is proposed for the analysis of pipeline hazards. Hardware/software resolution candidates are then associated with these dependencies. Algorithms using the taxonomy and the resolutions are developed to detect and resolve pipeline hazards, and to explore the hardware and software design space. Application benchmarks are used to evaluate the designs and guide the design decision. The power of these tools are demonstrated through the pipeline synthesis of two processors including industrial one. Compared with other approaches, our method achieves higher throughput, and provides a way to explore the hardware/software tradeoff. Our method can be combined with current approaches to achieve even higher performance since they are orthogonal. Ing-Jer Huang, Alvin M. Despain |
ICCAD | 2 |
| 1993 | Efficient estimation of dynamic power consumption under a real delay modelabstractIn CMOS circuits, glitches account for a sizeable part of the total power consumption. In this paper, we present a fast and memory efficient power estimation technique for CMOS circuits which estimates the power consumed due to the glitches. Our technique is based on the notion of tagged transition waveforms. In particular, we approximate the correlation between transition waveforms for two signal lines by the correlation between the steady state values of these lines. We obtain an order of magnitude speed up over an exact method with an average error of only 1%. Chi-Ying Tsui, Massoud Pedram, Alvin M. Despain |
ICCAD | 3 |
| 1993 | An extended classification of inter-instruction dependency and its application in automatic synthesis of pipelined processorsabstractSeveral architectural innovations intended to reduce access latency and improve overall throughput increase system bandwidth requirements. Bandwidth scales with clock speed, and can be regarded as an architectural resource to be applied to latency reduction. A properly designed bus provides low arbitration latency and delivers high sustained bandwidth. The paper evaluates the performance of 3.2 Gbyte/s peak bandwidth, low-latency arbitration bus connecting a GaAs superscalar CPU to a GaAs memory management unit. A microarchitectural performance model was written in the Verilog hardware description language. Bus transactions characteristic of the SPECint92 benchmarks and other workloads were generated as input. Sustained bandwidths of 1.68 Gbytes/s were achieved with arbitration costs of less than 0.5 cycles per data transfer.> Ing-Jer Huang, Alvin M. Despain |
MICRO | 2 |
| 1993 | The 16-fold way: a microparallel taxonomyabstractPresents a novel mechanism that implements register renaming, dynamic speculation and precise interrupts. Renaming of registers is performed during the instruction fetch stage instead of the decode stage, and the mechanism is designed to operate in parallel with the tag match logic used by most cache designs. It is estimated that the critical path of the mechanism requires approximately the same number of logic levels as the tag match logic, and therefore should not impact cycle time.> Barton Sano, Alvin M. Despain |
MICRO | 2 |
| 1993 | Prophetic branches: a branch architecture for code compaction and efficient executionabstractClocked (synchronous) and self-timed (asynchronous) methodologies represent the two principal design approaches associated with timing control and synchronization of digital systems. In the paper, clocked and asynchronous instruction pipelines are modeled and compared. The approach which yields the best performance is dependent on technology parameters, operating range and pipeline algorithm characteristics. Design curves are presented which permit selection of the best approach for a given application and technology environment.> Apoorv Srivastava, Alvin M. Despain |
MICRO | 2 |
| 1992 | High Level Synthesis of Pipelined Instruction Set Processors and Back-End Compilers
Ing-Jer Huang, Alvin M. Despain |
DAC | 2 |
| 1992 | Application-Driven Design Automation for Microprocessor Design
Iksoo Pyo, Ching-Long Su, Ing-Jer Huang, Kuo-Rueih Pan, Yong-Seon Koh, Chi-Ying Tsui, Hsu-Tsun Chen, Gino Cheng, Shihming Liu, Shiqun Wu, Alvin M. Despain |
DAC | 11 |
| 1991 | AI and Design
Saul Amarel, Alvin M. Despain, H. Penny Nii, Louis I. Steinberg, Marty Tenenbaum, Peter M. Will |
IJCAI | 2 |
| 1991 | Viewing Instruction Set Design as an Optimization ProblemabstractThis paper reviews past attempts to systematize in-struction set design and offers an alternative approach. Our technique is based on compaction of microopera-tions to form instructions. The compaction is done in such a way as to optimize a metric which is a function of cycle count, code size, and instruction set size. To illus-trate our technique, optimal instruction sets are derived for data structure creation in Prolog. 1 Bruce K. Holmer, Alvin M. Despain |
MICRO | 2 |
| 1990 | Fast Prolog with an Extended General Purpose ArchitectureabstractMost Prolog machines have been based on specialized architectures. Our goal is to start with a general purpose architecture and determine a minimal set of extensions for high performance Prolog execution. We have developed both the architecture and optimizing compiler simultaneously, drawing on results of previous implementations. We find that most Prolog specific operations can be done satisfactorily in software; however, there is a crucial set of features that the architecture must support to achieve the best Prolog performance. The emphasis of this paper is on our architecture and instruction set. The costs and benefits of the special architectural features and instructions are analyzed. Simulated performance results are presented and indicate a peak compiled Prolog performance of 3.68 million logical inferences per second. Bruce K. Holmer, Barton Sano, Michael J. Carlton, Peter Van Roy, Ralph Clarke Haygood, William R. Bush, Alvin M. Despain, Joan M. Pendleton, Tep P. Dobry |
ISCA | 7 |
| 1990 | The Performance of Parallel Prolog ProgramsabstractPerformance results are presented for a parallel execution model for Prolog that supports AND-parallelism, OR-parallelism, and intelligent backtracking. The results show that restricted AND-parallelism is of limited benefit for small programs, but produced speedups from 7-10 on two large programs. OR-parallelism was found to be generally not useful for the benchmarks examined if the semantics of Prolog were preserved. Of particular interest is the phenomenon of super-multiplicative behavior, in which the performance improvement obtained when more than one technique is used is greater than the product of the performance improvements due to each technique individually. The implications of the performance results for parallel Prolog systems are discussed, and directions for future work are indicated.> Barry S. Fagin, Alvin M. Despain |
IEEE Trans. Computers | 2 |
| 1988 | A two-tier memory architecture for high-performance multiprocessor systemsabstractPerformance of high-speed multiprocessor systems is limited by the available bandwidth to memory and the need to synchronize write sharable data. This paper presents a new memory system that separates synchronization related data from others. The memory system has two tiers: synchronization memory and high bandwidth (HB) memory. The synchronization memory consists of snooping caches connected to a bus and is used to store synchronization variables such as locks and semaphores. The HB memory is used to store the bulk of the application program code and data. It contains caches and a high bandwidth interconnection network to memory, such as the crossbar, but does not have full snooping among caches.The two tier memory system has been evaluated by analyzing the memory behavior of the simulated parallel execution of Prolog programs. Initial results indicate that the two tier memory system potentially reduces memory interference and speeds up synchronization. Three different schemes have been studied for the caches on the HB memory and the results are presented. The two-tier memory system has potential applications in areas where synchronization is light to medium and local data is often accessed. Tam M. Nguyen, Vason P. Srini, Alvin M. Despain |
ICS | 3 |
| 1987 | Performance Studies of a Parallel Prolog ArchitectureabstractThis paper presents a new multiprocessor architecture for the parallel execution of logic programs, developed as part of the Aquarius Project. This architecture is designed to support AND-parallelism, OR-parallelism, and intelligent backtracking. We present the most comprehensive experimental results available to date on combined AND-parallelism, OR-parallelism, and intelligent backtracking in Prolog programs. Simulation results indicate that most Prolog programs in use today cannot effectively make use of multiprocessing. Barry S. Fagin, Alvin M. Despain |
ISCA | 2 |
| 1986 | Delay reduction using simulated annealingabstractThe MOST program chooses appropriate sizes for transistors in a VLSI schematic to meet specified delay criteria. A simulated annealing algorithm is used in conjunction with a timing analyzer, both written in Prolog. A screening function takes advantage of the symbolic equations provided by the timing analyzer to reject clearly inappropriate choices, so full timing analysis is performed less frequently. Despite running in an interpreted Prolog, performance gains of over 50% versus an unsized circuit can be attained in less than 10 CPU minutes. Jonathan D. Pincus, Alvin M. Despain |
DAC | 2 |
| 1986 | Multiprocessor Cache Synchronization: Issues, Innovations, EvolutionabstractMany options are possible in a cache synchronization (or consistency) scheme for a broadcast system. We clarify basic concepts, analyze the handling of shared data, and then describe a protocol that we are currently exploring. Finally, we analyze the evolution of options that have been proposed under write-in (or write-back) policy. We show how our protocol extends this evolution with new methods for efficient busy-wait locking, waiting, and unlocking. The lock scheme allows locking and unlocking to occur in zero time, eliminating the need for test-and-set. The scheme also integrates processor atomic read-modify-write instructions and programmer/compiler busy-wait-synchronized operations under the same mechanism. The wait scheme eliminates all unsuccessful retries from the bus, and allows a process to work while waiting. Philip Bitar, Alvin M. Despain |
ISCA | 2 |
| 1985 | Performance Studies of a Prolog Machine Architectureabstractarticle Free Access Share on Performance studies of a Prolog machine architecture Authors: T. P. Dobry Computer Science Division, University of California,Berkeley, Berkeley, California Computer Science Division, University of California,Berkeley, Berkeley, CaliforniaView Profile , A. M. Despain Computer Science Division, University of California,Berkeley, Berkeley, California Computer Science Division, University of California,Berkeley, Berkeley, CaliforniaView Profile , Y. N. Patt Computer Science Division, University of California,Berkeley, Berkeley, California Computer Science Division, University of California,Berkeley, Berkeley, CaliforniaView Profile Authors Info & Claims ACM SIGARCH Computer Architecture NewsVolume 13Issue 3June 1985 pp 180–190https://doi.org/10.1145/327070.327161Published:01 June 1985Publication History 60citation339DownloadsMetricsTotal Citations60Total Downloads339Last 12 Months35Last 6 weeks7 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteeReaderPDF Tep P. Dobry, Alvin M. Despain, Yale N. Patt |
ISCA | 2 |
| 1985 | Fast fourier transform processors using Gaussian residue arithmetic
Alvin M. Despain, Allen M. Peterson, Oscar S. Rothaus, Erling Wold |
J. Parallel Distributed Comput. | 1 |
| 1984 | Pipeline and Parallel-Pipeline FFT Processors for VLSI ImplementationsabstractIn some signal processing applications, it is desirable to build very high performance fast Fourier transform (FFT) processors. To meet the performance requirements, these processors are typically highly pipelined. Until the advent of VLSI, it was not possible to build a single chip which could be used to construct pipeline FFT processors of a reasonable size. However, VLSI implementations have constraints which differ from those of discrete implementations, requiring another look at some of the typical FFT'algorithms in the light of these constraints. Erling Wold, Alvin M. Despain |
IEEE Trans. Computers | 2 |
| 1979 | Very Fast Fourier Transform Algorithms Hardware for ImplementationabstractA new method of deriving very fast Fourier transform (FFT) algorithms is described. The resulting algorithms do not employ multiplication and have a form suitable for high performance hardware implementations. The complexity of the algorithms compares favorably to the recent results of Winograd [1]. Alvin M. Despain |
IEEE Trans. Computers | 1 |
| 1978 | X-Tree: A Tree Structured Multi-Processor Computer ArchitectureabstractThe problem of organizing multiple, monolithic microprocessors into an effective general purpose computer structure is examined. A tree structure with extra interconnections was found to be especially attractive. It provides a structured hierarchy for control, addressing and message routing. More important, it appears to provide a mechanism to automatically migrate data abstractions and processes over the network of processors. The network can be expanded to any desired size and no global control or routine mechanisms are needed. Alvin M. Despain, David A. Patterson 0001 |
ISCA | 1 |
| 1974 | Fourier Transform Computers Using CORDIC IterationsabstractThe CORDIC iteration is applied to several Fourier transform algorithms. The number of operations is found as a function of transform method and radix representation. Using these representations, several hardware configurations are examined for cost, speed, and complexity tradeoffs. A new, especially attractive FFT computer architecture is presented as an example of the utility of this technique. Compensated and modified CORDIC algorithms are also developed. Alvin M. Despain |
IEEE Trans. Computers | 1 |