| CPC G06F 5/01 (2013.01) [G06F 8/443 (2013.01); G06F 8/45 (2013.01); G06F 16/24558 (2019.01); G06F 17/156 (2013.01)] | 17 Claims |

|
1. A method of determining non-linear speedup with overhead of one or more Time-Affecting Linear Pathways (TALPs) executing on multiple processing elements (PEs), comprising:
calculating a scaled processing time of the one or more TALPs given associated individual input variable attributes that affect a number of loop iterations of at least one looping structure of an associated TALP and evenly dividing input variable attribute values that affect loop iterations by a number of PEs, n;
converting the scaled processing time of the one or more TALPs into one or more scaled time complexity functions, which is equivalent to speedup;
separating out a static processing time generated at least by executing and timing one or more static loops;
defining a maximum number of possible PEs n for a given input dataset as scaled input variable attribute values that affect the number of loop iterations for the associated TALP;
finding a maximum speedup of n using a minimum detected processing time that corresponds to the maximum number of possible PEs n and a minimum number of possible loop iterations for a TALP;
defining a cross-communication overhead as an un-scaled time complexity function for a cross-communication time given a required cross-communication model and a number of PEs n used;
defining a non-cross-communication overhead as a time cost required to set up parallel software instances without regard for cross-communication overhead; and
summing together a plurality of scaled overhead processing functions and subtracting scaled summed overhead processing time functions from a same TALP associated speedup function.
|