A new approach leading to reduced user program execution time in a multi-processor environment with dynamic reconfiguration capabilities is proposed in this paper. The general idea is that a user program partitioned into specific parts called slices (based on a program graph representation) is executed on different heterogeneous, dynamically reconfigurable multi-processor units (MPUs). Reduction of the program execution time is achieved through finding the MPU with the shortest execution time for each program slice and appropriate control flow between executing units. Two different methods are proposed: ● Run-time reducing a program execution time using multiple heterogeneous MPUs. All MPUs simultaneously start execution of each program slice. This method is used for real-time applications when analytical methods are impossible to apply, program graphs activations are undeterministic, and/or external control signals influence the program execution paradigm. ● Finding the optimal hardware topologies of the MPUs and allocating them program slices; next a reduced time program execution through look-ahead reconfiguration and switching of control between the MPUs. The proposed strategy and algorithms are described in details. The methods are compared and the scope of their applicability is discussed. Some indications for the future investigations are given in conclusions.