US 11,983,517 B2
Hardware acceleration method, compiler, and device
Jian Chen, Shenzhen (CN); Hong Zhou, Nanjing (CN); Xinyu Hu, Nanjing (CN); Hongguang Guan, Shenzhen (CN); and Xiaojun Zhang, Shenzhen (CN)
Assigned to HUAWEI TECHNOLOGIES CO., LTD., Shenzhen (CN)
Filed by Huawei Technologies Co., Ltd., Shenzhen (CN)
Filed on Nov. 17, 2021, as Appl. No. 17/528,739.
Application 17/528,739 is a continuation of application No. 16/688,744, filed on Nov. 19, 2019, granted, now 11,262,992, issued on Mar. 1, 2022.
Application 16/688,744 is a continuation of application No. 15/856,628, filed on Dec. 28, 2017, granted, now 10,558,443, issued on Feb. 11, 2020.
Application 15/856,628 is a continuation of application No. PCT/CN2016/087051, filed on Jun. 24, 2016.
Claims priority of application No. 201510373054.7 (CN), filed on Jun. 30, 2015.
Prior Publication US 2022/0075608 A1, Mar. 10, 2022
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 8/41 (2018.01); G06F 9/38 (2018.01); G06F 9/455 (2018.01); G06F 15/163 (2006.01)
CPC G06F 8/453 (2013.01) [G06F 8/4441 (2013.01); G06F 8/452 (2013.01); G06F 9/3836 (2013.01); G06F 9/4552 (2013.01); G06F 15/163 (2013.01)] 18 Claims
OG exemplary drawing
 
1. A hardware acceleration method comprising:
obtaining source code;
obtaining, according to the source code, first executable code matching a first processor and running in the first processor;
receiving, from the first processor, first execution information for executing the first executable code, wherein the first execution information comprises a first execution parameter of the first executable code in the first processor, and wherein the first execution parameter is an execution duration of the first executable code in the first processor;
determining that the source code corresponding to the first executable code matches a second processor when the first execution parameter exceeds a first threshold, wherein the first threshold is based on an estimation of a second execution parameter of the source code in the second processor, and wherein the second execution parameter is an estimated execution duration of the source code in the second processor or the second execution parameter is an estimated quantity of execution times of the source code in the second processor;
obtaining, according to the source code and when the source code matches the second processor, second executable code matching the second processor;
determining, according to second execution information of executing the second executable code, that a matching degree between the second processor and the source code corresponding to the second executable code is lower than an expected value;
unloading the second executable code from the second processor; and
sending, to the first processor, third executable code corresponding to the source code.