1. A method for executing an executable code by a plurality of processing modules, wherein the method comprises executing the executable code by at least one first processing module of the plurality of processing modules, wherein said executable code comprises a set of parallel executable parts, wherein each parallel executable part of the executable code comprises at least two parallel executable steps, and wherein said executing comprises: detecting by the at least one first processing module a parallel executable part of the set of parallel executable parts of the executable code to be executed; selecting by the at least one first processing module at least two second processing modules of the plurality of processing modules; commanding by the at least one first processing module the selected at least two second processing modules to perform the at least two parallel executable steps of the detected parallel executable part of the executable code; wherein the at least one first processing module is one of the selected at least two processing modules, wherein the at least one first processing module is configured to perform parallel executable steps of the detected parallel executable part of the executable code; wherein each parallel executable part of the set of parallel executable parts of the executable code comprises steps of one certain parallelization type; wherein two parallelization types are distinct; wherein a first parallelization type comprises program loops and wherein the second parallelization type comprises conditional branches; and wherein (a) if detected parallel executable part of the set of parallel executable parts of the executable code comprises steps of a program loop as the at least two parallel executable steps, the at least one first processing module allocates a certain number of cycles of the program loop to each of the selected at least two second processing modules, wherein each cycle of the program loop is allocated to one of the selected at least two second processing modules, or (b) if the detected parallel executable part of the executable code comprises at least two conditional branches as the at least two parallel executable steps, the at least one first processing module allocates each condition of the at least two conditional branches to one of the selected at least two second processing modules and each part of code of the at least two conditional branches coded with regard to one condition of the at least two conditional branches to one of the selected at least two second processing modules.