×

Application load adaptive multi-stage parallel data processing architecture

  • US RE47,945 E1
  • Filed: 07/27/2018
  • Issued: 04/14/2020
  • Est. Priority Date: 06/08/2012
  • Status: Active Grant
First Claim
Patent Images

1. A system for dynamic computing resource management, the system comprising:

  • a first hardware logic subsystem configured to periodically, for at least some of successive core allocation periods (CAPs), execute an allocation of an array of processing cores among a set of software programs, where each of the set of software programs has one or more instances of the corresponding program, said subsystem comprising;

    (i) hardware logic configured to carry out a first round of the allocation, by which round a subset of the cores are allocated among the programs so that any actually materialized demands for the cores by each of the programs up to their respective entitled shares of the cores are met; and

    (ii) hardware logic configured to carry out a second round of the allocation, by which round any of the cores that remain unallocated after the first round are allocated among the programs whose materialized demands for the cores had not been met by amounts of the cores so far allocated to them by the present execution of the allocation;

    a second hardware logic subsystem for buffering input data for the instances of the set of programs at an array of program instance specific input data buffers, wherein a given buffer within said array buffers such input data that is directed to the program instance associated with the given buffer, and wherein the materialized demand for the cores by a given one of the programs, for an upcoming CAP, is expressed as a digital value that is formed at least in part based on numbers of non-empty input data buffers of the given program during the ongoing CAP; and

    a third hardware logic subsystem for assigning individual program instances of the set to individual cores of the array in a manner that assigns each such instance of the programs, which was selected, following the allocation, for execution on the array of cores on consecutive CAPs, to same one of the cores for execution on each of such consecutive CAPs.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×