Application programming interfaces for data parallel computing on multiple processors
AssigneeApple Inc.
InventorsAaftab Munshi, Nathaniel Begeman
Life of this patent
Estimating the term…
Abstract
A method and an apparatus for a parallel computing program calling APIs (application programming interfaces) in a host processor to perform a data processing task in parallel among compute units are described. The compute units are coupled to the host processor including central processing units (CPUs) and graphic processing units (GPUs). A program object corresponding to a source code for the data processing task is generated in a memory coupled to the host processor according to the API calls. Executable codes for the compute units are generated from the program object according to the API calls to be loaded for concurrent execution among the compute units to perform the data processing task.
Claims1
A computerized method comprising:
- receiving, from a host application executing on a host processor, a request to create a compute program corresponding to source code for a task in the host application;
- creating the compute program for execution on a compute device selected by the host application from one or more compute identifiers received in a request from the host application to identify compute devices that match a processing requirement for the task;
- receiving, from the host application, a request to create a compute kernel containing executable code for the task;
- and
- creating the compute kernel.
Dependencies are inferred from the claim text.