SEE: Guide to Download NPTEL Video Lecture
Lecture Details :
Compiler Design by Prof.Y.N.Srikant,Department of Computer Science and Automation,IISC Bangalore. For more details on NPTEL visit http://nptel.iitm.ac.in
Course Description :
This course aims to teach students the principles involved in compiler design. It will cover all the basic components of a compiler but not the advanced material on optimizations and machine code generation.
The treatment will be at the level of a graduate course.
Contents:
Overview of compilation
Run-Time Environments
Local Optimizations
Machine code generation
Global Register Allocation
Implementing Object-Oriented Languages
Introduction to Machine-Independent Optimizations
Data-Flow Analysis
Control-Flow Analysis
Machine-Independent Optimizations
Data-Flow Analysis: Theoretical Foundations
Partial Redundancy Elimination
The Static Single Assignment Form
Automatic Parallelization
Instruction Scheduling
Software Pipelining
Energy-Aware Software Systems
Just-In-Time Compilation
Garbage Collection
Inter-procedural Data-Flow Analysis
Worst Case Execution Time Estimation
Other Resources :
Syllabus | Handouts | Citation |
These lecture videos are delivered by IISc Bangalore, under the NPTEL program, lot of nptel video courses are available for learning online.
Other Computer Science Courses
- iPhone Application Development (Winter 2010) by Stanford
- XHTML and CSS by Other
- The Beauty and Joy of Computing by UC Berkeley
- CSEP 590B Computing for the Developing World by University of Washington
- Artificial Intelligence: Introduction to Robotics by Stanford
- The Structure and Interpretation of Computer Programs,Spring 2011 by UC Berkeley
- Advanced Multimedia by The University of New South Wales
- COMP1927 Data Structures and Algorithms by The University of New South Wales
- Introduction To Problem Solving, Programming by IIT Kanpur
- Software Engineering by IIT Bombay
» check out the complete list of Computer Science Video lectures
Computer Science Lecture Notes
- CS345 Data Mining and Clustering by Stanford
- CPS 140 Computer Science by Duke University
- Pixels, Numbers, and Programs by University of Washington
- CS368: Java for C++ Programmers by University of Wisconsin
- CSE 373/548: Analysis of Algorithms by Stony Brook University
- Information Retrieval by University of Massachusetts
- Software Engineering and Security by Athens University of Economics and Business
- CS 696 Emerging Technologies: Java Distributed Computing by UC San Diego
- Introduction to Java Development by N/A