1. An article of manufacture storing program code on a non-transitory computer readable medium which, when executed by a machine, causes the machine to perform the operations of: performing a minimum flow cut of a flow network to determine at least a node of the flow network to remove from a code region at a time selected from a group consisting of dynamically during runtime of the machine, statically during compilation of application code, and a combination of statically during compilation and dynamically during runtime of the machine; before removing a duplicate node, determining the cost of removing the duplicate node including the cost of communicating between nodes if the duplicate node is removed, wherein a node is an instruction, a group of instructions, or a sub-dependence chain of instructions; and based on said cost of removing the duplicate node, deciding whether to remove the duplicate node, and removing the duplicate node as a result of the deciding.