SubProgram or Procedure Level
This level consists of subroutines, procedures or subprograms. Average grain size is used at this level containing various thousands of instructions in a procedure. Multiprogramming is executed at this level. Parallelism at this level has been exploited by programmers except through compilers. Parallelism through compilers has not been achieved at the medium and coarse grain size.