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


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)

2023-24 Courses


Stanford Advisees


All Publications


  • Interprocedural parallelization analysis in SUIF ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS Hall, M. W., Amarasinghe, S. P., Murphy, B. R., Liao, S. W., Lam, M. S. 2005; 27 (4): 662-731
  • Software pipelining: An effective scheduling technique for VLIW machines ACM SIGPLAN NOTICES Lam, M. S. 2004; 39 (4): 244-245
  • A data locality optimizing algorithm ACM SIGPLAN NOTICES Wolf, M. E., Lam, M. S. 2004; 39 (4): 445-459
  • HybridTrak: Adding Full-Body Tracking to VR Using an Off-the-Shelf Webcam Yang, J., Chen, T., Qin, F., Lam, M. S., Landay, J. A., ACM ASSOC COMPUTING MACHINERY. 2022
  • DIY Assistant: A Multi-modal End-User Programmable Virtual Assistant Fischer, M. H., Campagna, G., Choi, E., Lam, M. S., Freund, S. N., Yahav, E. ASSOC COMPUTING MACHINERY. 2021: 312-327
  • Soundr: Head Position and Orientation Prediction Using a Microphone Array Yang, J., Banerjee, G., Gupta, V., Lam, M. S., Landay, J. A., ACM 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 Fu, W., Lin, Y., Campagna, G., Liu, C., Tsai, D., Mei, C., Chang, E. Y., Liao, S., Lam, M. S., IEEE IEEE. 2020
  • Keeping the Internet Open with an Open-Source Virtual Assistant Lam, M. S., ACM ASSOC COMPUTING MACHINERY. 2018: 145–46
  • SociaLite: An Efficient Graph Query Language Based on Datalog IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING Seo, J., Guo, S., Lam, M. S. 2015; 27 (7): 1824-1837
  • Dispatch: Secure, Resilient Mobile Reporting SIGCOMM Conference Biscuitwala, K., Bult, W., Lecuyer, M., Purtell, T. J., Ross, M. K., Chaintreau, A., Haseman, C., Lam, M. S., McGregor, S. E. ASSOC COMPUTING MACHINERY. 2013: 459–60
  • SociaLite: Datalog Extensions for Efficient Social Network Analysis 29th IEEE International Conference on Data Engineering (ICDE) Seo, J., Guo, S., Lam, M. S. IEEE. 2013: 278–289
  • SociaLite: Datalog Extensions for Efficient Social Network Analysis Seo, J., Guo, S., Lam, Monica, S. 2013
  • Processing Email Archives in Special Collections Hangal, S., Chan, P., Lam, Monica, S., Heer, J. 2012
  • Effective Browsing and Serendipitous Discovery with an Experience-Infused Browser Hangal, S., Nagpal, A., Lam, Monica, S. 2012
  • Friends, Romans, Countrymen: Lend me your URLs, Using Social Chatter to Personalize Web Search. Nagpal, A., Hangal, S., Joyee, R. R., Lam, Monica, S. 2012
  • Micro-Interactions with NFC-Enabled Mobile Phones Dodson, B., Lam, Monica, S. 2011
  • Sentiment Analysis on Personal Email Archives Hangal, S., Lam, Monica, S. 2011
  • Groups Without Tears: Mining Social Topologies from Email. MacLean, D., Hangal, S., Teh, S. K., Lam, Monica, S., Heer, J. 2011
  • Email Clients as Decentralized Social Apps in Mr. Privacy Fischer, M., Purtell, T., J., Lam, Monica, S. 2011
  • MUSE: Reviving Memories Using Email Archives Hangal, S., Lam, Monica, S., Heer, J. 2011
  • An Algorithm and Analysis of Social Topologies from Email and Photo Tags Purtell, T., J., MacLean, D., Teh, S. K., Hangal, S., Lam, Monica, S., Heer, J. 2011
  • Secure, Consumer-Friendly Web Authentication and Payments with a Phone. Dodson, B., Sengupta, D., Boneh, D., Lam, Monica, S. 2010
  • PrPl: a Decentralized Social Networking Infrastructure. Seong, S., Jiwon, S., Nasielski, M., Sengupta, D., Hangal, S., Teh, S. K., Lam, M. S. 2010
  • InvisiType: Object-Oriented Security Policies. Seo, J., Lam, Monica, S. 2010
  • Life-Browsing with a Lifetime of Email. Hangal, S., Lam, Monica, S. 2010
  • All Friends are Not Equal: Using Weights in Social Graphs to Improve Search Hangal, S., MacLean, D., Lam, Monica, S., Heer, J. 2010
  • Towards Software-Friendly Networks Yap, K., Huang, T., Dodson, B., Lam, Monica, S., McKeown, N. 2010
  • PhoneNet: a Phone-to-Phone Network for Group Communication in a LAN. Huang, T., Yap, K., Dodson, B., Lam, Monica, S., McKeown, N. 2010
  • Automatic Dimension Inference and Checking for Object-Oriented Programs 31st International Conference on Software Engineering (ICSE 2009) Hangal, S., Lam, M. S. IEEE. 2009: 155–165
  • Automatic inference of stationary fields: a generalization of java's final fields 35th Annual ACM SIGPLAN/SIGACT Symposium on Principles of Programming Language Unkel, C., Lam, M. S. ASSOC COMPUTING MACHINERY. 2008: 183–95
  • Automatic Inference of Stationary Fields: a Generalization of Java's Final Fields 35th ACM-SIGPLAN-SIGACT Symposium on Principles of Programming Languages Unkel, C., Lam, M. S. ASSOC COMPUTING MACHINERY. 2008: 183–195
  • Automatic Generation of XSS and SQL Injection Attacks with Goal-Directed Model Checking. Martin, M., C., Lam, M., S. 2008
  • Securing Web Applications Using Static and Dynamic Information Flow Tracking Lam, M., S., Martin, M., C., Livshits, V., B., Whaley, J. 2008
  • Securing Web Applications with Static and Dynamic Information Flow Tracking ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation Lam, M. S., Martin, M., Livshits, B., Whaley, J. ASSOC COMPUTING MACHINERY. 2008: 3–12
  • Static Detection of Leaks in Polymorphic Containers. Heine, D., Lam, M., S. 2006
  • Finding application errors and security flaws using PQL: a program query language 20th Conference on Object-Oriented Programming, Systems, Languages and Applications Martin, M., Livshits, B., Lam, M. S. ASSOC COMPUTING MACHINERY. 2005: 365–83
  • Using datalog with binary decision diagrams for program analysis 3rd Asian Symposium on Programming Languages and Systems Whaley, J., Avots, D., Carbin, M., Lam, M. S. SPRINGER-VERLAG BERLIN. 2005: 97–118
  • Context-Sensitive Program Analysis as Database Queries. Lam, M., S., Whaley, J., Livshits, V., B., Martin, M., C., Avots, D., Carbin, M. 2005
  • Improving Software Security with A C Pointer Alias Analysis. Avots, D., Dalton, M., Livshits, V., B., Lam, M., S. 2005
  • Finding Security Vulnerabilities in Java Applications Using Static Analysis. Livshits, V., B., Lam, M., S. 2005
  • Finding Application Errors using PQL: a Program Query Language. Martin, M., Livshits, V., B., Lam, M., S. 2005
  • Improving software security with a C pointer analysis 27th International Conference on Software Engineering (ICSE 2005) Avots, D., Dalton, M., Livshits, V. B., Lam, M. S. ASSOC COMPUTING MACHINERY. 2005: 332–341
  • Finding security vulnerabilities in Java applications with static analysis 14th USENIX Security Symposium Livshits, V. B., Lam, M. S. USENIX ASSOC. 2005: 271–286
  • Reflection analysis for Java 3rd Asian Symposium on Programming Languages and Systems Livshits, B., Whaley, J., Lam, M. S. SPRINGER-VERLAG BERLIN. 2005: 139–160
  • The collective: A cache-based system management architecture 2nd Symposium on Networked Systems Design and Implementation (NSDI 05) Chandra, R., Zeldovich, N., Sapuntzakis, C., Lam, M. S. USENIX ASSOC. 2005: 259–272
  • A data locality optimizing algorithm ACM SIGPLAN NOTICES Lam, M. S. 2004; 39 (4): 442-444
  • A Retrospective: Software Pipelining: An Effective Scheduling Technique for VLIW Machines. In 20 Years of PLDI (1979-1999): A Selection. Lam, M., S. 2004: 1
  • A Practical Dynamic Buffer Overflow Detector. Ruwase, O., Lam, M., S. 2004
  • A Retrospective: A Data Locality Optimizing Algorithm In 20 Years of PLDI (1979-1999): A Selection. Lam, M., S. 2004: 1
  • A practical flow-sensitive and context-sensitive C and C++ memory leak detector Conference on Programming Language Design and Implementation Heine, D. L., Lam, M. S. ASSOC COMPUTING MACHINERY. 2003: 168–81
  • A SMART scheduler for multimedia applications ACM TRANSACTIONS ON COMPUTER SYSTEMS Nieh, J., Lam, M. S. 2003; 21 (2): 117-163
  • Challenges and new approaches to program analysis 12th International Conference on Parallel Architectures and Compilation Techniques (PACT 2003) Lam, M. IEEE COMPUTER SOC. 2003: 102–102
  • Virtual Appliances in the Collective: A Road to Hassle-free Computing Sapuntzakis, C., P., Lam, M., S. 2003
  • Tracking Pointers with Path and Context Sensitivity for Bug Detection in C Programs Livshits, V., B., Lam, M., S. 2003
  • Virtual appliances for deploying and maintaining software 17th Large Installation Systems Administration Conference Sapuntzakis, C., Brumley, D., Chandra, R., Zeldovich, N., Chow, J., Lam, M. S., Rosenblum, M. USENIX ASSOC. 2003: 181–194
  • Enhancing software reliability with speculative threads ACM SIGPLAN NOTICES Oplinger, J., Lam, M. S. 2002; 37 (10): 184-196
  • An efficient inclusion-based points-to analysis for strictly-typed languages 9th International Static Analysis Symposium Whaley, J., Lam, M. S. SPRINGER-VERLAG BERLIN. 2002: 180–195
  • Tracking Down Software Bugs Using Automatic Anomaly Detection Hangal, S., Lam, M., S. 2002
  • Automatic Extraction of Object-Oriented Component Interfaces Whaley, J., Martin, M., C., Lam, M., S. 2002
  • Enhancing Software Reliability using Speculative Threads Oplinger, J., Lam, M., S. 2002
  • Optimizing the migration of virtual computers 5th Symposium on Operation Systems Design and Implementation (OSDI 02) Sapuntzakis, C. P., Chandra, R., Pfaff, B., Chow, J., Lam, M. S., Rosenblum, M. USENIX ASSOC. 2002: 377–390
  • Blocking and array contraction across arbitrarily nested loops using affine partitioning 8th ACM SIGPLAN Symposium on the Principles and Practice of Parallel Computing Lim, A. W., Liao, S. W., Lam, M. S. ASSOC COMPUTING MACHINERY. 2001: 103–12
  • Cache Optimizations With Affine Partitioning Lim, A., W., Lam, M., S. 2001
  • Cutting-edge designs IEEE MICRO Lam, M., Baskett, F. 2000; 20 (2): 14-15
  • Program analysis with partial transfer functions ACM SIGPLAN NOTICES Murphy, B. R., Lam, M. S. 1999; 34 (11): 94-103
  • SUIF explorer: An interactive and interprocedural parallelizer ACM SIGPLAN NOTICES Liao, S. W., Diwan, A., Bosch, R. P., Ghuloum, A., Lam, M. S. 1999; 34 (8): 37-48
  • A Compiler for Creating Evolutionary Software and Application Experience Technical Report CSL-TR-99-782, Stanford University Schmidt, B., K., Lam, M., S. 1999
  • An Affine Partitioning Algorithm to Maximize Parallelism and Minimize Communication Lim, A., W., Cheong, G., I., Lam, M., S. 1999
  • In Search of Speculative Thread-Level Parallelism Oplinger, J., T., Heine, D., L., Lam, M., S. 1999
  • The Interactive Performance of SLIM: a Stateless, Thin-Client Architecture Schmidt, B., Lam, M., S., Northcutt, J., D. 1999
  • The design, implementation, and evaluation of Jade ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS Rinard, M. C., Lam, M. S. 1998; 20 (3): 483-545
  • The Design, Implementation and Evaluation of Jade ACM Transactions on Programming Languages and Systems Rinard, M., C., Lam, M., S. 1998; 3 (20): 483-545
  • The Domain Parallel Computation Model on Warp. Tseng, P., S., Lam, M., Kung, H., T. 1998
  • Multimedia on Multiprocessors: Where's the OS When You Really Need it Nieh, J., Lam, M., S. 1998
  • SMART UNIX SVR4 support for multimedia applications IEEE International Conference on Multimedia Computing and Systems 97 Nieh, J., Lam, M. S. IEEE COMPUTER SOC. 1997: 404–414
  • SMART UNIX SV4 Support for Multimedia Applications Nieh, J., Lam, M., S. 1997
  • Maximizing Parallelism and Minimizing Synchronization with Affine Transforms Lim, A., W., Lam, M., S. 1997
  • The Design, Implementation and Evaluation of SMART: a Scheduler for Multimedia Applications Nieh, J., Lam, M., S. 1997
  • Software and Hardware for Exploiting Speculative Parallelism with a Multiprocessor Technical Report CSL-TR-97-715, Stanford University Oplinger, J., Heine, D., Liao, S., W., Nayfeh, B., A., Lam, M., S., Olukotun, K. 1997
  • The Design, Implementation and Evaluation of SMART: a Scheduler for Multimedia Applications Technical Report CSL-TR-97-721, Stanford University Nieh, J., Lam, M., S. 1997
  • Maximizing multiprocessor performance with the SUIF compiler COMPUTER Hall, M. W., Anderson, J. M., AMARASINGHE, S. P., Murphy, B. R., Liao, S. W., Bugnion, E., Lam, M. S. 1996; 29 (12): 84-?
  • Compiler-directed page coloring for multiprocessors 7th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS-VII) Bugnion, E., Anderson, J. M., Mowry, T. C., Rosenblum, M., Lam, M. S. ASSOC COMPUTING MACHINERY. 1996: 244–55
  • Multiprocessors from a software perspective IEEE MICRO AMARASINGHE, S. P., Anderson, J. M., Wilson, C. S., Liao, S. W., Murphy, B. R., French, R. S., Lam, M. S., Hall, M. W. 1996; 16 (3): 52-61
  • Transparent fault tolerance for parallel applications on networks of workstations USENIX 1996 Annual Technical Conference Scales, D. J., Lam, M. S. USENIX ASSOC. 1996: 329–341
  • Context-Sensitive Interprocedural Analysis in the Presence of Dynamic Aliasing Sathyanathan, P., W., Lam, M., S. 1996
  • Current Status of the SUIF Research Project The Data Parallel Programming Model: Foundations, HPF Realization, and Scientific Applications Lam, M., S. 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 Anderson, J. M., AMARASINGHE, S. P., Lam, M. S. ASSOC COMPUTING MACHINERY. 1995: 166–78
  • EFFICIENT CONTEXT-SENSITIVE POINTER ANALYSIS FOR C PROGRAMS ACM SIGPLAN 95 Conference on Programming Language Design and Implementation Wilson, R. P., Lam, M. S. ASSOC COMPUTING MACHINERY. 1995: 1–12
  • EFFECTIVENESS OF DATA DEPENDENCE ANALYSIS INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING Maydan, D. E., HENNESSY, J. L., Lam, M. S. 1995; 23 (1): 63-81
  • Hot Compilers for Future Hot Chips In Hot Chips VII Amarasinghe, S., P., Anderson, J., M., French, R., S., Hall, M., W., Lam, M., S., Liao, S.-W. 1995
  • Integrated Processor Scheduling for Multimedia Nieh, J., Lam, M., S. 1995
  • A Method and Apparatus for Measuring Media Synchronization Schmidt, B., K., Northcutt, J., D., Lam, M., S. 1995
  • A General Method for Compiling Event-Driven Simulations French, R., S., Lam, M., S., Levitt, J., R., Olukotun, K. 1995
  • A Fully Interprocedural System for Automatic Parallelization Hall, M., W., Amarasinghe, S., P., Murphy, B., R., Liao, S., W., Lam, M., S. 1995
  • Unified Compilation Techniques for Shared and Distributed Address Space Machines Tseng, C., W., Anderson, J., M., Amarasinghe, S., P., Lam, M., S. 1995
  • Detecting Coarse-Grain Parallelism Using an Interprocedural Parallelizing Compiler Hall, M., W., Amarasinghe, S., P., Murphy, B., R., Liao, S., W., Lam, M., S. 1995
  • AN OVERVIEW OF THE SUIF COMPILER FOR SCALABLE PARALLEL MACHINES 7th SIAM Conference on Parallel Processing for Scientific Computing AMARASINGHE, S. P., Anderson, J. M., Lam, M. S., Tseng, C. W. SIAM. 1995: 662–667
  • A general method for compiling event driven simulations 32nd Design Automation Conference French, R. S., Lam, M. S., LEVITT, J. R., Olukotun, K. ASSOC COMPUTING MACHINERY. 1995: 151–156
  • SUIF - AN INFRASTRUCTURE FOR RESEARCH ON PARALLELIZING AND OPTIMIZING COMPILERS SIGPLAN NOTICES Wilson, R. P., French, R. S., Wilson, C. S., AMARASINGHE, S. P., Anderson, J. M., TJIANG, S. W., Liao, S. W., Tseng, C. W., Hall, M. W., Lam, M. S., HENNESSY, J. L. 1994; 29 (12): 31-37
  • FALSE SHARING AND SPATIAL LOCALITY IN MULTIPROCESSOR CACHES IEEE TRANSACTIONS ON COMPUTERS Torrellas, J., Lam, M. S., HENNESSY, J. L. 1994; 43 (6): 651-663
  • THE DESIGN AND EVALUATION OF A SHARED OBJECT SYSTEM FOR DISTRIBUTED MEMORY MACHINES 1st USENIX Symposium on Operating Systems Design and Implementation (OSDI) Scales, D. J., Lam, M. S. USENIX ASSOC. 1994: 101–114
  • An Overview of a Compiler for Scalable Parallel Machines Amarasinghe, S., P., Anderson, J., M., Lam, M., S., Lim, A., W. 1994
  • Communication-Free Parallelization via Affine Transformations Lim, A., W., Lam, M., S. 1994
  • Locality Optimizations for Parallel Machines Lam, M., S. 1994
  • An Efficient Shared Memory System for Distributed Memory Machines Technical Report CSL-TR-94-627, Stanford University Scales, D., J., Lam, M., S. 1994
  • SUIF: A Parallelizing and Optimizing Research Compiler Technical Report CSL-TR-94-620, Stanford University, May 1994. ACM SIGPLAN Notices Wilson, R., P., French, R., S., Wilson, C., S., Amarasinghe, S., P., Anderson, J., M., Tjiang, S., W. K., Lam, M. S. 1994: 31-37
  • COMMUNICATION OPTIMIZATION AND CODE GENERATION FOR DISTRIBUTED-MEMORY MACHINES CONF ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION AMARASINGHE, S. P., Lam, M. S. ASSOC COMPUTING MACHINERY. 1993: 126–38
  • GLOBAL OPTIMIZATIONS FOR PARALLELISM AND LOCALITY ON SCALABLE PARALLEL MACHINES CONF ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION Anderson, J. M., Lam, M. S. ASSOC COMPUTING MACHINERY. 1993: 112–25
  • JADE - A HIGH-LEVEL, MACHINE-INDEPENDENT LANGUAGE FOR PARALLEL PROGRAMMING COMPUTER Rinard, M. C., Scales, D. J., Lam, M. S. 1993; 26 (6): 28-38
  • Jade: A High-Level, Machine-Independent Language for Parallel Programming IEEE Computer Rinard, M., C., Scales, D., J., Lam, M., S. 1993; 6 (26): 28 - 38
  • Communication Optimization and Code Generation for Distributed Memory Machines Amarasinghe, S., P., Lam, M., S. 1993
  • Data Dependence and Data-Flow Analysis of Arrays Maydan, D., E., Amarasinghe, S., Lam, M., S. 1993
  • Array Data Flow Analysis and its Use in Array Privatization Maydan, D., R., Amarasinghe, S., P., Lam, M., S. 1993
  • EFFICIENT SUPERSCALAR PERFORMANCE THROUGH BOOSTING SIGPLAN NOTICES Smith, M. D., Horowitz, M., Lam, M. S. 1992; 27 (9): 248-259
  • DESIGN AND EVALUATION OF A COMPILER ALGORITHM FOR PREFETCHING SIGPLAN NOTICES Mowry, T. C., Lam, M. S., Gupta, A. 1992; 27 (9): 62-73
  • THE STANFORD DASH MULTIPROCESSOR COMPUTER Lenoski, D., LAUDON, J., Gharachorloo, K., Weber, W. D., Gupta, A., Hennessy, J., Horowitz, M., Lam, M. S. 1992; 25 (3): 63-79
  • INTEGRATING SCALAR OPTIMIZATION AND PARALLELIZATION LECTURE NOTES IN COMPUTER SCIENCE Tjiang, S., Wolf, M., Lam, M., Pieper, K., Hennessy, J. 1992; 589: 137-151
  • INTEGRATING SCALAR OPTIMIZATION AND PARALLELIZATION 4TH INTERNATIONAL WORKSHOP ON LANGUAGES AND COMPILERS FOR PARALLEL COMPUTING Tjiang, S., Wolf, M., Lam, M., Pieper, K., Hennessy, J. SPRINGER-VERLAG BERLIN. 1992: 137–151
  • HIERARCHICAL CONCURRENCY IN JADE 4TH INTERNATIONAL WORKSHOP ON LANGUAGES AND COMPILERS FOR PARALLEL COMPUTING Scales, D., Rinard, M., Lam, M., Anderson, J. SPRINGER-VERLAG BERLIN. 1992: 50–64
  • Integrating Scalar Optimizations and Parallelization. Tjiang, S., W. K., Wolf, M., E., Lam, M., S., Pieper, K., Hennessy, J., L. 1992
  • Semantic Foundations of Jade Rinard, M., C., Lam, M., S. 1992
  • Limits of Control Flow on Parallelism Lam, M., S., Wilson, R., P. 1992
  • Heterogeneous Parallel Programming in Jade Rinard, M., C., Scales, D., J., Lam, M., S. 1992
  • HIERARCHICAL CONCURRENCY IN JADE LECTURE NOTES IN COMPUTER SCIENCE Scales, D., Rinard, M., Lam, M., Anderson, J. 1992; 589: 50-64
  • A LOOP TRANSFORMATION THEORY AND AN ALGORITHM TO MAXIMIZE PARALLELISM IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS Wolf, M. E., Lam, M. S. 1991; 2 (4): 452-471
  • COARSE-GRAIN PARALLEL PROGRAMMING IN JADE SYMP ON PRINCIPLES AND PRACTICES PARALLEL PROGRAMMING Lam, M. S., Rinard, M. C. ASSOC COMPUTING MACHINERY. 1991: 94–105
  • EFFICIENT AND EXACT DATA DEPENDENCE ANALYSIS CONF ON PROGRAMMING LANGUAGE : DESIGN AND IMPLEMENTATION Maydan, D. E., HENNESSY, J. L., Lam, M. S. ASSOC COMPUTING MACHINERY. 1991: 1–14
  • THE CACHE PERFORMANCE AND OPTIMIZATIONS OF BLOCKED ALGORITHMS 4TH INTERNATIONAL CONF ON ARCHITECTURAL SUPPORT FOR PROGRAMMING LANGUAGES AND OPERATING SYSTEMS Lam, M. S., ROTHBERG, E. E., Wolf, M. E. ASSOC COMPUTING MACHINERY. 1991: 63–74
  • A Loop Transformation Theory and Algorithm to Maximize Parallelism IEEE Transactions on Parallel and Distributed Systems Wolf, M., E., Lam, M., S. 1991; 4 (2): 452-471
  • Automatic Blocking by a Compiler. Lam, M., S., Wolf, M., E. 1991
  • An Algorithmic Approach to Compound Loop Transformations. Advances in Languages and Compilers for Parallel Processing. Wolf, M., E., Lam, M., S. edited by Nicolau et al., A. MIT Press. 1991: 243–259
  • A Data Locality Optimizing Algorithm. Wolf, M., E., Lam, M., S. 1991
  • Simple Data Placement Optimizations to Reduce Multiprocessor Cache Miss Rates. Torrellas, J., Lam, M., Hennessy, J., L. 1990
  • Compiler Optimizations for Superscalar Computers Lam, M., S. 1990
  • Design of Scalable Shared-Memory Multiprocessors: The DASH Approach. Lenoski, D., Gharachorloo, K., Laudon, J., Gupta, A., Hennessy, J., Horowitz, M., Lam, M. S. 1990
  • Boosting Beyond Static Scheduling in a Superscalar Processor. Smith, M., D., Lam, M., S., Horowitz, M., A. 1990
  • Supporting Systolic and Memory Communication in iWarp. Borkar, S., Cohn, R., Cox, G., Gross, T., Kung, H., T., Lam, M. 1990
  • INSTRUCTION SCHEDULING FOR SUPERSCALAR ARCHITECTURES ANNUAL REVIEW OF COMPUTER SCIENCE Lam, M. S. 1989; 4: 173-201
  • An Approach to Automatic Generation of Linear Systolic Array Programs. Kung, H., T., Lam, M. 1989
  • Design of the Stanford DASH Multiprocessor. Technical Report CSL-TR-89-403, Stanford University Lenoski, D., Gharachorloo, K., Laudon, J., Gupta, A., Hennessy, J., Horowitz, M., Lam, M. S. 1989
  • Architecture and Compiler Tradeoffs for a Long Instruction Word Microprocessor. Cohn, R., Gross, T., Lam, M., Tseng, P., S. 1989
  • A Systolic Array Optimizing Compiler. Lam, M., S. Kluwer Academic Publishers. 1988
  • Compiler Optimizations for Asynchronous Systolic Array Programs. Lam, M. 1988
  • iWarp: An Integrated Solution to High-Speed Parallel Computing. Borkar, S., Cohn, R., Cox, G., Gleason, S., Gross, T., Kung, H., T., Lam, M. S. 1988
  • The Warp Computer: Architecture, Implementation and Performance. IEEE Transactions on Computers Annaratone, M., Arnould, E., Gross, T., Kung, H., T., Lam, M., Menzilcioglu, O. 1987; 12 (C-36): 1523-1538
  • Architecture of Warp. Annaratone, M., Arnould, E., Cohn, R., Gross, T., Lam, M., Lieu, P. 1987
  • The Warp Programming Environment. Bruegge, B., Chang, C., Cohn, R., Gross, T., Lam, M., Lieu, P. 1987
  • Programming Warp. Bruegge, B., Chang, C., Cohn, R., Gross, T., Lam, M., Lieu, P. 1987
  • Warp Architecture: From Prototype to Production. Annaratone, M., Arnould, E., Cohn, R., Gross, T., Kung, H., T., Lam, M. 1987
  • Compilation for a High-Performance Systolic Array. Gross, T., Lam, M. 1986
  • Warp Architecture and Implementation. Annaratone, M., Arnould, E., Gross, T., Kung, H., T., Lam, M., Menzilcioglu, O. 1986
  • A Transformational Model of VLSI Systolic Design. IEEE Computer Lam, M., Mostow, J. 1985; 2 (18): 45-52
  • Warp as a Machine for Low-Level Vision. Gross, T., Kung, H., T., Lam, M., Webb, J. 1985
  • Wafer-Scale Integration and Two-Level Pipelined Implementations of Systolic Arrays. Journal of Parallel and Distributed Computing Kung, H., T., Lam, M. 1984; 1 (1): 32-63
  • Fault-Tolerance and Two-Level Pipelining in VLSI Systolic Arrays. Kung, H., T., Lam, M., S. 1984
  • A Transformational Model of VLSI Systolic Design. Lam, M., Mostow, J. 1983