发明名称 Data parallel computing on multiple processors
摘要 A method and an apparatus that allocate one or more physical compute devices such as CPUs or GPUs attached to a host processing unit running an application for executing one or more threads of the application are described. The allocation may be based on data representing a processing capability requirement from the application for executing an executable in the one or more threads. A compute device identifier may be associated with the allocated physical compute devices to schedule and execute the executable in the one or more threads concurrently in one or more of the allocated physical compute devices concurrently.
申请公布号 US9207971(B2) 申请公布日期 2015.12.08
申请号 US201213614975 申请日期 2012.09.13
申请人 Apple Inc. 发明人 Munshi Aaftab;Sandmel Jeremy
分类号 G06F9/54;G06F9/48;G06F9/50 主分类号 G06F9/54
代理机构 Blakely, Sokoloff, Taylor & Zafman LLP 代理人 Blakely, Sokoloff, Taylor & Zafman LLP
主权项 1. A computer implemented method comprising: receiving, by a host processor via a platform layer API (application program interface) during runtime of an application program on the host processor, a request from the application program for one or more processing devices to be used to execute one or more threads of the application program, the request having arguments containing data representing a processing capability requirement of the application program for the one or more processing devices; generating, by the host processor in response to the request, one or more compute identifiers that identify the processing devices having device capabilities matching the processing capability requirement, at least one of the one or more compute identifiers specifying one or more physical compute devices from a plurality of physical compute devices, the plurality of physical compute devices including at least one central processing unit (CPU) and at least one graphics processing unit (GPU) physically coupled to the host processor; and returning, by the host processor via the platform layer API, the one or more compute identifiers to the application program, wherein the application program subsequently selects at least one of the one or more compute identifiers to cause either a CPU or a GPU to execute the one or more threads of the application program instead of the host processor.
地址 Cupertino CA US