A method for executing an executable code by a set of processing modules (11, 12_1, 12_K), wherein the method comprises executing the executable code by at least one first processing module of the set of processing modules (11, 12_1, 12_K), wherein said executable code comprises a set of parallel executable parts (42, 44, 45, 47), wherein each parallel executable part (42, 44, 45, 47) of the executable code comprises at least two parallel executable steps, said executing comprises: detecting by the at least one first processing module a parallel executable part (42, 44, 45, 47) of the set of parallel executable parts (42, 44, 45, 47) of the executable code to be executed; selecting by the at least one first processing module at least two second processing modules (12_1, 12_K) of the set of processing modules (11, 12_1, 12_K); and commanding by the at least one first processing module the selected at least two second processing modules (12_1, 12_K) to perform the at least two parallel executable steps of the detected parallel executable part (42, 44, 45, 47) of the executable code, characterized in that said commanding comprises allocating each of the at least two of the parallel executable steps of the detected parallel executable part (42, 44, 45, 47) of the executable code to one of the selected at least two second processing modules (12_1, 12_K) by the at least one first processing module, wherein each parallel executable part (42, 44, 45, 47) of the set of parallel executable parts (42, 44, 45, 47) of the executable code comprises steps of one certain parallelization type and the two parallelization types are distinct and wherein a first parallelization type comprises program loops and wherein the second parallelization type comprises conditional branches and wherein if the detected parallel executable part (42, 44, 45, 47) of the set of parallel executable parts (42, 44, 45, 47) 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 (12_1, 12_K), if the detected parallel executable part (42, 44, 45, 47) 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 (12_1, 12_K) 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 (12_1, 12_K). detecting by the at least one first processing module a parallel executable part (42, 44, 45, 47) of the set of parallel executable parts (42, 44, 45, 47) of the executable code to be executed; selecting by the at least one first processing module at least two second processing modules (12_1, 12_K) of the set of processing modules (11, 12_1, 12_K); and commanding by the at least one first processing module the selected at least two second processing modules (12_1, 12_K) to perform the at least two parallel executable steps of the detected parallel executable part (42, 44, 45, 47) of the executable code, characterized in that said commanding comprises allocating each of the at least two of the parallel executable steps of the detected parallel executable part (42, 44, 45, 47) of the executable code to one of the selected at least two second processing modules (12_1, 12_K) by the at least one first processing module, wherein each parallel executable part (42, 44, 45, 47) of the set of parallel executable parts (42, 44, 45, 47) of the executable code comprises steps of one certain parallelization type and the two parallelization types are distinct and wherein a first parallelization type comprises program loops and wherein the second parallelization type comprises conditional branches and wherein if the detected parallel executable part (42, 44, 45, 47) of the set of parallel executable parts (42, 44, 45, 47) 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 (12_1, 12_K), if the detected parallel executable part (42, 44, 45, 47) 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 (12_1, 12_K) 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 (12_1, 12_K).