×

Process scheduler employing ordering function to schedule threads running in multiple adaptive partitions

  • US 7,870,554 B2
  • Filed: 03/08/2006
  • Issued: 01/11/2011
  • Est. Priority Date: 03/14/2005
  • Status: Active Grant
First Claim
Patent Images

1. A system comprising:

  • a processor;

    one or more memory storage units; and

    software code stored in the one or more memory storage units,where the software code is executable by the processor to generate a plurality of adaptive partitions, where one or more process threads are associated with each adaptive partition and each process thread has a corresponding priority value within the associated adaptive partition, where each of the plurality of adaptive partitions has one or more corresponding scheduling attributes, where the one or more corresponding scheduling attributes of each of the plurality of adaptive partitions comprise a guaranteed budget corresponding to a guaranteed amount of processor allocation that may be used to run the one or more process threads associated with the adaptive partition, and where execution of each process thread of the one or more process threads of the associated adaptive partition is individually attributed and accounted against one or more of the scheduling attributes of the associated adaptive partition,where the software code further comprises a scheduling system executable by the processor for selectively allocating the processor to run the process threads of the plurality of adaptive partitions based on a comparison between ordering function values of the plurality of adaptive partitions, andwhere the ordering function value for each adaptive partition is calculated using variables respectively associated with each adaptive partition, where the variables comprise two or more variables comprising(a) whether the adaptive partition has available guaranteed budget,(b) whether the adaptive partition has available critical budget,(c) the corresponding priority value of the process thread associated with the adaptive partition having a highest corresponding priority value that is ready to run,(d) a relative fraction of the guaranteed budget used during an averaging window over which the guaranteed budget is assigned, and(e) a current rate of processor consumption by the adaptive partition,where the ordering function value generated for the adaptive partition is dependent on an amount of the available guaranteed budget of the adaptive partition.

View all claims
  • 13 Assignments
Timeline View
Assignment View
    ×
    ×