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

Kang Su Gatlin

dblp:24/2895 · DBLP profile ↗
← Back
5ranked-venue papers
2as first author
0since 2021 · last 1999
—ORCID · none

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

Systems, architecture and hardware · 4 · 2 first-authorTheory of computation · 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
5 papers
Memory systems · 28% Processor architecture and microarchitecture · 24% Parallel and multicore computing · 21%
Theoretical computer science
2 papers
Algorithms and data structures · 68% Combinatorics and discrete mathematics · 32%
Interdisciplinary, comprehensive, and emerging computing
1 paper
Bioinformatics and computational biology · 100%

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

TopicWeightPapersLastEvidence papers
Memory systems
memory hierarchy
0.021999
Memory Hierarchy Considerations for Fast Transpose and Bit-Reversals · HPCA 1999
Towards an Optimal Bit-Reversal Permutation Program · FOCS 1998
High-performance computing
performance optimization
0.021999
Architecture-Cognizant Divide and Conquer Algorithms · SC 1999
Microparallelism and High-Performance Protein Matching · SC 1995
Parallel and multicore computing › parallel algorithms
divide-and-conquer
0.011999
Architecture-Cognizant Divide and Conquer Algorithms · SC 1999
Parallel and multicore computing
parallel algorithms
0.011999
Architecture-Cognizant Divide and Conquer Algorithms · SC 1999
Memory systems
cache
0.011998
Towards an Optimal Bit-Reversal Permutation Program · FOCS 1998
Processor architecture and microarchitecture
memory latency tolerance
0.011998
Multi-processor Performance on the Tera MTA · SC 1998
Processor architecture and microarchitecture
multithreading
0.011998
Multi-processor Performance on the Tera MTA · SC 1998
Performance modeling and evaluation
parallel performance evaluation
0.011998
Multi-processor Performance on the Tera MTA · SC 1998
Algorithms and data structures
bit-reversal permutation
0.011998
Towards an Optimal Bit-Reversal Permutation Program · FOCS 1998
Combinatorics and discrete mathematics
permutation
0.011998
Towards an Optimal Bit-Reversal Permutation Program · FOCS 1998
Bioinformatics and computational biology
sequence alignment
0.011995
Microparallelism and High-Performance Protein Matching · SC 1995
Bioinformatics and computational biology › sequence alignment › dynamic programming alignment
smith-waterman algorithm
0.011995
Microparallelism and High-Performance Protein Matching · SC 1995
Processor architecture and microarchitecture
instruction-level parallelism
0.011995
Microparallelism and High-Performance Protein Matching · SC 1995

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

lower bound analysis · 0.0pebble game · 0.0z-buffer parallelism · 0.0floating-point arithmetic substitution · 0.0dynamic programming · 0.0lower bounds · 0.0lower bound · 0.0amdahl's law analysis · 0.0NAS benchmarks · 0.0
YearPublicationVenuePosition
1999 Memory Hierarchy Considerations for Fast Transpose and Bit-Reversals
abstract
This paper explores the interplay between algorithm design and a computer's memory hierarchy. Matrix transpose and the bit-reversal reordering are important scientific subroutines which often exhibit severe performance degradation due to cache and TLB associativity problems. We give lower bounds that show for typical memory hierarchy designs, extra data movement is unavoidable. We also prescribe characteristics of various levels of the memory hierarchy needed to perform efficient bit-reversals. Insight gained from our analysis leads to the design of a near optimal bit-reversal algorithm. This Cache Optimal Bit Reverse Algorithm (COBRA) is implemented on the Digital Alpha 21164, Sun Ultrasparc 2, and IBM Power2. We show that COBRA is near optimal with respect to execution time on these machines and performs much better than previous best known algorithms.
Kang Su Gatlin, Larry Carter
HPCA1
1999 Architecture-Cognizant Divide and Conquer Algorithms
abstract
Divide and conquer programs can achieve good performance on parallel computers and computers with deep memory hierarchies. We introduce architecture-cognizant divide and conquer algorithms, and explore how they can achieve even better performance. An architecture-cognizant algorithm has functionallyequivalent variants of the divide and/or combine functions, and a variant policy that specifies which variant to use at each level of recursion. An optimal variant policy is chosen for each target computer via experimentation. With h levels of recursion, an exhaustive search requires #(v h ) experiments (where v is the number of variants). We present a method based on dynamic programming that reduces this to #(h c ) (where c is typically a small constant) experiments for a class of architecture-cognizant programs. We verify our technique on two kernels (matrix multiply and 2-D Point Jacobi) using three architectures. Our technique improves performance by up to a factor of two, compared...
Kang Su Gatlin, Larry Carter
SC1
1998 Towards an Optimal Bit-Reversal Permutation Program
abstract
The speed of many computations is limited not by the number of arithmetic operations but by the time it takes to move and rearrange data in the increasingly complicated memory hierarchies of modern computers. Array transpose and the bit-reversal permutation-trivial operations on a RAM-present non-trivial problems, when designing highly-tuned scientific library functions, particular for the Fast Fourier Transform. We prove a precise bound for RoCol, a simple pebble-type game that is relevant to implementing these permutations. We use RoCol to give lower bounds on the amount of memory traffic in a computer with four-levels of memory (registers, cache, TLB, and memory), taking into account such "messy" features as block moves and set-associative caches. The insights from this analysis lead to a bit-reversal algorithm whose performance is close to the theoretical minimum. Experiments show that it performs significantly better than every program in a comprehensive study of 30 published algorithms.
Larry Carter, Kang Su Gatlin
FOCS2
1998 Multi-processor Performance on the Tera MTA
abstract
The Tera MTA is a revolutionary commercial computer based on a multithreaded processor architecture. In contrast to many other parallel architectures, the Tera MTA can effectively use high amounts of parallelism on a single processor. By running multiple threads on a single processor, it can tolerate memory latency and to keep the processor saturated. If the computation is sufficiently large, it can benefit from running on multiple processors. A primary architectural goal of the MTA is that it provide scalable performance over multiple processors. This paper is a preliminary investigation of the first multi-processor Tera MTA. In a previous paper [1] we reported that on the kernel NAS 2 benchmarks [2], a single-processor MTA system running at the architected clock speed would be similar in performance to a single processor of the Cray T90. We found that the compilers of both machines were able to find the necessary threads or vector operations, after making standard changes to the random number generator. In this paper we update the single-processor results in two ways: we use only actual clock speeds, and we report improvements given by further tuning of the MTA codes. We then investigate the performance of the best single-processor codes when run on a two-processor MTA, making no further tuning effort. The parallel efficiency of the codes range from 77% to 99%. An analysis shows that the "serial bottlenecks" -- unparallelized code sections and the cost of allocating and freeing the parallel hardware resources -- account for less than a percent of the runtimes. Thus, Amdahl's Law needn't take effect on the NAS benchmarks until there are hundreds of processors running thousands of threads. Instead, the major source of inefficiency appears to be an imperfect network connecting the processors to the memory. Ideally, the network can support one memory reference per instruction. The current hardware has defects that reduce the throughput to about 85% of this rate. Except for the EP benchmark, the tuned codes issue memory references at nearly the peak rate of one per instruction. Consequently, the network can support the memory references issued by one, but not two, processors. As a result, the parallel efficiency of EP is near- perfect, but the others are reduced accordingly. Another reason for imperfect speedup pertains to the compiler. While the definition of a thread in a single processor or multi-processor mode is essentially the same, there is a different implementation and an associated overhead with running on multiple processors. We characterize the overhead of running "frays" (a collection of threads running on a single processor) and "crews" (a collection of frays, one per processor.)
Allan Snavely, Larry Carter, Jay Boisseau, Amitava Majumdar 0001, Kang Su Gatlin, Nick Mitchell, John Feo, Brian D. Koblenz
SC5
1995 Microparallelism and High-Performance Protein Matching
abstract
The Smith-Waterman algorithm is a computationally-intensive string-matching operation that is fundamental to the analysis of proteins and genes. In this paper, we explore the use of some standard and novel techniques for improving its performance. We begin by tuning the algorithm using conventional techniques. These make modest performance improvements by providing efficient cache usage and inner-loop code. One novel technique uses the z-buffer operations of the Intel i860 architecture to perform 4 independent computations in parallel. This achieves a five-fold speedup over the optimized code (six-fold over the original). We also describe a related technique that could be used by processors that have 64-bit integer operations, but no z-buffer. Another new technique uses floating-point multiplies and adds in place of the standard algorithm's integer additions and maximum operations. This gains more than a three-fold speedup on the IBM POWER2 processor. This method doesn't give the identical answers as the original program, but experimental evidence shows that the inaccuracies are small and do not affect which strings are chosen as good matches by the algorithm.
Bowen Alpern, Larry Carter, Kang Su Gatlin
SC3