Monica Lam
Kleiner Perkins, Mayfield, Sequoia Capital Professor in the School of Engineering and Professor, by courtesy, of Electrical Engineering
Computer Science
Bio
Dr. Monica Lam is a Professor in the Computer Science Department at Stanford University, and the Faculty Director of the Stanford Open Virtual Assistant Laboratory. Dr. Monica Lam obtained her BS degree in computer science from University of British Columbia, and her PhD degree in computer science from Carnegie Mellon University in 1987. She joined Stanford in 1988.
Professor Lam's current research is on conversational virtual assistants with an emphasis on privacy protection. Her research uses deep learning to map task-oriented natural language dialogues into formal semantics, represented by a new executable programming language called ThingTalk. Her Almond virtual assistant, trained on open knowledge graphs and IoT API standards, can be easily customized to perform new tasks. She is leading an Open Virtual Assistant Initiative to create the largest, open, crowdsourced language semantics model to promote open access in all languages. Her decentralized Almond virtual assistant that supports fine-grain sharing with privacy has received Popular Science's Best of What's New Award in Security in 2019.
Prof. Lam is also an expert in compilers for high-performance machines. Her pioneering work of affine partitioning provides a unifying theory to the field of loop transformations for parallelism and locality. Her software pipelining algorithm is used in commercial systems for instruction level parallelism. Her research team created the first, widely adopted research compiler, SUIF. She is a co-author of the classic compiler textbook, popularly known as the “dragon book”. She was on the founding team of Tensilica, now a part of Cadence.
Dr. Lam is a Member of the National Academy of Engineering and an Association of Computing Machinery (ACM) Fellow.
Academic Appointments
-
Professor, Computer Science
-
Professor (By courtesy), Electrical Engineering
-
Faculty Affiliate, Institute for Human-Centered Artificial Intelligence (HAI)
Honors & Awards
-
ASPLOS Influential Paper Award, ACM (2021)
-
Member, National Academy of Engineering (2019)
-
Computer Science 50th Anniversary Research Award, University of British Columbia (2018)
-
Fellow, ACM (2007)
-
SIGSOFT Distinguished Paper Award, ACM (2002)
-
Most Influential Programming Language Design and Implementation Paper Award, ACM (2001)
-
Young Investigator Award, National Science Foundation (1992)
Professional Education
-
PhD, Carnegie Mellon University, Computer Science (1987)
-
MS, Carnegie Mellon University, Computer Science (1982)
-
BS (Hons), University of British Columbia, Computer Science (1980)
2024-25 Courses
- Conversational Virtual Assistants with Deep Learning
CS 224V (Aut) - Program Analysis and Optimizations
CS 243 (Win) -
Independent Studies (14)
- Advanced Reading and Research
CS 499 (Aut, Win, Spr) - Advanced Reading and Research
CS 499P (Aut, Win, Spr) - Curricular Practical Training
CS 390A (Aut, Win, Spr) - Curricular Practical Training
CS 390B (Aut, Win, Spr) - Curricular Practical Training
CS 390C (Aut, Win, Spr) - Independent Project
CS 399 (Aut, Win, Spr) - Independent Project
CS 399P (Aut, Win, Spr) - Independent Work
CS 199 (Aut, Win, Spr) - Independent Work
CS 199P (Aut, Win, Spr) - Part-time Curricular Practical Training
CS 390D (Aut, Win, Spr) - Programming Service Project
CS 192 (Aut, Win, Spr) - Senior Project
CS 191 (Aut, Win, Spr) - Supervised Undergraduate Research
CS 195 (Aut, Win, Spr) - Writing Intensive Senior Research Project
CS 191W (Aut, Win, Spr)
- Advanced Reading and Research
-
Prior Year Courses
2023-24 Courses
- Conversational Virtual Assistants with Deep Learning
CS 224V (Aut) - Program Analysis and Optimizations
CS 243 (Win)
2022-23 Courses
- Conversational Virtual Assistants with Deep Learning
CS 224V (Aut) - Program Analysis and Optimizations
CS 243 (Win)
2021-22 Courses
- Conversational Virtual Assistants with Deep Learning
CS 224V (Aut)
- Conversational Virtual Assistants with Deep Learning
Stanford Advisees
-
Orals Evaluator
Jackie Yang -
Master's Program Advisor
Olayinka Adekola, Diego Ahmad-Stein, Vrushank Gunjur, Noah Kuo, Leeah Michael, Priti Rangnekar, Aditya Saligrama -
Doctoral Dissertation Co-Advisor (AC)
Jackie Yang -
Doctoral (Program)
Harshit Joshi, Shicheng Liu
All Publications
-
Zero-Shot Transfer Learning with Synthesized Data for Multi-Domain Dialogue State Tracking
ASSOC COMPUTATIONAL LINGUISTICS-ACL. 2020: 122–32
View details for Web of Science ID 000570978200012
-
Genie: A Generator of Natural Language Semantic Parsers for Virtual Assistant Commands
ASSOC COMPUTING MACHINERY. 2019: 394–410
View details for DOI 10.1145/3314221.3314594
View details for Web of Science ID 000523190300026
-
Controlling Fine-Grain Sharing in Natural Language with a Virtual Assistant
Proceedings of the ACM on Interactive, Mobile, Wearable and Ubiquitous Technologies (IMWUT)
2018
View details for DOI 10.1145/3264905
-
Brassau: Automatically Generating Graphical User Interfaces for Virtual Assistants
20th International Conference on Human-Computer Interaction with Mobile Devices and Services. (MobileHCI)
2018
View details for DOI 10.1145/3229434.3229481
-
Almond: The Architecture of an Open, Crowdsourced, Privacy-Preserving, Programmable Virtual Assistant
Proceedings of the 26th World Wide Web Conference
2017
View details for DOI 10.1145/3038912.3052562
- Musubi: Disintermediated Interactive Social Feeds for Mobile Devices 2012
- Compilers: Principles, Techniques and Tools. 2006
-
Interprocedural parallelization analysis in SUIF
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS
2005; 27 (4): 662-731
View details for Web of Science ID 000231271100003
-
Cloning-based context-sensitive pointer alias analysis using binary decision diagrams
Conference on Programming Language Design and Implementation
ASSOC COMPUTING MACHINERY. 2004: 131–44
View details for Web of Science ID 000223120900012
-
Software pipelining: An effective scheduling technique for VLIW machines
ACM SIGPLAN NOTICES
2004; 39 (4): 244-245
View details for Web of Science ID 000221895400042
-
A data locality optimizing algorithm
ACM SIGPLAN NOTICES
2004; 39 (4): 445-459
View details for Web of Science ID 000221895400071
-
Maximizing parallelism and minimizing synchronization with affine partitions
24th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
ELSEVIER SCIENCE BV. 1998: 445–75
View details for Web of Science ID 000074515700007
-
A DATA LOCALITY OPTIMIZING ALGORITHM
CONF ON PROGRAMMING LANGUAGE : DESIGN AND IMPLEMENTATION
ASSOC COMPUTING MACHINERY. 1991: 30–44
View details for Web of Science ID A1991FP75600004
-
HybridTrak: Adding Full-Body Tracking to VR Using an Off-the-Shelf Webcam
ASSOC COMPUTING MACHINERY. 2022
View details for DOI 10.1145/3491102.3502045
View details for Web of Science ID 000890212503050
-
DIY Assistant: A Multi-modal End-User Programmable Virtual Assistant
ASSOC COMPUTING MACHINERY. 2021: 312-327
View details for DOI 10.1145/3453483.3454046
View details for Web of Science ID 000723661700087
-
Soundr: Head Position and Orientation Prediction Using a Microphone Array
ASSOC COMPUTING MACHINERY. 2020: 529-537
Abstract
As a lincosamide antibiotic, lincomycin is still important for treating diseases caused by Gram-positive bacteria. Manufacturing of lincomycin needs efforts to, e.g. maximize desirable species and minimizing unwanted fermentation byproducts. Analysis of the lincomycin biosynthetic gene cluster of Streptomyces lincolnensis, lmbB1, was shown to catalyze the conversion of L-dopa but not of L-tyrosine and then further generated the precursor of lincomycin A. Based on the principle of directed breeding, a strain termed as S. lincolnensis 24-2, was obtained in this work. By overexpressing the lmbB1 gene, this strain produces efficacious lincomycin A and suppresses melanin generation, whereas contains unwanted lincomycin B. The good fermentation performance of the mutant-lmbB1 (M-lmbB1) was also confirmed in a 15 L-scale bioreactor, which increased the lincomycin A production by 37.6% compared with control of 6435 u/mL and reduced the accumulation of melanin by 29.9% and lincomycin B by 73.4%. This work demonstrated that the amplification of lmbB1 gene mutation and metabolic engineering could promote lincomycin biosynthesis and might be helpful for reducing the production of other industrially unnecessary byproduct.
View details for DOI 10.1145/3313831.3376427
View details for Web of Science ID 000695438100099
View details for PubMedID 31916478
-
Soteria: A Provably Compliant User Right Manager Using a Novel Two-Layer Blockchain Technology
IEEE. 2020
View details for DOI 10.1109/IEEECONF47748.2020.9377624
View details for Web of Science ID 000682947000011
-
Keeping the Internet Open with an Open-Source Virtual Assistant
ASSOC COMPUTING MACHINERY. 2018: 145–46
View details for DOI 10.1145/3241539.3241586
View details for Web of Science ID 000485228900010
-
SociaLite: An Efficient Graph Query Language Based on Datalog
IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING
2015; 27 (7): 1824-1837
View details for DOI 10.1109/TKDE.2015.2405562
View details for Web of Science ID 000355937800008
-
Dispatch: Secure, Resilient Mobile Reporting
SIGCOMM Conference
ASSOC COMPUTING MACHINERY. 2013: 459–60
View details for DOI 10.1145/2534169.2491697
View details for Web of Science ID 000327465900046
-
SociaLite: Datalog Extensions for Efficient Social Network Analysis
29th IEEE International Conference on Data Engineering (ICDE)
IEEE. 2013: 278–289
View details for Web of Science ID 000326733500026
- SociaLite: Datalog Extensions for Efficient Social Network Analysis 2013
- Processing Email Archives in Special Collections 2012
- Effective Browsing and Serendipitous Discovery with an Experience-Infused Browser 2012
- Friends, Romans, Countrymen: Lend me your URLs, Using Social Chatter to Personalize Web Search. 2012
- An Algorithm and Analysis of Social Topologies from Email and Photo Tags 2011
- Sentiment Analysis on Personal Email Archives 2011
- Micro-Interactions with NFC-Enabled Mobile Phones 2011
- Groups Without Tears: Mining Social Topologies from Email. 2011
- Email Clients as Decentralized Social Apps in Mr. Privacy 2011
- MUSE: Reviving Memories Using Email Archives 2011
- Secure, Consumer-Friendly Web Authentication and Payments with a Phone. 2010
- PrPl: a Decentralized Social Networking Infrastructure. 2010
- InvisiType: Object-Oriented Security Policies. 2010
- Life-Browsing with a Lifetime of Email. 2010
- All Friends are Not Equal: Using Weights in Social Graphs to Improve Search 2010
- Towards Software-Friendly Networks 2010
- PhoneNet: a Phone-to-Phone Network for Group Communication in a LAN. 2010
-
Automatic Dimension Inference and Checking for Object-Oriented Programs
31st International Conference on Software Engineering (ICSE 2009)
IEEE. 2009: 155–165
View details for Web of Science ID 000271438200015
-
Securing Web Applications with Static and Dynamic Information Flow Tracking
ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation
ASSOC COMPUTING MACHINERY. 2008: 3–12
View details for Web of Science ID 000267583600001
- Automatic Generation of XSS and SQL Injection Attacks with Goal-Directed Model Checking. 2008
- Securing Web Applications Using Static and Dynamic Information Flow Tracking 2008
-
Automatic inference of stationary fields: a generalization of java's final fields
35th Annual ACM SIGPLAN/SIGACT Symposium on Principles of Programming Language
ASSOC COMPUTING MACHINERY. 2008: 183–95
View details for Web of Science ID 000256500600019
-
Automatic Inference of Stationary Fields: a Generalization of Java's Final Fields
35th ACM-SIGPLAN-SIGACT Symposium on Principles of Programming Languages
ASSOC COMPUTING MACHINERY. 2008: 183–195
View details for Web of Science ID 000265876500017
- Static Detection of Leaks in Polymorphic Containers. 2006
-
Finding application errors and security flaws using PQL: a program query language
20th Conference on Object-Oriented Programming, Systems, Languages and Applications
ASSOC COMPUTING MACHINERY. 2005: 365–83
View details for Web of Science ID 000233404900024
-
Using datalog with binary decision diagrams for program analysis
3rd Asian Symposium on Programming Languages and Systems
SPRINGER-VERLAG BERLIN. 2005: 97–118
View details for Web of Science ID 000233897200007
- Context-Sensitive Program Analysis as Database Queries. 2005
- Improving Software Security with A C Pointer Alias Analysis. 2005
- Finding Security Vulnerabilities in Java Applications Using Static Analysis. 2005
- Finding Application Errors using PQL: a Program Query Language. 2005
-
The collective: A cache-based system management architecture
2nd Symposium on Networked Systems Design and Implementation (NSDI 05)
USENIX ASSOC. 2005: 259–272
View details for Web of Science ID 000230945500019
-
Improving software security with a C pointer analysis
27th International Conference on Software Engineering (ICSE 2005)
ASSOC COMPUTING MACHINERY. 2005: 332–341
View details for Web of Science ID 000235638200047
-
Finding security vulnerabilities in Java applications with static analysis
14th USENIX Security Symposium
USENIX ASSOC. 2005: 271–286
View details for Web of Science ID 000231792900018
-
Reflection analysis for Java
3rd Asian Symposium on Programming Languages and Systems
SPRINGER-VERLAG BERLIN. 2005: 139–160
View details for Web of Science ID 000233897200010
-
A data locality optimizing algorithm
ACM SIGPLAN NOTICES
2004; 39 (4): 442-444
View details for Web of Science ID 000221895400070
- A Retrospective: Software Pipelining: An Effective Scheduling Technique for VLIW Machines. In 20 Years of PLDI (1979-1999): A Selection. 2004: 1
- A Practical Dynamic Buffer Overflow Detector. 2004
- A Retrospective: A Data Locality Optimizing Algorithm In 20 Years of PLDI (1979-1999): A Selection. 2004: 1
-
A practical flow-sensitive and context-sensitive C and C++ memory leak detector
Conference on Programming Language Design and Implementation
ASSOC COMPUTING MACHINERY. 2003: 168–81
View details for Web of Science ID 000183824300015
-
A SMART scheduler for multimedia applications
ACM TRANSACTIONS ON COMPUTER SYSTEMS
2003; 21 (2): 117-163
View details for Web of Science ID 000182125600001
-
Challenges and new approaches to program analysis
12th International Conference on Parallel Architectures and Compilation Techniques (PACT 2003)
IEEE COMPUTER SOC. 2003: 102–102
View details for Web of Science ID 000186331000011
- Virtual Appliances in the Collective: A Road to Hassle-free Computing 2003
- Tracking Pointers with Path and Context Sensitivity for Bug Detection in C Programs 2003
-
Virtual appliances for deploying and maintaining software
17th Large Installation Systems Administration Conference
USENIX ASSOC. 2003: 181–194
View details for Web of Science ID 000221658300018
-
Enhancing software reliability with speculative threads
ACM SIGPLAN NOTICES
2002; 37 (10): 184-196
View details for Web of Science ID 000179871700015
-
An efficient inclusion-based points-to analysis for strictly-typed languages
9th International Static Analysis Symposium
SPRINGER-VERLAG BERLIN. 2002: 180–195
View details for Web of Science ID 000187294400015
- Tracking Down Software Bugs Using Automatic Anomaly Detection 2002
- Automatic Extraction of Object-Oriented Component Interfaces 2002
- Enhancing Software Reliability using Speculative Threads 2002
-
Optimizing the migration of virtual computers
5th Symposium on Operation Systems Design and Implementation (OSDI 02)
USENIX ASSOC. 2002: 377–390
View details for Web of Science ID 000180402100026
-
Blocking and array contraction across arbitrarily nested loops using affine partitioning
8th ACM SIGPLAN Symposium on the Principles and Practice of Parallel Computing
ASSOC COMPUTING MACHINERY. 2001: 103–12
View details for Web of Science ID 000170206900014
- Cache Optimizations With Affine Partitioning 2001
-
Cutting-edge designs
IEEE MICRO
2000; 20 (2): 14-15
View details for Web of Science ID 000086194900007
-
Program analysis with partial transfer functions
ACM SIGPLAN NOTICES
1999; 34 (11): 94-103
View details for Web of Science ID 000084855700014
-
SUIF explorer: An interactive and interprocedural parallelizer
ACM SIGPLAN NOTICES
1999; 34 (8): 37-48
View details for Web of Science ID 000082827400005
- A Compiler for Creating Evolutionary Software and Application Experience Technical Report CSL-TR-99-782, Stanford University 1999
- An Affine Partitioning Algorithm to Maximize Parallelism and Minimize Communication 1999
- In Search of Speculative Thread-Level Parallelism 1999
- The Interactive Performance of SLIM: a Stateless, Thin-Client Architecture 1999
-
The design, implementation, and evaluation of Jade
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS
1998; 20 (3): 483-545
View details for Web of Science ID 000075619700001
- The Design, Implementation and Evaluation of Jade ACM Transactions on Programming Languages and Systems 1998; 3 (20): 483-545
- The Domain Parallel Computation Model on Warp. 1998
- Multimedia on Multiprocessors: Where's the OS When You Really Need it 1998
-
SMART UNIX SVR4 support for multimedia applications
IEEE International Conference on Multimedia Computing and Systems 97
IEEE COMPUTER SOC. 1997: 404–414
View details for Web of Science ID A1997BJ05W00049
- Maximizing Parallelism and Minimizing Synchronization with Affine Transforms 1997
- The Design, Implementation and Evaluation of SMART: a Scheduler for Multimedia Applications 1997
- Software and Hardware for Exploiting Speculative Parallelism with a Multiprocessor Technical Report CSL-TR-97-715, Stanford University 1997
- The Design, Implementation and Evaluation of SMART: a Scheduler for Multimedia Applications Technical Report CSL-TR-97-721, Stanford University 1997
- SMART UNIX SV4 Support for Multimedia Applications 1997
-
Maximizing multiprocessor performance with the SUIF compiler
COMPUTER
1996; 29 (12): 84-?
View details for Web of Science ID A1996VX48300018
-
Compiler-directed page coloring for multiprocessors
7th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS-VII)
ASSOC COMPUTING MACHINERY. 1996: 244–55
View details for Web of Science ID A1996VM12800024
-
Multiprocessors from a software perspective
IEEE MICRO
1996; 16 (3): 52-61
View details for Web of Science ID A1996UM68000012
-
Transparent fault tolerance for parallel applications on networks of workstations
USENIX 1996 Annual Technical Conference
USENIX ASSOC. 1996: 329–341
View details for Web of Science ID A1996BF11Y00027
- Context-Sensitive Interprocedural Analysis in the Presence of Dynamic Aliasing 1996
- Current Status of the SUIF Research Project The Data Parallel Programming Model: Foundations, HPF Realization, and Scientific Applications edited by Perrin, G., R., Darte, A. Springer. 1996: 65–75
-
DATA AND COMPUTATION TRANSFORMATIONS FOR MULTIPROCESSORS
5th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming
ASSOC COMPUTING MACHINERY. 1995: 166–78
View details for Web of Science ID A1995RP18800018
-
EFFICIENT CONTEXT-SENSITIVE POINTER ANALYSIS FOR C PROGRAMS
ACM SIGPLAN 95 Conference on Programming Language Design and Implementation
ASSOC COMPUTING MACHINERY. 1995: 1–12
View details for Web of Science ID A1995RF78400002
-
EFFECTIVENESS OF DATA DEPENDENCE ANALYSIS
INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING
1995; 23 (1): 63-81
View details for Web of Science ID A1995QJ76700004
-
A general method for compiling event driven simulations
32nd Design Automation Conference
ASSOC COMPUTING MACHINERY. 1995: 151–156
View details for Web of Science ID A1995BD41Y00026
- Integrated Processor Scheduling for Multimedia 1995
- A Method and Apparatus for Measuring Media Synchronization 1995
- A General Method for Compiling Event-Driven Simulations 1995
- A Fully Interprocedural System for Automatic Parallelization 1995
- Unified Compilation Techniques for Shared and Distributed Address Space Machines 1995
- Detecting Coarse-Grain Parallelism Using an Interprocedural Parallelizing Compiler 1995
- Hot Compilers for Future Hot Chips In Hot Chips VII 1995
-
AN OVERVIEW OF THE SUIF COMPILER FOR SCALABLE PARALLEL MACHINES
7th SIAM Conference on Parallel Processing for Scientific Computing
SIAM. 1995: 662–667
View details for Web of Science ID A1995BC53B00147
-
SUIF - AN INFRASTRUCTURE FOR RESEARCH ON PARALLELIZING AND OPTIMIZING COMPILERS
SIGPLAN NOTICES
1994; 29 (12): 31-37
View details for Web of Science ID A1994PX39000005
-
FALSE SHARING AND SPATIAL LOCALITY IN MULTIPROCESSOR CACHES
IEEE TRANSACTIONS ON COMPUTERS
1994; 43 (6): 651-663
View details for Web of Science ID A1994NR95300002
-
THE DESIGN AND EVALUATION OF A SHARED OBJECT SYSTEM FOR DISTRIBUTED MEMORY MACHINES
1st USENIX Symposium on Operating Systems Design and Implementation (OSDI)
USENIX ASSOC. 1994: 101–114
View details for Web of Science ID A1994BC18M00009
- An Overview of a Compiler for Scalable Parallel Machines 1994
- Communication-Free Parallelization via Affine Transformations 1994
- Locality Optimizations for Parallel Machines 1994
- An Efficient Shared Memory System for Distributed Memory Machines Technical Report CSL-TR-94-627, Stanford University 1994
- SUIF: A Parallelizing and Optimizing Research Compiler Technical Report CSL-TR-94-620, Stanford University, May 1994. ACM SIGPLAN Notices 1994: 31-37
-
COMMUNICATION OPTIMIZATION AND CODE GENERATION FOR DISTRIBUTED-MEMORY MACHINES
CONF ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION
ASSOC COMPUTING MACHINERY. 1993: 126–38
View details for Web of Science ID A1993LF54700013
-
GLOBAL OPTIMIZATIONS FOR PARALLELISM AND LOCALITY ON SCALABLE PARALLEL MACHINES
CONF ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION
ASSOC COMPUTING MACHINERY. 1993: 112–25
View details for Web of Science ID A1993LF54700012
-
JADE - A HIGH-LEVEL, MACHINE-INDEPENDENT LANGUAGE FOR PARALLEL PROGRAMMING
COMPUTER
1993; 26 (6): 28-38
View details for Web of Science ID A1993LF85000004
- Jade: A High-Level, Machine-Independent Language for Parallel Programming IEEE Computer 1993; 6 (26): 28 - 38
- Communication Optimization and Code Generation for Distributed Memory Machines 1993
- Data Dependence and Data-Flow Analysis of Arrays 1993
- Array Data Flow Analysis and its Use in Array Privatization 1993
-
EFFICIENT SUPERSCALAR PERFORMANCE THROUGH BOOSTING
SIGPLAN NOTICES
1992; 27 (9): 248-259
View details for Web of Science ID A1992JT83700021
-
DESIGN AND EVALUATION OF A COMPILER ALGORITHM FOR PREFETCHING
SIGPLAN NOTICES
1992; 27 (9): 62-73
View details for Web of Science ID A1992JT83700006
-
THE STANFORD DASH MULTIPROCESSOR
COMPUTER
1992; 25 (3): 63-79
View details for Web of Science ID A1992HH04100006
-
INTEGRATING SCALAR OPTIMIZATION AND PARALLELIZATION
LECTURE NOTES IN COMPUTER SCIENCE
1992; 589: 137-151
View details for Web of Science ID A1992KQ19600010
-
HIERARCHICAL CONCURRENCY IN JADE
4TH INTERNATIONAL WORKSHOP ON LANGUAGES AND COMPILERS FOR PARALLEL COMPUTING
SPRINGER-VERLAG BERLIN. 1992: 50–64
View details for Web of Science ID A1992BX63Q00005
- Integrating Scalar Optimizations and Parallelization. 1992
- Semantic Foundations of Jade 1992
- Limits of Control Flow on Parallelism 1992
- Heterogeneous Parallel Programming in Jade 1992
-
HIERARCHICAL CONCURRENCY IN JADE
LECTURE NOTES IN COMPUTER SCIENCE
1992; 589: 50-64
View details for Web of Science ID A1992KQ19600005
-
INTEGRATING SCALAR OPTIMIZATION AND PARALLELIZATION
4TH INTERNATIONAL WORKSHOP ON LANGUAGES AND COMPILERS FOR PARALLEL COMPUTING
SPRINGER-VERLAG BERLIN. 1992: 137–151
View details for Web of Science ID A1992BX63Q00010
-
A LOOP TRANSFORMATION THEORY AND AN ALGORITHM TO MAXIMIZE PARALLELISM
IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS
1991; 2 (4): 452-471
View details for Web of Science ID A1991GK69800007
-
COARSE-GRAIN PARALLEL PROGRAMMING IN JADE
SYMP ON PRINCIPLES AND PRACTICES PARALLEL PROGRAMMING
ASSOC COMPUTING MACHINERY. 1991: 94–105
View details for Web of Science ID A1991FP75700011
-
EFFICIENT AND EXACT DATA DEPENDENCE ANALYSIS
CONF ON PROGRAMMING LANGUAGE : DESIGN AND IMPLEMENTATION
ASSOC COMPUTING MACHINERY. 1991: 1–14
View details for Web of Science ID A1991FP75600002
-
THE CACHE PERFORMANCE AND OPTIMIZATIONS OF BLOCKED ALGORITHMS
4TH INTERNATIONAL CONF ON ARCHITECTURAL SUPPORT FOR PROGRAMMING LANGUAGES AND OPERATING SYSTEMS
ASSOC COMPUTING MACHINERY. 1991: 63–74
View details for Web of Science ID A1991FN30700008
- A Loop Transformation Theory and Algorithm to Maximize Parallelism IEEE Transactions on Parallel and Distributed Systems 1991; 4 (2): 452-471
- Automatic Blocking by a Compiler. 1991
- An Algorithmic Approach to Compound Loop Transformations. Advances in Languages and Compilers for Parallel Processing. edited by Nicolau et al., A. MIT Press. 1991: 243–259
- A Data Locality Optimizing Algorithm. 1991
- Simple Data Placement Optimizations to Reduce Multiprocessor Cache Miss Rates. 1990
- Compiler Optimizations for Superscalar Computers 1990
- Design of Scalable Shared-Memory Multiprocessors: The DASH Approach. 1990
- Boosting Beyond Static Scheduling in a Superscalar Processor. 1990
- Supporting Systolic and Memory Communication in iWarp. 1990
-
INSTRUCTION SCHEDULING FOR SUPERSCALAR ARCHITECTURES
ANNUAL REVIEW OF COMPUTER SCIENCE
1989; 4: 173-201
View details for Web of Science ID A1989DF24000007
- An Approach to Automatic Generation of Linear Systolic Array Programs. 1989
- Design of the Stanford DASH Multiprocessor. Technical Report CSL-TR-89-403, Stanford University 1989
- Architecture and Compiler Tradeoffs for a Long Instruction Word Microprocessor. 1989
- A Systolic Array Optimizing Compiler. Kluwer Academic Publishers. 1988
- Compiler Optimizations for Asynchronous Systolic Array Programs. 1988
- iWarp: An Integrated Solution to High-Speed Parallel Computing. 1988
- The Warp Computer: Architecture, Implementation and Performance. IEEE Transactions on Computers 1987; 12 (C-36): 1523-1538
- Architecture of Warp. 1987
- The Warp Programming Environment. 1987
- Programming Warp. 1987
- Warp Architecture: From Prototype to Production. 1987
- Compilation for a High-Performance Systolic Array. 1986
- Warp Architecture and Implementation. 1986
- A Transformational Model of VLSI Systolic Design. IEEE Computer 1985; 2 (18): 45-52
- Warp as a Machine for Low-Level Vision. 1985
- Wafer-Scale Integration and Two-Level Pipelined Implementations of Systolic Arrays. Journal of Parallel and Distributed Computing 1984; 1 (1): 32-63
- Fault-Tolerance and Two-Level Pipelining in VLSI Systolic Arrays. 1984
- A Transformational Model of VLSI Systolic Design. 1983