Demo Data from EDBT 2026 / reviewers in the wild / expert
Santosh G. Abraham
dblp:01/6046
· DBLP profile ↗
34ranked-venue papers
8as first author
0since 2021 · last 2005
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 33 · 8 first-authorSoftware engineering, systems software and programming languages · 3Applied, 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
14 papers |
Processor architecture and microarchitecture · 45% Memory systems · 37% Performance modeling and evaluation · 12% | |
| Software engineering, system software, and programming languages
4 papers |
Compilers and program optimization · 100% |
Topics — the 30 heaviest of 50, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Processor architecture and microarchitecture
chip multiprocessor |
0.1 | 3 | 2005 | Effective Instruction Prefetching in Chip Multiprocessors for Modern Commercial Applications · HPCA 2005 Chip Multithreading: Opportunities and Challenges · HPCA 2005 Dynamic Helper Threaded Prefetching on the Sun UltraSPARC CMP Processor · MICRO 2005 |
Memory systems › memory access optimization
memory-level parallelism |
0.1 | 2 | 2005 | Store Memory-Level Parallelism Optimizations for Commercial Applications · MICRO 2005 Microarchitecture Optimizations for Exploiting Memory-Level Parallelism · ISCA 2004 |
Memory systems
cache |
0.1 | 3 | 2005 | Dynamic Helper Threaded Prefetching on the Sun UltraSPARC CMP Processor · MICRO 2005 Set-Associative Cache Simulation Using Generalized Binomial Trees · ACM Trans. Comput. Syst. 1995 Efficient Simulation of Caches under Optimal Replacement with Applications to Miss Characterization · SIGMETRICS 1993 |
Memory systems › cache › CPU cache
instruction cache |
0.1 | 2 | 2005 | Effective Instruction Prefetching in Chip Multiprocessors for Modern Commercial Applications · HPCA 2005 Automatic and Efficient Evaluation of Memory Hierarchies for Embedded Systems · MICRO 1999 |
Processor architecture and microarchitecture › multithreading
chip multithreading |
0.1 | 1 | 2005 | Chip Multithreading: Opportunities and Challenges · HPCA 2005 |
Memory systems › cache › prefetching
data prefetching |
0.1 | 1 | 2005 | Dynamic Helper Threaded Prefetching on the Sun UltraSPARC CMP Processor · MICRO 2005 |
Processor architecture and microarchitecture › multithreading
helper thread prefetching |
0.1 | 1 | 2005 | Dynamic Helper Threaded Prefetching on the Sun UltraSPARC CMP Processor · MICRO 2005 |
Processor architecture and microarchitecture › instruction fetch
instruction prefetching |
0.1 | 1 | 2005 | Effective Instruction Prefetching in Chip Multiprocessors for Modern Commercial Applications · HPCA 2005 |
Memory systems › memory consistency
memory consistency model |
0.1 | 1 | 2005 | Store Memory-Level Parallelism Optimizations for Commercial Applications · MICRO 2005 |
Processor architecture and microarchitecture
multithreading |
0.1 | 1 | 2005 | Dynamic Helper Threaded Prefetching on the Sun UltraSPARC CMP Processor · MICRO 2005 |
Processor architecture and microarchitecture › multithreading
simultaneous multithreading |
0.1 | 1 | 2005 | Chip Multithreading: Opportunities and Challenges · HPCA 2005 |
Processor architecture and microarchitecture
out-of-order execution |
0.0 | 1 | 2004 | Microarchitecture Optimizations for Exploiting Memory-Level Parallelism · ISCA 2004 |
Processor architecture and microarchitecture › latency hiding
runahead execution |
0.0 | 1 | 2004 | Microarchitecture Optimizations for Exploiting Memory-Level Parallelism · ISCA 2004 |
Performance modeling and evaluation
workload characterization |
0.0 | 3 | 2005 | Store Memory-Level Parallelism Optimizations for Commercial Applications · MICRO 2005 Effective Instruction Prefetching in Chip Multiprocessors for Modern Commercial Applications · HPCA 2005 Approaching a machine-application bound in delivered performance on scientific code · Proc. IEEE 1993 |
Compilers and program optimization
instruction scheduling |
0.0 | 3 | 1996 | Meld Scheduling: Relaxing Scheduling Constraints Across Region Boundaries · MICRO 1996 Minimum register requirements for a modulo schedule · MICRO 1994 Vector Register Design for Polycyclic Vector Scheduling · ASPLOS 1991 |
Performance modeling and evaluation › workload characterization
commercial workloads |
0.0 | 2 | 2005 | Store Memory-Level Parallelism Optimizations for Commercial Applications · MICRO 2005 Effective Instruction Prefetching in Chip Multiprocessors for Modern Commercial Applications · HPCA 2005 |
Performance modeling and evaluation › simulation
cache simulation |
0.0 | 2 | 1995 | Set-Associative Cache Simulation Using Generalized Binomial Trees · ACM Trans. Comput. Syst. 1995 Efficient Simulation of Caches under Optimal Replacement with Applications to Miss Characterization · SIGMETRICS 1993 |
Performance modeling and evaluation
simulation |
0.0 | 2 | 1995 | Set-Associative Cache Simulation Using Generalized Binomial Trees · ACM Trans. Comput. Syst. 1995 Efficient Simulation of Caches under Optimal Replacement with Applications to Miss Characterization · SIGMETRICS 1993 |
Memory systems › cache
cache behavior |
0.0 | 1 | 1999 | Automatic and Efficient Evaluation of Memory Hierarchies for Embedded Systems · MICRO 1999 |
Memory systems › memory interference
cache contention |
0.0 | 1 | 2005 | Chip Multithreading: Opportunities and Challenges · HPCA 2005 |
Processor architecture and microarchitecture
dynamic optimization |
0.0 | 1 | 2005 | Dynamic Helper Threaded Prefetching on the Sun UltraSPARC CMP Processor · MICRO 2005 |
Memory systems
memory hierarchy |
0.0 | 1 | 2005 | Chip Multithreading: Opportunities and Challenges · HPCA 2005 |
Memory systems › cache › cache organization
set-associative cache |
0.0 | 1 | 1995 | Set-Associative Cache Simulation Using Generalized Binomial Trees · ACM Trans. Comput. Syst. 1995 |
Compilers and program optimization › instruction scheduling › software pipelining
modulo scheduling |
0.0 | 1 | 1994 | Minimum register requirements for a modulo schedule · MICRO 1994 |
Compilers and program optimization
register allocation |
0.0 | 1 | 1994 | Minimum register requirements for a modulo schedule · MICRO 1994 |
Memory systems › cache management
cache replacement |
0.0 | 1 | 1993 | Efficient Simulation of Caches under Optimal Replacement with Applications to Miss Characterization · SIGMETRICS 1993 |
Memory systems › cache management › cache replacement
optimal replacement |
0.0 | 1 | 1993 | Efficient Simulation of Caches under Optimal Replacement with Applications to Miss Characterization · SIGMETRICS 1993 |
High-performance computing
performance optimization at scale |
0.0 | 1 | 1993 | Approaching a machine-application bound in delivered performance on scientific code · Proc. IEEE 1993 |
Performance modeling and evaluation › parallel performance evaluation
scientific application performance |
0.0 | 1 | 1993 | Approaching a machine-application bound in delivered performance on scientific code · Proc. IEEE 1993 |
Rendering
global illumination |
0.0 | 1 | 1992 | Computing Radiosity Solution on a High Performance Workstation LAN · HPDC 1992 |
Methods — techniques the papers use, named apart from their topics
store prefetching · 0.1store miss accelerator · 0.1speculative prefetching · 0.1speculative lock elision · 0.1software scouting · 0.1sequential prefetching · 0.1dynamic binary optimization · 0.1discontinuity prefetching · 0.1simulation · 0.0hierarchical simulation · 0.0meld scheduling algorithm · 0.0lifetime-sensitive scheduling · 0.0top-down and bottom-up clustering · 0.0task granularity optimization · 0.0message passing · 0.0vector register design · 0.0polycyclic scheduling · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2005 | Chip Multithreading: Opportunities and ChallengesabstractChip multi-threaded (CMT) processors provide support for many simultaneous hardware threads of execution in various ways, including simultaneous multithreading (SMT) and chip multiprocessing (CMP). CMT processors are especially suited to server workloads, which generally have high levels of thread-level parallelism (TLP). In this paper, we describe the evolution of CMT chips in industry and highlight the pervasiveness of CMT designs in upcoming general-purpose processors. The CMT design space accommodates a range of designs between the extremes represented by the SMT and CMP designs and a variety of attractive design options are currently unexplored. Though there has been extensive research on utilizing multiple hardware threads to speed up single-threaded applications via speculative parallelization, there are many challenges in designing CMT processors, even when sufficient TLP is present. This paper describes some of these challenges including, hot sets, hot banks, speculative prefetching strategies, request prioritization and off-chip bandwidth reduction. Lawrence Spracklen, Santosh G. Abraham |
HPCA | 2 |
| 2005 | Effective Instruction Prefetching in Chip Multiprocessors for Modern Commercial ApplicationsabstractIn this paper, we study the instruction cache miss behavior of four modern commercial applications (a database workload, TPC-W, SPECjAppServer2002 and SPECweb99). These applications exhibit high instruction cache miss rates for both the L1 and L2 caches, and a sizable performance improvement can be achieved by eliminating these misses. We show that it is important, not only to address sequential misses, but also misses due to branches and function calls. As a result, we propose an efficient discontinuity prefetching scheme that can be effectively combined with traditional sequential prefetching to address all forms of instruction cache misses. Additionally, with the emergence of chip multiprocessors (CMPs), instruction prefetching schemes must take into account their effect on the shared L2 cache. Specifically aggressive instruction cache prefetching can result in an increase in the number of L2 cache data misses. As a solution, we propose a scheme that does not install prefetches into the L2 cache unless they are proven to be useful. Overall, we demonstrate that the combination of our proposed schemes is successful in reducing the instruction miss rate to only 10%-16% of the original miss rate and results in a 1.08X-1.37X performance improvement for the applications studied. Lawrence Spracklen, Yuan Chou, Santosh G. Abraham |
HPCA | 3 |
| 2005 | Accurate Modeling of Aggressive Speculation in Modern Microprocessor ArchitecturesabstractComputer architects utilize cycle simulators to evaluate microprocessor chip design tradeoffs and estimate performance metrics. Traditionally, cycle simulators are either trace-driven or execution-driven. In this paper, we describe ValueSim, a software layer that is interposed between a cycle simulators and either a functional simulator or a value-enhanced trace. By writing to the ValueSim API, the cycle simulator can run in either trace-driven mode or execution-driven mode, allowing it to exploit the advantages of both approaches. The ValueSim API allows a cycle simulator to accurately model a complete range of aggressive speculative mechanisms developed by computer architects, even in the trace-driven mode. Using ValueSim, we illustrate, for three key commercial applications, the significant underestimation of off-chip bandwidth, queuing delays and cache pollution when modern speculative mechanisms are not accurately modeled, highlighting the importance of accurately modeling these mechanisms in chip multiprocessor designs. Harit Modi, Lawrence Spracklen, Yuan Chou, Santosh G. Abraham |
MASCOTS | 4 |
| 2005 | Store Memory-Level Parallelism Optimizations for Commercial ApplicationsabstractThis paper studies the impact of off-chip store misses on processor performance for modern commercial applications. The performance impact of off-chip store misses is largely determined by the extent of their overlap with other off-chip cache misses. The epoch MLP model is used to explain and quantify how these overlaps are affected by various store handling optimizations and by the memory consistency model implemented by the processor. The extent of these overlaps is then translated to off-chip CPI. Experimental results show that store handling optimizations are crucial for mitigating the substantial performance impact of stores in commercial applications. While some previously proposed optimizations, such as store prefetching, are highly effective, they are unable to fully mitigate the performance impact of off-chip store misses and they also leave a performance gap between the stronger and weaker memory consistency models. New optimizations, such as the store miss accelerator, an optimization of hardware scout and a new application of speculative lock elision, are demonstrated to virtually eliminate the impact of off-chip store misses. Yuan Chou, Lawrence Spracklen, Santosh G. Abraham |
MICRO | 3 |
| 2005 | Dynamic Helper Threaded Prefetching on the Sun UltraSPARC CMP ProcessorabstractData prefetching via helper threading has been extensively investigated on simultaneous multi-threading (SMT) or virtual multi-threading (VMT) architectures. Although reportedly large cache latency can be hidden by helper threads at runtime, most techniques rely on hardware support to reduce context switch overhead between the main thread and helper thread as well as rely on static profile feedback to construct the help thread code. This paper develops a new solution by exploiting helper threaded prefetching through dynamic optimization on the latest UltraSPARC chip-multiprocessing (CMP) processor. Our experiments show that by utilizing the otherwise idle processor core, a single user-level helper thread is sufficient to improve the runtime performance of the main thread without triggering multiple thread slices. Moreover, since the multiple cores are physically decoupled in the CMP, contention introduced by helper threading is minimal. This paper also discusses several key technical challenges of building a lightweight dynamic optimization/software scouting system on the UltraSPARC/Solaris platform. Jiwei Lu, Abhinav Das, Wei-Chung Hsu, Santosh G. Abraham |
MICRO | 5 |
| 2004 | Effective stream-based and execution-based data prefetchingabstractWith processor speeds continuing to outpace the memory subsystem, cache missing memory operations continue to become increasingly important to application performance. In response to this continuing trend, most modern processors now support hardware (HW) prefetchers, which act to reduce the missing loads observed by an application.This paper analyzes the behavior of cache-missing loads in SPEC CPU2000 and highlights the inability of unit and single non-unit stride prefetchers to correctly prefetch for some commonly occurring streams. In response to this analysis, a novel multi-stride prefetcher, that supports streams with up to four distinct strides, is proposed. Performance analysis for SPEC CPU2000 illustrates that the proposed multi-stride prefetcher can outperform current stride prefetchers on several benchmarks; most notably on mcf, lucas and facerec, where it achieves an additional performance gain of up to 57%. Performance of the strided HW prefetchers is also contrasted with another recently proposed prefetch scheme, runahead execution (RAE), and the synergy between the schemes is investigated. Sorin Iacobovici, Lawrence Spracklen, Sudarshan Kadambi, Yuan Chou, Santosh G. Abraham |
ICS | 5 |
| 2004 | Microarchitecture Optimizations for Exploiting Memory-Level ParallelismabstractThe performance of memory-bound commercial applications such as databases is limited by increasing memory latencies. In this paper, we show that exploiting memory-level parallelism (MLP) is an effective approach for improving the performance of these applications and that microarchitecture has a profound impact on achievable MLP. Using the epoch model of MLP, we reason how traditional microarchitecture features such as out-of-order issue and state-of-the-art microarchitecture techniques such as runahead execution affect MLP. Simulation results show that a moderately aggressive out-of-order issue processor improves MLP over an in-order issue processor by 12-30%, and that aggressive handling of loads, branches and serializing instructions is needed to attain the full benefits of large out-of-order instruction windows. The results also show that a processor's issue window and reorder buffer should be decoupled to exploit MLP more efficiently. In addition, we demonstrate that runahead execution is highly effective in enhancing MLP, potentially improving the MLP of the database workload by 82% and its overall performance by 60%. Finally, our limit study shows that there is considerable headroom in improving MLP and overall performance by implementing effective instruction prefetching, more accurate branch prediction and better value prediction in addition to runahead execution. Yuan Chou, Brian Fahs, Santosh G. Abraham |
ISCA | 3 |
| 2000 | High-Level Synthesis of Nonprogrammable Hardware AcceleratorsabstractThe PICO-N system automatically synthesizes embedded nonprogrammable accelerators to be used as co-processors for functions expressed as loop nests in C. The output is synthesizable VHDL that defines the accelerator at the register transfer level (RTL). The system generates a synchronous array of customized VLIW (very-long instruction word) processors, their controller local memory, and interfaces. The system also modifies the user's application software to make use of the generated accelerator. The user indicates the throughput to be achieved by specifying the number of processors and their initiation interval. In experimental comparisons, PICO-N designs are slightly more costly than hand-designed accelerators with the same performance. Robert Schreiber, Shail Aditya, Bob Rau, Vinod Kathail, Scott A. Mahlke, Santosh G. Abraham, Greg Snider |
ASAP | 6 |
| 2000 | Efficient design space exploration in PICOabstractAutomated design tools must understand and exploit the hierarchical structure of large design spaces.We have developed a general methodology for decomposing system design spaces into smaller component design spaces, followed by component-level evaluation, filtering, recomposition and system-level evaluation.This methodology greatly reduces the time and cost of design space exploration, since the typical number of system-level evaluations is greatly reduced.This paper describes the application of our decomposition methodology in the context of PICO.PICO is a design space exploration system that automatically generates embedded designs consisting of a stylized processor, hardware accelerator and a cache hierarchy, each customized to a benchmark.First, PICO splits the specified system design space into smaller design spaces, one for each of the components, viz.processor, accelerator and data/instruction/unified caches.PICO further partitions each component design space into predicated design spaces, so that all designs in a predicated design space satisfy a specified predicate.PICO uses component-level evaluations to identify the performance-cost optimal component-level Pareto designs in each predicated design space.PICO generates all compositions of Pareto designs from compatible predicated design spaces and uses a system-level evaluation to identify the Pareto designs at the system level.For reasonable design spaces, PICO reduces the design exploration time by over four orders of magnitude compared to an exhaustive approach. Santosh G. Abraham, Bob Rau |
CASES | 1 |
| 1999 | Automatic and Efficient Evaluation of Memory Hierarchies for Embedded SystemsabstractAutomation is the key to the design of future embedded systems as it permits application-specific customization while keeping design costs low. A key problem faced by automatic design systems is evaluating the performance of the vast number of alternative designs in a timely manner. For this paper, we focus on an embedded system consisting of the following components: a VLIW processor, instruction cache, data cache, and second-level unified cache. A hierarchical approach of partitioning the system into its constituent components and evaluating each component individually is utilized. The performance of each processor is evaluated independent of its memory hierarchy, and each of the caches is simulated using the traces from a single reference processor. Since the changes in the processor architecture do indeed affect the address traces and thus the performance of the memory hierarchy, the overall performance is inaccurate. To overcome this error, the changes in the processor architecture are modeled as a dilation of the reference processor's address trace, where each instruction block in the trace is conceptually stretched out by the dilation coefficient. This approach provides a projected cache performance that more accurately accounts for changes in the processor architecture. In order to understand the accuracy of the dilation model, we separate the possible errors that the model introduces and quantify these errors on a set of benchmarks. The results show that the dilation model is effective for most of the design space and facilitates efficient automatic design. Santosh G. Abraham, Scott A. Mahlke |
MICRO | 1 |
| 1996 | Meld Scheduling: Relaxing Scheduling Constraints Across Region BoundariesabstractMeld scheduling melds the schedules of neighboring scheduling regions to respect latencies of operations issued in one region but completing after control transfers to the other. In contrast, conventional schedulers ignore latency constraints from other regions leading to potentially avoidable stalls in an interlocked (superscalar) machine or incorrect schedules for non-interlocked (VLIW) machines. Alternatively, schedulers that conservatively require all operations to complete before the branch rakes effect produce inefficient schedules. In this paper, we present general data structures for maintaining latency constraint information at region boundaries. We present a meld scheduling algorithm that generates latency constraints at the boundaries of scheduled regions and utilizes this information during the scheduling of other regions. We present a range of design options and describe the reasons behind our particular choices. We cover certain pitfalls and discuss how to develop an algorithm that addresses these issues. We evaluate the performance of meld scheduling on a range of noninterlocked machine models on a set of SPEC 92 and Unix benchmarks. We also investigate the sensitivity of the performance improvements due to changes in issue width and instruction latencies. Santosh G. Abraham, Vinod Kathail, Brian L. Deitrich |
MICRO | 1 |
| 1995 | Impact of Load Imbalance on the Design of Software Barriers
Alexandre E. Eichenberger, Santosh G. Abraham |
ICPP (2) | 2 |
| 1995 | Optimum Modulo Schedules for Minimum Register RequirementsabstractModtdo schedulwsg is an eficient tech nzque for exploiting instruction level parallelism in a uaraety of ioopsl resulting in high performance code but increased register requirements.We present a combined approach that schedules the loop operations for the highest steady state throughput and minimum register requirements.Our method determines optimal register requirements for machines with jinite resources and for general dependence graphs.We compare the performance of this and other modulo schedulers for a benchmark of 6.29 loops from the Perfect Clubl SPEC-89, and the Livermore Fortran Kernels.Measurements demonstrate the potential of r-egister=sensittve modulo schedulers, wh~ch will be useful in evaluating the performance of register-sensitive modrslo scheduling heuristics. Alexandre E. Eichenberger, Edward S. Davidson, Santosh G. Abraham |
International Conference on Supercomputing | 3 |
| 1995 | Set-Associative Cache Simulation Using Generalized Binomial TreesabstractSet-associative caches are widely used in CPU memory hierarchies, I/O subsystems, and file systems to reduce average access times. This article proposes an efficient simulation technique for simulating a group of set-associative caches in a single pass through the address trace, where all caches have the same line size but varying associativities and varying number of sets. The article also introduces a generalization of the ordinary binomial tree and presents a representation of caches in this class using the Generalized Binomial Tree (gbt). The tree representation permits efficient search and update of the caches. Theoretically, the new algorithm, GBF_LS, based on the gbt structure, always takes fewer comparisons than the two earlier algorithms for the same class of caches: all-associativity and generalized forest simulation. Experimentally, the new algorithm shows performance gains in the range of 1.2 to 3.8 over the earlier algorithms on address traces of the SPEC benchmarks. A related algorithm for simulating multiple alternative direct-mapped caches with fixed cache size, but varying line size, is also presented. Rabin A. Sugumar, Santosh G. Abraham |
ACM Trans. Comput. Syst. | 2 |
| 1994 | Data and program restructuring of irregular applications for cache-coherent multiprocessorabstractApplications with irregular data structures such as sparse matrices or finite element meshes account for a large fraction of engineering and scientific applications. Domain decomposition techniques are commonly used to partition these applications to reduce interprocessor communication on message passing parallel systems. Our work investigates the use of domain decomposition techniques on cache-coherent parallel systems. Karen A. Tomko, Santosh G. Abraham |
International Conference on Supercomputing | 2 |
| 1994 | Minimum register requirements for a modulo scheduleabstractModule scheduling is an efficient technique for exploiting instruction level parallelism in a variety of loops, resulting in high performance code but increased register requirements. We present a combined approach that schedules the loop operations for minimum register requirements, given a module reservation table. Our method determines optimal register requirements for machines with finite resources and for general dependence graphs. This method demonstrates the potential of lifetime-sensitive module scheduling and is useful in evaluating the performance of lifetime-sensitive module scheduling heuristics. Alexandre E. Eichenberger, Edward S. Davidson, Santosh G. Abraham |
MICRO | 3 |
| 1993 | Iteration Partitioning for Resolving Stride Conflicts on Cache-Coherent MultiprocessorsabstractWe develop compile-time iteration partitioning techniques for private-cache shared-memory mulriprocessors. Our techniques assign loop iterations to a set of processors so that cache coherency traffic due io interprocessor communication is minimized and load balance is maintained. In contrast to most previous research that has examined uniformly-generated dependences, we develop methods for non-uniform dependences that are generated by stride conflicts. Furthermore, we consider the effects of a long cache line size and minimize false coherency traffic. Our methods can handle conflicts between any two integer strides. We have conducted experiments on a 32-processor KSR-1 from Kendall Square Research which show 2x performance improvement using our partitioning algorithm over standard contiguous partitioning techniques. Karen A. Tomko, Santosh G. Abraham |
ICPP (2) | 2 |
| 1993 | Evaluating the Communication Performance of MPPs Using Synthetic Sparse Matrix Multiplication WorkloadsabstractCommunication has a dominant impact on the performance of massively parallel processors (MPPs). We propose a methodology to evaluate the internode communication performance of MPPs using a controlled set of synthetic workloads. By generating a range of sparse matrices and measuring the performance of a simple parallel algorithm that repeatedly multiplies a sparse matrix by a dense vector, we can determine the relative performance of different communication workloads. Specifiable communication parameters include the number of nodes, the average amount of communication per node, the degree of sharing among the nodes, and the computation-communication ratio. We describe a general procedure for constructing sparse matrices that have these desired communication and computation parameters, and apply a range of these synthetic workloads to evaluate the hierarchical ring interconnection and cache-only memory architecture (COMA) of the Kendall Square Research KSRI MPP. This analysis discusses the impact of the KSRI architecture on communication performance, highlighting the utility and impact of the automatic update feature. It also investigates the impact of system contention on the performance, particularly how it causes potential updates to be ignored. Eric L. Boyd, John-David Wellman, Santosh G. Abraham, Edward S. Davidson |
International Conference on Supercomputing | 3 |
| 1993 | Predictability of load/store instruction latenciesabstractPresents a model of coarse grain dataflow execution. The authors present one top down and two bottom up methods for generation of multithreaded code, and evaluate their effectiveness. The bottom up techniques start from a fine-grain dataflow graph and coalesce this into coarse-grain clusters. The top down technique generates clusters directly from the intermediate data dependence graph used for compiler optimizations. The authors discuss the relevant phases in the compilation process. They compare the effectiveness of the strategies by measuring the total number of clusters executed, the total number of instructions executed, cluster size, and number of matches per cluster. It turns out that the top down method generates more efficient code, and larger clusters. However the number of matches per cluster is larger for the top down method, which could incur higher cluster synchronization costs.> Santosh G. Abraham, Rabin A. Sugumar, Daniel Windheiser, Bob Rau |
MICRO | 1 |
| 1993 | Efficient Simulation of Caches under Optimal Replacement with Applications to Miss CharacterizationabstractCache miss characterization models such as the three Cs model are useful in developing schemes to reduce cache misses and their penalty. In this paper we propose the OPT model that uses cache simulation under optimal (OPT) replacement to obtain a finer and more accurate characterization of misses than the three Cs model. However, current methods for optimal cache simulation are slow and difficult to use. We present three new techniques for optimal cache simulation. First, we propose a limited lookahead strategy with error fixing, which allows one pass simulation of multiple optimal caches. Second, we propose a scheme to group entries in the OPT stack, which allows efficient tree based fully-associative cache simulation under OPT. Third, we propose a scheme for exploiting partial inclusion in set-associative cache simulation under OPT. Simulators based on these algorithms were used to obtain cache miss characterizations using the OPT model for nine SPEC benchmarks. The results indicate that miss ratios under OPT are substantially lower than those under LRU replacement, by up to 70% in fully-associative caches, and up to 32% in two-way set-associative caches. Rabin A. Sugumar, Santosh G. Abraham |
SIGMETRICS | 2 |
| 1993 | Utilizing Global Simulation Information in Conservative Parallel Simulation on Shared Memory Multiprocessors
Jiajen M. Lin, Santosh G. Abraham |
J. Parallel Distributed Comput. | 2 |
| 1993 | Approaching a machine-application bound in delivered performance on scientific codeabstractA performance bounding methodology that explains the performance of loop-dominated scientific applications on particular systems is presented. The throughput of key hardware units that are common bottlenecks in concurrent machines is modeled. A workload characterization is proposed, and upper bounds on the performance of specific machine-workload pairs are derived. Comparing delivered performance with bounds focuses attention on areas for improvement and indicates how much improvement might be attainable. A detailed analysis and performance improvement effort for the IBM RS/6000 produced an average lower bound of 1.27 clocks per floating-point operation (CPF), whereas machine peak performance is 0.5 CPF and the V2.01 Fortran compiler attains only 2.43 CPF. Code improvements in this study have achieved 1.36 CPF, increasing the harmonic mean steady-state inner loop performance to 97.6% of the MFLOPS bound. Subsequently, the V2.02 compiler achieved 1.75 CPF, and 1.60 with carefully chosen preprocessing.> William H. Mangione-Smith, Tien-Pao Shih, Santosh G. Abraham, Edward S. Davidson |
Proc. IEEE | 3 |
| 1992 | Computing Radiosity Solution on a High Performance Workstation LANabstractThe notion of optimality of a parallel algorithm is closely tied to the characteristics of the parallel machine. A parallel implementation of radiosity solution is chosen for studying relationship between algorithms and parallel architectures. The radiosity method determines a view independent solution to scene illumination. This approach is computationally intensive and can benefit from parallelism. An algorithm for solving the radiosity equation was previously developed for Intel iPSC/2, a tightly coupled message passing multiprocessor. This algorithm when directly ported to IBM RS6000 LAN performed worse than a serial algorithm due to the high message latency of a LAN. Network parameters on the LAN multicomputer were measured. A new algorithm that minimizes the number of messages by increasing task granularity is proposed. The results obtained using this algorithm indicated expected performance improvements.> Gautam B. Singh, Santosh G. Abraham, Franklin H. Westervelt |
HPDC | 2 |
| 1992 | Discrete Event Simulation on Shared Memory Multiprocessors Using Global Simulation Information
Jiajen M. Lin, Santosh G. Abraham |
ICPP (3) | 2 |
| 1992 | Register requirements of pipelined processorsabstractTo enable concurrent instruction execution, scientific computers generally rely on pipelining, which combines with faster system clocks to achieve greater throughput. Each concurrently executing instruction requires buffer space, usually implemented as a register, to receive its result. This paper focuses on the issue of how many registers are required to achieve optimal performance in pipelined scientific computers. Four machine models are considered: single, double, and triple issue scalar machines, and vector machines with various register lengths. A model is presented that accurately relates the register requirements for optimum performance cyclically scheduled loops with tree-dependence graphs to the degree of function unit pipelining, the instruction issue bandwidth, and code properties. A method for finding upper and lower bounds on the minimum register requirements is also presented.The result of this work is a theory for assessing register requirements that can be used to reveal fundamental differences among machines within a space of architectural and implementation design choices. Some experimental data is also provided to support the theory. William H. Mangione-Smith, Santosh G. Abraham, Edward S. Davidson |
ICS | 2 |
| 1992 | Compile-Time Optimization of Near-Neighbor Communication for Scalable Shared Memory Architecture
David E. Hudak, Santosh G. Abraham |
J. Parallel Distributed Comput. | 2 |
| 1991 | Vector Register Design for Polycyclic Vector Schedulingabstractarticle Vector register design for polycyclic vector scheduling Share on Authors: William Mangione-Smith Department of Electrical Engineering and Computer Science, The University of Michigan, Ann Arbor, Michigan Department of Electrical Engineering and Computer Science, The University of Michigan, Ann Arbor, MichiganView Profile , Santosh G. Abraham Department of Electrical Engineering and Computer Science, The University of Michigan, Ann Arbor, Michigan Department of Electrical Engineering and Computer Science, The University of Michigan, Ann Arbor, MichiganView Profile , Edward S. Davidson Department of Electrical Engineering and Computer Science, The University of Michigan, Ann Arbor, Michigan Department of Electrical Engineering and Computer Science, The University of Michigan, Ann Arbor, MichiganView Profile Authors Info & Claims ACM SIGOPS Operating Systems ReviewVolume 25Issue Special IssueApr. 1991 pp 154–163https://doi.org/10.1145/106974.328664Published:01 April 1991 8citation339DownloadsMetricsTotal Citations8Total Downloads339Last 12 Months2Last 6 weeks0 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 SiteGet Access William H. Mangione-Smith, Santosh G. Abraham, Edward S. Davidson |
ASPLOS | 2 |
| 1991 | Parallel Simulation of Fully Associative Caches
Rabin A. Sugumar, Santosh G. Abraham |
ICPP (2) | 2 |
| 1991 | Beyond loop partitioning: data assignment and overlap to reduce communication overheadabstractIterative parallel algorithms account for many important supercomputer applications.on such algorithms, the communication of partial results stresses the memory system performance.In an earlier paper, we developed loop partitioning strategies that minimize the number of data points exchanged between processors.In this paper, we develop data placement schemes that minimize communication time.Under a given loop $bal da~a into four classes for artition our compile-time algorlthm partitions each processor.Eac rocessor may move its ezclu- !V sive read-write set (ER ), into the highest level of its hierarchy.The processor must maintain consistency on the shared read-excluszve write set (SREW) and shared read-no wlit e set (SRN W).A processor does not access the no read-wrate set (NRW).Assignment of SRNW sets to the local memory of each processor and caching of the ERW sets leads to a factor of five improvement over the default data assignment in the BBN TC2000.Features in current generation pipelined processors with multiple functional units permit the overlap of memory accesses with computation.Our experiments on the BBN TC2000 show that the degree of overlap is limited by architectural parameters, such as the number of CPU registers.We show that software redundancy in data assignments achieves 1? rester overla thus reducing communication over-: ead even furt er. David E. Hudak, Santosh G. Abraham |
ICS | 2 |
| 1991 | Compile-Time Partitioning of Iterative Parallel Loops to Reduce Cache Coherency TrafficabstractAdaptive data partitioning (ADP) which reduces the execution time of parallel programs by reducing interprocessor communication for iterative parallel loops is discussed. It is shown that ADP can be integrated into a communication-reducing back end for existing parallelizing compilers or as part of a machine-specific partitioner for parallel programs. A multiprocessor model to analyze program execution factors that lead to interprocessor communication and a model for the iterative parallel loop to quantify communication patterns within a program are defined. A vector notation is chosen to quantify communication across a global data set. Communication parameters are computed by examining the indexes of array accesses and are adjusted to reflect the underlying system architecture by compensating for cache line sizes. These values are used to generate rectangular and hexagonal partitions that reduce interprocessor communication.> Santosh G. Abraham, David E. Hudak |
IEEE Trans. Parallel Distributed Syst. | 1 |
| 1990 | Compiler techniques for data partitioning of sequentially iterated parallel loopsabstractThis paper uses bottom-up, static program partitioning to minimize the execution time of parallel programs by reducing interprocessor communication. Program partitioning is applied to a parallel programming construct known as a sequentially iterated parallel loop. This paper develops and evaluates compiler techniques to automatically generate data partitions for sequentially iterated parallel loops that minimize interprocessor communication. These techniques could be included as a communication-reducing back end for existing parallelizing compilers. David E. Hudak, Santosh G. Abraham |
ICS | 2 |
| 1988 | Blocking for Parallel Sparse Linear System Solvers
Santosh G. Abraham, Timothy A. Davis 0001 |
ICPP (1) | 1 |
| 1987 | Parallel Garbage Collection on a Virtual Memory System
Santosh G. Abraham, Janak H. Patel |
ICPP | 1 |
| 1986 | A Communication Model for Optimizing Hierarchical Multiprocessor Systems
Santosh G. Abraham, Edward S. Davidson |
ICPP | 1 |