Patent ID: 7478376

Claim:
A method for computer program code size partitioning for multiple memory multi-processor systems, comprising: identifying at least one system parameter of a computer system comprising one or more disparate processing nodes; receiving computer program code comprising a program to be run on the computer system; generating a program representation based on received computer program code; identifying at least one single-entry-single-exit (SESE) region based on the whole program representation; identifying at least one store-size-specific SESE region based on identified SESE regions and the at least one system parameter, thereby forming a specified node; identifying SESE regions proximate to the identified store-size-specific SESE region based on an ability of the specified node to process the identified proximate SESE regions, wherein the identified proximate SESE regions are grouped with identified store-size-specific SESE regions and are configured to be compiled for the specified node; presenting the identified store-size-specific SESE regions and the identified proximate SESE regions to a user; receiving user input from the user as to a grouping that should be used for the identified store-size-specific SESE regions and the identified proximate SESE regions; grouping each store-size-specific SESE region with at least one proximate SESE region into a node-specific subroutine based on the user input; modifying the non node-specific parts of the computer program code based on the node-specific subroutines; and compiling the modified computer program code including each node-specific subroutine based on a specified node characteristic.