Abstract: A computer-implemented method and computer readable medium is disclosed. In one example, the method includes receiving a user program code; and generating, from the user program code, a segmented program code executable on a processing unit comprising several sub-units. The segmented program code comprises program segments. Each of the program segments being configured to receive, as a respective runtime input, a partially configured runtime instance of a respective array data structure, and to use information from the respective partially configured runtime instance. The method includes executing the segmented program code on a first sub-unit of the processing unit, and, when a configuration of the runtime instance is complete and/or updated, completing configuration of the respective executable code, when the respective executable code is only partially configured, and executing the respective executable code on the processing unit.
Abstract: A computer-implemented method includes receiving a program code comprising a sequence of array instructions for at least one input array data structure storing multiple elements of a respective common data type, and function meta information, FMI. The FMI allow for determining an output size information of an output of each array instruction of the sequence of array instructions for an input size information of the at least one input array data structure. The method includes receiving hardware information of a processing unit, compiling, based on the first program segment, the runtime size information and the hardware information, a first compute kernel which is executable on the processing unit; and executing the first compute kernel on the processing unit using the runtime instance of the at least one input array data structure as input.
Abstract: A computer-implemented method includes receiving a program code comprising a sequence of array instructions for at least one input array data structure storing multiple elements of a respective common data type, and function meta information, FMI. The FMI allow for determining an output size information of an output of each array instruction of the sequence of array instructions for an input size information of the at least one input array data structure. The method includes receiving hardware information of a processing unit, compiling, based on the first program segment, the runtime size information and the hardware information, a first compute kernel which is executable on the processing unit; and executing the first compute kernel on the processing unit using the runtime instance of the at least one input array data structure as input.
Abstract: A heterogeneous computing system and computer-implemented method are disclosed. In one example, the method includes initializing a first processing unit of a heterogeneous computing system with a first compute kernel and a second processing unit of the heterogeneous computing system with a second compute kernel. Both the first compute kernel and the second compute kernel are configured to perform a numerical operation derived from a program segment. In one example, the method includes one of executing the first compute kernel on the first processing unit to perform a numerical operation on the runtime instance if the first expected costs are lower than or equal to the second expected costs, and executing the second compute kernel on the second processing unit to perform a numerical operation on the runtime instance if the first expected costs are higher than the second expected costs.