Modeling of parallel software for efficient computation communication overlap

A new medium grain model is proposed to model accurately the movement of data between various computational tasks of a user program to run on a parallel machine. Three different attributes are used to represent the communication activities that might exist among various tasks. a. Time taken to produce an outgoing data package for a dependent task. b. Dependent task execution duration without the arrival of the incoming data package. c. The communication time to send data package from one task to its dependent task. These parameters help in identifying possible computational overlap between interactive tasks, which leads to additional speedup besides the usual speedup that could be achieved from parallel execution of independent tasks, communication activities that might exist among various tasks. These parameters help in identifying possible computational overlap between interactive tasks, which leads to additional speedup besides the usual speedup that could be achieved from parallel execution of independent tasks.