US 11,836,506 B2
Parallel runtime execution on multiple processors
Aaftab Munshi, Los Gatos, CA (US); and Jeremy Sandmel, San Mateo, CA (US)
Assigned to APPLE INC., Cupertino, CA (US)
Filed by Apple Inc., Cupertino, CA (US)
Filed on Dec. 29, 2022, as Appl. No. 18/147,984.
Application 18/147,984 is a continuation of application No. 15/234,199, filed on Aug. 11, 2016, granted, now 11,544,075.
Application 15/234,199 is a continuation of application No. 14/163,726, filed on Jan. 24, 2014, granted, now 9,436,526, issued on Sep. 6, 2016.
Application 14/163,726 is a continuation of application No. 13/615,473, filed on Sep. 13, 2012, granted, now 9,304,834, issued on Apr. 5, 2016.
Application 13/615,473 is a continuation of application No. 11/800,319, filed on May 3, 2007, granted, now 8,286,196, issued on Oct. 9, 2012.
Claims priority of provisional application 60/925,620, filed on Apr. 20, 2007.
Claims priority of provisional application 60/923,030, filed on Apr. 11, 2007.
Prior Publication US 2023/0185583 A1, Jun. 15, 2023
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 9/445 (2018.01); G06F 9/54 (2006.01); G06F 9/50 (2006.01); G06F 8/41 (2018.01); G06F 9/48 (2006.01)
CPC G06F 9/445 (2013.01) [G06F 8/41 (2013.01); G06F 8/447 (2013.01); G06F 9/44542 (2013.01); G06F 9/4843 (2013.01); G06F 9/5044 (2013.01); G06F 9/541 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A computer implemented method comprising:
receiving, from a host application executing on a host processor, a request to generate a kernel containing executable code for a task in the host application;
generating, by the host processor, the kernel for execution on a compute device requested by the host application, the compute device selected by the host processor from one or more identifiers received by the host processor in response to a request to identify available compute devices that match a processing requirement;
receiving, from the host application, a request to execute the kernel; and
queuing, by the host processor, the kernel in an execution queue associated with the selected compute device.