Ken Kennedy
#24,203
Most Influential Person Now
American computer scientist
Ken Kennedy 's AcademicInfluence.com Rankings
Ken Kennedy computer-science Degrees
Computer Science
#1133
World Rank
#1173
Historical Rank
#598
USA Rank
Parallel Computing
#7
World Rank
#7
Historical Rank
#6
USA Rank
Database
#1493
World Rank
#1568
Historical Rank
#390
USA Rank
Download Badge
Computer Science
Why Is Ken Kennedy Influential?
(Suggest an Edit or Addition)According to Wikipedia, Ken Kennedy was an American computer scientist and professor at Rice University. He was the founding chairman of Rice's Computer Science Department. Kennedy directed the construction of several substantial software systems for programming parallel computers, including an automatic vectorizer for Fortran 77, an integrated scientific programming environment, compilers for Fortran 90 and High Performance Fortran, and a compilation system for domain languages based on the numerical computing environment MATLAB.
Ken Kennedy 's Published Works
Published Works
- Optimizing Compilers for Modern Architectures: A Dependence-based Approach (2001) (1134)
- Automatic translation of FORTRAN programs to vector form (1987) (833)
- Conversion of control dependence to data dependence (1983) (618)
- Compiling Fortran D for MIMD distributed-memory machines (1992) (567)
- Software prefetching (1991) (523)
- Fortran D Language Specification (1990) (412)
- Sourcebook of parallel computing (2003) (401)
- The GrADS Project: Software Support for High-Level Grid Application Development (2001) (377)
- Task scheduling strategies for workflow-based applications in grids (2005) (351)
- New Grid Scheduling and Rescheduling Methods in the GrADS Project (2004) (298)
- An Implementation of Interprocedural Bounded Regular Section Analysis (1991) (294)
- Maximizing Loop Parallelism and Improving Data Locality via Loop Fusion and Distribution (1993) (293)
- Practical dependence testing (1991) (283)
- Improving register allocation for subscripted variables (1990) (275)
- A static performance estimator to guide data partitioning decisions (1991) (240)
- Software methods for improvement of cache performance on supercomputer applications (1989) (228)
- Improving cache performance in dynamic applications through data and computation reorganization at run time (1999) (224)
- PFC: A Program to Convert Fortran to Parallel Form (1982) (220)
- Scheduling strategies for mapping application workflows onto the grid (2005) (205)
- Compiler optimizations for Fortran D on MIMD distributed-memory machines (1991) (203)
- Automatic decomposition of scientific programs for parallel execution (1987) (178)
- A technique for summarizing data access and its use in parallelism enhancing transformations (1989) (168)
- Estimating Interlock and Improving Balance for Pipelined Architectures (1988) (163)
- Parascope:a Parallel Programming Environment (1988) (162)
- Improving the ratio of memory operations to floating-point operations in loops (1994) (162)
- Analysis of interprocedural side effects in a parallel programming environment (1988) (158)
- Automatic data layout for distributed-memory machines (1998) (146)
- Interactive Parallel Programming using the ParaScope Editor (1991) (144)
- An Overview of the Fortran D Programming System (1991) (144)
- Improving Memory Hierarchy Performance for Irregular Applications Using Data and Computation Reorderings (2001) (140)
- Toward a framework for preparing and executing adaptive grid programs (2002) (139)
- Computer support for machine-independent parallel programming in Fortran D (1992) (138)
- An Integrated Compilation and Performance Analysis Environment for Data Parallel Programs (1995) (135)
- Compiler blockability of numerical algorithms (1992) (134)
- A Simple, Fast Dominance Algorithm (2001) (133)
- A Methodology for Procedure Cloning (1993) (131)
- Automatic Data Layout for High Performance Fortran (1995) (131)
- The rise and fall of High Performance Fortran: an historical object lesson (2007) (131)
- Performance of parallel processors (1989) (129)
- Automatic Data Layout Using 0-1 Integer Programming (1994) (124)
- Automatic loop interchange (1984) (124)
- Improving effective bandwidth through compiler enhancement of global cache reuse (2001) (123)
- Scalar replacement in the presence of conditional control flow (1994) (121)
- Improving memory hierarchy performance for irregular applications (1999) (119)
- Evaluation of compiler optimizations for Fortran D on MIMD distributed memory machines (1992) (118)
- Optimizing for parallelism and data locality (1992) (116)
- Fast interprocedual alias analysis (1989) (113)
- Analysis of event synchronization in a parallel programming tool (1990) (109)
- Efficient computation of flow insensitive interprocedural summary information (1984) (109)
- An algorithm for reduction of operator strength (1977) (104)
- The impact of interprocedural analysis and optimization in the Rn programming environment (1986) (103)
- Compiler Analysis for Irregular Problems in Fortran D (1992) (100)
- An Interactive Environment for Data Partitioning and Distribution (1990) (100)
- Procedure cloning (1992) (99)
- Loop distribution with arbitrary control flow (1990) (99)
- AS imple, Fast Dominance Algorithm (1999) (94)
- The ParaScope parallel programming environment (1993) (94)
- Telescoping Languages: A Strategy for Automatic Generation of Scientific Problem-Solving Systems from Annotated Libraries (2001) (91)
- Interprocedural compilation of Fortran D for MIMD distributed-memory machines (1992) (90)
- Coloring heuristics for register allocation (1989) (89)
- Efficient call graph analysis (1992) (86)
- Preliminary experiences with Fortran D compiler (1993) (86)
- The parascope editor: an interactive parallel programming tool (1993) (85)
- Interprocedural side-effect analysis in linear time (1988) (82)
- GIVE-N-TAKE—a balanced code placement framework (1994) (82)
- A model and compilation strategy for out-of-core data parallel programs (1995) (80)
- Constructing the Procedure Call Multigraph (1990) (76)
- Telescoping Languages: A System for Automatic Generation of Domain Languages (2005) (75)
- Evaluating Compiler Optimizations for Fortran D (1994) (75)
- Vector Register Allocation (1992) (74)
- Parallel program debugging with on-the-fly anomaly detection (1990) (74)
- Fast copy coalescing and live-range identification (2002) (73)
- A linear-time algorithm for computing the memory access sequence in data-parallel programs (1995) (71)
- Optimizing for parallelism and data locality (1992) (71)
- Fast Greedy Weighted Fusion (2000) (71)
- Typed Fusion with Applications to Parallel and Sequential Code Generation (1994) (68)
- Evaluation of a Workflow Scheduler Using Integrated Performance Modelling and Batch Queue Wait Time Prediction (2006) (68)
- PTOOL : A Semi-Automatic Parallel Programming Assistant (1986) (66)
- Node listings applied to data flow analysis (1975) (66)
- Interprocedural symbolic analysis (1995) (65)
- Transforming loops to recursion for multi-level memory hierarchies (2000) (65)
- Interprocedural transformations for parallel code generation (1991) (64)
- Automatic loop interchange (2004) (64)
- Compiler support for out-of-core arrays on parallel machines (1995) (64)
- The memory of bandwidth bottleneck and its amelioration by a compiler (2000) (63)
- Compiling programs for distributed-memory multiprocessors (1988) (63)
- Optimizing Java: theory and practice (1997) (63)
- Improving register allocation for subscripted variables (1990) (63)
- Automatic tuning of whole applications using direct search and a performance-based transformation system (2006) (61)
- Efficient address generation for block-cyclic distributions (1995) (60)
- Blocking Linear Algebra Codes for Memory Hierarchies (1989) (59)
- Graph grammars and global program data flow analysis (1976) (58)
- Compile-time detection of race conditions in a parallel program (1989) (57)
- Profitable loop fusion and tiling using model-driven empirical search (2006) (54)
- Automatic Data Layout for Distributed-Memory Machines in the D Programming Environment (1994) (54)
- Integrated Support for Task and Data Parallelism (1994) (54)
- Compiling Stencils in High Performance Fortran (1997) (53)
- Interprocedural constant propagation (1986) (53)
- A global flow analysis algorithm (1972) (52)
- Software support for irregular and loosely synchronous problems (1992) (51)
- A Parallel Programming Environment (1985) (50)
- Defining and Measuring the Productivity of Programming Languages (2004) (48)
- Inter-array Data Regrouping (1999) (48)
- Compilation techniques for block-cyclic distributions (1994) (47)
- Relative Performance of Scheduling Algorithms in Grid Environments (2007) (44)
- Optimal register assignment to loops for embedded code generation (1996) (43)
- Incremental dependence analysis (1990) (40)
- A Practical Environment for Scientific Programming (1987) (40)
- Telescoping languages: a compiler strategy for implementation of high-level domain-specific programming systems (2000) (39)
- Relaxing SIMD control flow constraints using loop transformations (1992) (38)
- An introduction to the set theoretical language SETL (1975) (38)
- Index Array Flattening Through Program Transformation (1995) (37)
- Improving effective bandwidth through compiler enhancement of global and dynamic cache reuse (2000) (37)
- The parascope editor: an interactive parallel programming tool (1989) (36)
- Requirements for Data-Parallel Programming Environments (1994) (36)
- Interprocedural constant propagation (1986) (36)
- Compiling Fortran 77D and 90D for MIMD distributed-memory machines (1992) (35)
- Transforming Complex Loop Nests for Locality (2004) (34)
- Advanced optimization strategies in the Rice dHPF compiler (2002) (34)
- The D Editor: a new interactive parallel programming tool (1994) (34)
- Combining dependence and data-flow analyses to optimize communication (1995) (33)
- Interprocedural optimization: eliminating unnecessary recompilation (1986) (33)
- Analyzing and visualizing performance of memory hierarchies (1990) (32)
- Experience with interprocedural analysis of array side effects (1990) (31)
- Use-Definition Chains with Applications (1978) (31)
- Analysis and transformation in an interactive parallel programming tool (1993) (30)
- Requirements for DataParallel Programming Environments (1994) (30)
- A Deterministic Attribute Grammar Evaluator Based on Dynamic Scheduling (1979) (30)
- Scalable Grid Application Scheduling via Decoupled Resource Selection and Scheduling (2006) (30)
- Automatic software cache coherence through vectorization (1992) (29)
- The National HPCC Software Exchange (1995) (28)
- Efficient computation of flow-insensitive interprocedural summary information—a correction (1988) (28)
- Automatic Type-Driven Library Generation for Telescoping Languages (2003) (28)
- Applications of a graph grammar for program control flow analysis (1977) (27)
- Iterative Data-flow Analysis , Revisited (2004) (26)
- Interactive parallelization of numerical scientific programs (1989) (26)
- Compilation techniques for block-cyclic distributions (1994) (26)
- Safety of code motion (1972) (24)
- Garbage collection and other optimizations (1988) (23)
- A Programming Environment for Fortran (1983) (23)
- Cache coherence using local knowledge (1993) (23)
- Efficient recompilation of module interfaces in a software development environment (1987) (23)
- The rise and fall of high performance Fortran (2011) (23)
- Compiler support for software prefetching (1998) (22)
- Optimizing strategies for telescoping languages: procedure strength reduction and procedure vectorization (2001) (22)
- Advanced compilation techniques for fortran d (1993) (22)
- A Comparison of Two Algorithms for Global Data Flow Analysis (1976) (21)
- Value-Based Distributions in Fortran D: A Preliminary Report (1993) (21)
- Improving Memory Hierarchy Performance through Combined Loop Interchange and Multi-Level Fusion (2004) (21)
- Interprocedural side-effect analysis in linear time (with retrospective) (1988) (20)
- Communication Generation for Cyclic(K) Distributions (1995) (20)
- Automatic blocking of QR and LU factorizations for locality (2004) (20)
- Loop fusion in high performance Fortran (1998) (20)
- Evaluating parallel languages for molecular dynamics computations (1992) (20)
- Dependence-Based Code Generation for a CELL Processor (2006) (19)
- Parameterizing loop fusion for automated empirical tuning (2005) (18)
- Unified compilation of Fortran 77D and 90D (1993) (17)
- The cost of being object-oriented: A preliminary study (1999) (17)
- Analysis and transformation in the ParaScope editor (1991) (17)
- Source book of parallel computing. (2003) (17)
- Resource-Based Communication Placement Analysis (1996) (16)
- Cross-Loop Reuse Analysis and Its Application to Cache Optimizations (1996) (16)
- JaMake: A Java Compiler Environment (2001) (16)
- Dependence Analysis of Fortran90 Array Syntax (1996) (16)
- A Cache-Conscious Profitability Model for Empirical Tuning of Loop Fusion (2005) (15)
- Redundancy elimination revisited (2008) (15)
- Software technologies (2003) (14)
- Bandwidth-Based Performance Tuning and Prediction (1999) (14)
- Reducing and Vectorizing Procedures for Telescoping Languages (2002) (14)
- Editing and compiling whole programs (1987) (13)
- Profitability computations on program flow graphs (1976) (13)
- The Scalable I/O Initiative (1995) (13)
- A static performance estimator in the Fortran D programming system (1992) (13)
- Scheduling Tasks to Maximize Usage of Aggregate Variables in Place (2009) (13)
- Parallel Programming Support in ParaScope (1988) (12)
- Prospects for Scientific Computing in Polymorphic, Object-Oriented Style (1999) (12)
- Static Interprocedural Optimizations in Java (1998) (12)
- Slice-Hoisting for Array-Size Inference in MATLAB (2003) (12)
- Integer Programming for Array Subscript Analysis (1995) (11)
- Interprocedural side-effect analysis in linear time (1988) (11)
- Scalable I/O for out-of-core struc-tures (1993) (10)
- Compiling java for high performance and the internet (2001) (10)
- Evaluating a Model for Cache Conflict Miss Prediction (2005) (10)
- A Code Placement Framework and its Application to Communication Generation (1993) (10)
- The impact of interprocedural analysis and optimization on the design of a software development environment (1985) (10)
- COMPILER ANALYSIS FOR IRREGULAR PROBLEMS IN FORTRAN (9)
- Scalarization on Short Vector Machines (2005) (9)
- Compiler technology for machine-indepenent parallel programming (1994) (9)
- What Are the Top Ten Most Influential Parallel and Distributed Processing Concepts of the Past Millenium? (2001) (9)
- KelpIO: a telescope-ready domain-specific I/O library for irregular block-structured applications (2001) (9)
- Value-Based Distributions and Alignments in Fortran D (1994) (9)
- Optimal register assignment to loops for embedded code generation (1995) (9)
- A communication placement framework with unified dependence and data-flow analysis (1996) (9)
- Practical techniques to augment dependence analysis in the presence of symbolic terms (1997) (8)
- Compilers, languages, and libraries (1998) (8)
- Value-Based Distributions in Fortran D (1994) (8)
- A research agenda for high performance computing software (1994) (8)
- Special Report: 1989 Gordon Bell Prize (1990) (8)
- Parallelization of linearized applications in Fortran D (1994) (8)
- Scheduling workflow applications in GrADS (2004) (8)
- Scalarization Using Loop Alignment and Loop Skewing (2005) (8)
- Interprocedural Compilation on Fortran D (1996) (7)
- Scalarizing Fortran 90 Array Syntax (2001) (7)
- Context optimization for SIMD execution (1994) (7)
- Optimizing Fortran 90 Shift Operations on Distributed-Memory Multicomputers (1995) (7)
- Telescoping matlab for dsp applications (2004) (7)
- A method for register allocation to loops in multiple register file architectures (1996) (6)
- Array optimizations for high productivity programming languages (2009) (6)
- Resource-Constrained Loop Fusion (6)
- Compiling scientific code for complex memory hierarchies (1991) (6)
- Strategy for Compiling Parallel Matlab for General Distributions (2006) (6)
- Compiling Parallel MATLAB for General Distributions using Telescoping Languages (2007) (5)
- A balanced code placement framework (2000) (5)
- Proceedings of the 12th ACM SIGACT-SIGPLAN symposium on Principles of programming languages (1983) (5)
- GrADSoft and its Application Manager: An Execution Mechanism for Grid Applications (2001) (5)
- An Empirical Study of Iterative Data-Flow Analysis (2006) (4)
- Loop Fusion in High Performance Fortran Loop Fusion in High Performance Fortran (1998) (4)
- Experiences in Data-Parallel Programming (1997) (4)
- Vizer : A System to Vectorize Intel x 86 Binaries (2002) (4)
- Model-guided empirical tuning of loop fusion (2008) (4)
- 1988 Gordon Bell Prize (1989) (4)
- High Performance Fortran 2.0 (2001) (4)
- Interprocedural constant propagation (with retrospective) (1986) (4)
- Automatic Data Distribution for Composite Grid Applications (1997) (4)
- Improving Compilation of Java Scientific Applications (2007) (4)
- Coloring heuristics for register allocation (with retrospective) (1989) (3)
- Software for supercomputers of the future (1992) (3)
- Compiler Blockability of Numerical Algorithms Compiler Blockability of Numerical Algorithms (1992) (3)
- Performance modeling and prediction for scientific Java applications (2006) (3)
- Why Performance Models Matter for Grid Computing (2006) (3)
- Programming Language Support for Supercomputers (1983) (3)
- PLANET: A simulation approach to PERT (1976) (3)
- Reusable software and algorithms (2003) (3)
- Parallelization support for coupled grid applications with small meshes (1996) (2)
- Evaluating Parallel Languages for Molecular Dynamics Computations Evaluating Parallel Languages for Molecular Dynamics Computations (1992) (2)
- Parallel programming considerations (2003) (2)
- Preliminary Experiences with the Fortran (1993) (2)
- A Rice University perspective on software engineering licensing (2002) (2)
- Task SURVIVABILITY AND MAKESPAN DRIVEN GRID WORKFLOW SCHEDULING 1313 scheduling strategies for workf (2005) (2)
- Parallel processing for scientific computing. Proceedings (1992) (2)
- Improving register allocation for subscripted variables (with retrospective) (1990) (2)
- Compiler Techniques for Software Prefetching of Cache-Coherent Shared-Memory Multiprocessors (1997) (2)
- High Performance Fortran (1997) (2)
- Interprocedural Compilation of Fortran D (extended Version) Interprocedural Compilation of Fortran D (1996) (2)
- Languages, Compilers, and Run-Time Systems (2004) (2)
- Almost-whole-program compilation (2002) (2)
- Toward a tool for scheduling application workflows onto distributed grid systems (2006) (2)
- Proceedings of the Fifth SIAM Conference on Parallel Processing for Scientific Computing, Houston, Texas, USA, March 25-27, 1991 (1992) (2)
- An Empirical Study of Cross-loop Reuse in the NAS benchmarks (1995) (2)
- GIVE-N-TAKE - A Balanced Code Placement Framework (1994) (2)
- Scheduling Algorithms Performance Evaluation in Grid Environments (2006) (1)
- Context Optimization for Simd Execution Context Optimization for Simd Execution (1994) (1)
- Parallel Processing for Scientific Computing. (1993) (1)
- Management of the Nationale HPCC Software Exchange - A Virtual Distributed Digital Library (1995) (1)
- Automatic Decomposition of Fortran Programs for Execution on Multiprocessors-Abstract (1987) (1)
- Wrap-up and signposts to the future (2003) (1)
- Programming environments for supercomputers (1990) (1)
- Management of the NHSE -- a Virtual Distributed Digital Library (1995) (1)
- Compiling Scientific Programs for Scalable Parallel Systems (2001) (1)
- 6 Related Work (1993) (1)
- Static Type Inference for Specialization in a Telescoping Compiler (2004) (1)
- Automatic loop interchange (with retrospective) (1984) (1)
- The Prospects for Architecture-Independent Parallel Programming. (1994) (1)
- \demonstration of Automatic Data Partitioning Techniques for Par- Allelizing Compilers on Multicomputers," Ieee Transactions on Parallel and Distributed Systems, 6 Case Study: a Purdue-set Benchmark Loop 5 Case Study: Linear System Solver 4 Communication Cost Model 3 Computation Cost Model (1993) (1)
- An Experimental Computer Network to Support Numerical Computation (1982) (1)
- Interactive Parallel Programming Using the Parascope Editor Interactive Parallel Programming Using the Parascope Editor (1991) (1)
- NewGrid Scheduling 1 and ReschedulingMethods 2 in the GrADS Project (2005) (1)
- A SOURCE-LEVEL MATLAB TRANSFORMER FOR DSP APPLICATIONS (2004) (1)
- High Performance Fortran And Its Role In Architecture - Independent Parallel Programing (1994) (0)
- Software Support for High Performance Problem-Solving on Computational Grids (2001) (0)
- An Afternoon of Birding on Mitlenatch Island B.C. (1965) (0)
- Software Challenges for Multicore Computing (2006) (0)
- The Center for Grid Applications Development Software (1998) (0)
- Loop Distribution with Arbitrary Control Flow Loop Distribution with Arbitrary Control Flow (1990) (0)
- Grades Based on : RQ ZHHNO \ KRPHZRUN (2003) (0)
- Interprocedural Transformations for Parallel Code Generation Interprocedural Transformations for Parallel Code Generation (1991) (0)
- Chapter 2 Parallel Programming Considerations (0)
- Centers of Supercomputing (1994) (0)
- Automatic Data Layout for High Performance Fortran Automatic Data Layout for High Performance Fortran (1994) (0)
- Languages and compilers (2003) (0)
- The case for a next generation Internet (1998) (0)
- Experiences in Data-Parallel Progrannning (2014) (0)
- Parallel Processing: What Have We Done Wrong? (1994) (0)
- The ParaScope parallel programming environment : Languages and compilers (1993) (0)
- Proceedings of the IEEE/ACM SC95 Conference - Table of Contents (1995) (0)
- Proceedings of the 6th international conference on Supercomputing (1992) (0)
- Parameterization and Search-space Exploitation of Loop Fusion (2005) (0)
- Compiling Fortran D Single-instruction, Multiple-data (0)
- Cache Coherence Using LocalKnowledgeErvan (1993) (0)
- Distributed Information Management in the National HPCC Software Exchange (1995) (0)
- Compilation Techniques for Block-cyclic Distributions Compilation Techniques for Block-cyclic Distributions (1995) (0)
- Making parallel computing truly usable: research, education, and knowledge transfer at the center for research on parallel computation (1994) (0)
- Compiling almost-whole Java programs: Research Articles (2005) (0)
- United States Patent (2001) (0)
- Object-Oriented Type Inference for Telescoping Languages (2004) (0)
- Keynote Address: The Prospects For Architecture-independent Parallel Programming (1994) (0)
- Optimization of Compiled Code in the IRn Programming Environment (2007) (0)
- Pathlistings applied to data flow analysis (1981) (0)
- AN ANALYSIS OF THE COSTS OF MICROFILMING (1975) (0)
- Memory Bandwith Based Performance Tuning Prediction Memory-bandwidth Based Performance Tuning and Prediction (1998) (0)
- Tailoring traditional optimizations for runtime compilation (2007) (0)
- Supercomputing - Introduction to the Special Section (1992) (0)
- A type-based prototype compiler for telescoping languages (2009) (0)
- Array syntax compilation and performance tuning (2007) (0)
- Methodologies and Artifacts in Software Design (2006) (0)
- The prospects for architecture-independent parallel programming (abstract) (1995) (0)
- ICASE Report No . 92-22 DTIC ELECTE ICASE 3 A 119920 COMPILER ANALYSIS FOR IRREGULAR PROBLEMS IN FORTRAN D ADA 253 885 (0)
- Distributed Information Management in the National HPCC Software Exchange (1995) (0)
- Eecient Address Generation for Block-cyclic Distributions Eecient Address Generation for Block-cyclic Distributions (2007) (0)
- Compiling almost‐whole Java programs (2005) (0)
- Compiling Fortran 77 D and 90 D forMIMD Distributed-Memory (1992) (0)
- The Theory of Practice (1959) (0)
- Priorities and Strategies (2004) (0)
- Compiling for Increasing On-chip Parallelism (2006) (0)
- Type-Based Speculative Specialization in a Telescoping Compiler for Matlab (2009) (0)
- Means of Achieving Cross-program Focus, Coordination, and Technology Transfer (1995) (0)
This paper list is powered by the following services:
Other Resources About Ken Kennedy
What Schools Are Affiliated With Ken Kennedy ?
Ken Kennedy is affiliated with the following schools: