A computer-implemented method comprises: receiving (I) a user
program code (UC), the code comprising a series of array instructions, each instruction configured to receive as input an
array data structure (A, B, C, D, E, F, G) capable of storing a plurality of respective common
data type elements; and generating (II), from the user
program code (UC), a segmented
program code (TCC)
executable on a
processing unit (PU, CPU, GPU) comprising a plurality of sub-units (core # 1-core # 4). The segmented program code comprises a plurality of program segments (S1, S2, S3, S4 and S5), each
program segment comprises a corresponding array operation, and the array operation corresponds to an array instruction. Each
program segment is configured to receive a runtime instance (A1, B1, C1) of a respective
array data structure of a partial configuration as a respective runtime input and to use information from the runtime instance of the respective partial configuration to partially configure a runtime instance (B1, C1, C2) of an
array data structure (B, C) as a runtime output of a respective
program segment, and at least partially configuring a respective
executable code (KC) comprising a respective array operation. The
executable code is configured to update a configuration of a runtime instance that is partially configured as a runtime output of a respective program segment. The method further comprises starting (III) execution of the segmented program code on a first sub-unit (core # 1) of the
processing unit and, when the configuration of runtime instances received as respective runtime inputs is completed and / or updated, completing (IV) the configuration of the respective executable code if the respective executable code is only partially configured, and if the respective executable code is only partially configured, completing (IV) the execution of the segmented program code on a second sub-unit (core # 1) of the
processing unit. And executing (V) the respective executable code on the processing unit.