The objective of this course is to learn how to improve the quality of the programs that you write for execution on high performance computer systems.
The course discusses the various activities that happen during program execution, and how they are managed by the hardware (architectural features) and system software (operating systems, run-time systems).
Program execution: Program, Compilation, Object files, Function call and return, Address space, Data and its representation
Computer organization: Memory, Registers, Instruction set architecture, Instruction processing
Pipelined processors: Pipelining, Structural, data and control hazards, Impact on programming
Virtual memory: Use of memory by programs, Address translation, Paging
Cache memory: Organization, impact on programming, virtual caches
Operating systems: Processes and system calls, Process management
Program profiling
File systems: Disk management, Name management, Protection
Parallel architecture: Inter-process communication, Synchronization, Mutual exclusion, Basics of parallel architecture, Parallel programming with message passing using MPI

Other Resources

Course Curriculum

This Course is provided by IISc Bangalore as part of NPTEL online courses.

Course Reviews


  • 5 stars0
  • 4 stars0
  • 3 stars0
  • 2 stars0
  • 1 stars0

No Reviews found for this course.


FreeVideoLectures Provides you complete information about best courses online, Video tutorials, helps you in building a career !!

Learn More About us

About Us
Privacy Policy

top All rights reserved.

Setup Menus in Admin Panel