System and methods for dynamic management of hardware resources
AssigneeStc. Unm
InventorsMarios Stephanou Pattichis, Yuebing Jiang, Daniel Rolando Llamocca Obregon
Life of this patent
Estimating the term…
Abstract
A dynamically reconfigurable framework manages processing applications in order to meet time-varying constraints to select an optimal hardware architecture. The optimal architecture satisfies time-varying constraints including for example, supplied power, required performance, accuracy levels, available bandwidth, and quality of output such as image reconstruction. The process of determining an optimal solution is defined in terms of multi-objective optimization using Pareto-optimal realizations.
Claims19
A computer system including a processor and a memory for producing a dynamically reconfigurable framework for performing a digital video processing and/or communications task comprising the steps of:
- varying by the processor one or more parameters to generate a plurality of hardware configurations and software realizations, wherein each software realization comprises software parameters including associated algorithms and the hardware configuration includes one or more selected from the group consisting of:
- a hardware realization in a field programmable gate array (FPGA), a graphical processing unit (GPU), a combination of multiple cores and single instruction multiple data (SIMD) extensions of a central processing unit;
- obtaining by the processor associated objective values for each hardware configuration and each software realization wherein the associated objective values are selected from:
- a power measurement, a performance measurement, a video bitrate level and an accuracy measurement;
- using by the processor the associated objective values to determine the hardware configurations and software realizations of the plurality that are Pareto-optimal to obtain a collection of Pareto-optimal configurations;
- storing in the memory the collection of Pareto-optimal configurations and the software parameters including associated algorithms;
- providing a sequence of real-time constraint optimization problems that are specified in terms of the associated objective values, wherein the real-time constraint optimization problems are selected from the group comprising:
- a minimum power objective, a maximum performance objective, a maximum accuracy objective, a minimum bitrate level objective, and an objective comprising of a weighted sum of power, performance, and accuracy;
- and
- selecting in real-time an optimal combination of the software parameters and the hardware configuration that either solves each of the real-time constraint optimization problems or minimizes violations of the real-time constraint optimization problems to obtain selected optimal combinations including selected software parameters including associated algorithms, wherein the hardware configuration involving a FPGA further comprises the step of implementing in real-time each one of the selected optimal combinations by using dynamic partial reconfiguration to implement the hardware configuration in the FPGA and the selected software parameters, or by using dynamic frequency control.
A computer system including a processor and a memory for producing a dynamically reconfigurable framework for performing a digital video processing and/or communications task comprising the steps of:
- varying by the processor one or more parameters to select one or more hardware configurations of one or more graphical processing units (GPUs) and one or more corresponding software realizations, wherein each software realization comprises software parameters including associated algorithms;
- obtaining by the processor associated objective values for the one or more hardware configurations of the one or more graphical processing units (GPUs) and the one or more corresponding software realizations, wherein the associated objective values are selected from:
- a power measurement, a performance measurement, a video bitrate level and an accuracy measurement;
- using by the processor the associated objective values to select the one or more hardware configurations of the one or more graphical processing units (GPUs) and the one or more corresponding software realizations that are Pareto-optimal to obtain a collection of Pareto-optimal configurations;
- storing in the memory the collection of Pareto-optimal configurations and the software parameters including associated algorithms;
- providing a sequence of real-time constraint optimization problems that are specified in terms of the associated objective values, wherein the real-time constraint optimization problems are selected from the group comprising:
- a minimum power objective, a maximum performance objective, a maximum accuracy objective, a minimum bitrate level objective, and an objective comprising of a weighted sum of power, performance, and accuracy;
- and
- selecting in real-time an optimal combination of the software parameters and the one or more hardware configurations of one or more graphical processing units (GPUs) that either solve each of the real-time constraint optimization problems or minimize violations of the real-time constraint optimization problems to obtain selected optimal combinations including selected software parameters including associated algorithms.
A computer system including a processor and a memory for producing a dynamically reconfigurable framework for performing a digital video processing and/or communications task comprising the steps of:
- varying by the processor one or more parameters to select cores from a multiple core central processing unit (CPU) and one or more software realizations, wherein each software realization comprises software parameters including associated algorithms;
- obtaining by the processor associated objective values for the multiple core central processing unit (CPU) hardware configuration and each software realization wherein the associated objective values are selected from:
- a power measurement, a performance measurement, a video bitrate level and an accuracy measurement;
- using by the processor the associated objective values to determine the multiple core central processing unit (CPU) hardware configuration and the one or more software realizations that are Pareto-optimal to obtain a collection of Pareto-optimal configurations;
- storing in the memory the collection of Pareto-optimal configurations and the software parameters including associated algorithms;
- providing a sequence of real-time constraint optimization problems that are specified in terms of the associated objective values, wherein the real-time constraint optimization problems are selected from the group comprising:
- a minimum power objective, a maximum performance objective, a maximum accuracy objective, a minimum bitrate level objective, and an objective comprising of a weighted sum of power, performance, and accuracy;
- and
- selecting in real-time an optimal combination of the software parameters and the multiple core central processing unit (CPU) hardware configuration that either solves each of the real-time constraint optimization problems or minimizes violations of the real-time constraint optimization problems to obtain selected optimal combinations including selected software parameters including associated algorithms.
Dependencies are inferred from the claim text.