US 10,228,973 B2
Kernel policy optimization for computing workloads
Yan Cui, Los Angeles, CA (US); Karthik Prasanna, Santa Monica, CA (US); and Andres Rangel, Santa Monica, CA (US)
Assigned to HULU, LLC, Santa Monica, CA (US)
Filed by HULU, LLC, Santa Monica, CA (US)
Filed on Mar. 8, 2016, as Appl. No. 15/64,355.
Prior Publication US 2017/0262314 A1, Sep. 14, 2017
Int. Cl. G06F 9/46 (2006.01); G06F 9/50 (2006.01)
CPC G06F 9/50 (2013.01) [G06F 2209/5019 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method comprising:
searching, by a computing device, from a starting parameter value through a first set of parameter values in a parameter value range specified in a policy specification for a parameter while a first workload of a plurality of workloads is being processed by a kernel of the computing device;
storing, by the computing device, an intermediate parameter setting for the policy specification in a policy storage for the first set of parameter values that were used in the searching;
during execution of a second workload in the plurality of workloads being processed by the kernel, searching, by the computing device, the policy storage for a similar workload that has been previously optimized, wherein a sensor is used to compare the second workload to the first workload in the policy storage to determine if the first workload and the second workload are similar;
when the first workload and the second workload are similar, performing:
retrieving, by the computing device, the intermediate parameter setting from the policy storage;
adjusting, by the computing device, parameter values in the parameter value range while the second workload in the plurality of workloads is being processed by the kernel using a second set of parameter values, wherein a search through the second set of parameter values starts from a parameter value that is not from the first set of parameter values and the starting parameter value; and
evaluating, by the computing device, an effect on performance of the computing device from using the first set of parameter values and the second set of parameter values based on an optimization target to determine an optimized parameter value from the first set of parameter values and the second set of parameter values for reuse;
storing, by the computing device, the optimized parameter value for the policy specification in the policy storage for reuse by similar workloads; and
when the similar workload is not found, searching, by the computing device, from the starting parameter value through a third set of parameter values in the parameter value range for the parameter while the second workload is being processed by the kernel.