Back to results
US 9,753,770 B2Granted
Register-type-aware scheduling of virtual central processing units
AssigneeStrato Scale Ltd.
InventorsAbel Gordon, Shlomo Matichin
Life of this patent
Estimating the term…
Abstract
A method includes running multiple processing tasks on multiple physical processing cores that support general-purpose registers and special-purpose registers. Respective usage levels, with which the processing tasks use the special-purpose registers, are estimated. The physical processing cores are assigned to the processing tasks based on the estimated usage levels of the special-purpose registers.
Claims26
A method, comprising:
- running multiple processing tasks on multiple physical processing cores in a processor that support general-purpose registers and special-purpose registers;
- estimating respective usage levels with which the multiple processing tasks use the special-purpose registers;
- in response to the estimating the respective usage levels, assigning the multiple processing tasks respective scores that are indicative of the respective usage levels of the special-purpose registers by the multiple processing tasks;
- in response to the assigning the multiple processing tasks the respective scores, aggregating the respective scores of the multiple processing tasks on the multiple physical processing cores to obtain sums of the respective scores of the multiple processing tasks on the multiple physical processing cores;
- and
- assigning the multiple physical processing cores to the multiple processing tasks based on the estimated usage levels of the special-purpose registers using a scheduling criterion minimizing the sums of the respective scores of the multiple processing tasks on the multiple physical processing cores to reduce a rate of context-switching between the multiple processing tasks that use the special-purpose registers.
3 more elements
An apparatus, comprising:
- a memory;
- and
- a processor, which comprises multiple physical processing cores that support general-purpose registers and special-purpose registers, and which is configured to:
- monitor multiple processing tasks that run on the multiple physical processing cores;
- estimate respective usage levels with which the multiple processing tasks use the special-purpose registers;
- assign the multiple processing tasks respective scores that are indicative of the usage levels of the special-purpose registers by the multiple processing tasks in response to the estimating the respective usage levels;
- in response to the assigning the processing tasks the respective scores, aggregate the scores of the multiple processing tasks on the multiple physical processing cores to obtain sums of the respective scores of the multiple processing tasks on the multiple physical processing cores;
- and
- assign the multiple physical processing cores to the multiple processing tasks based on the estimated usage levels of the special-purpose registers using a scheduling criterion minimizing the sums of the respective scores of the multiple processing tasks on the multiple physical processing cores to reduce a rate of context-switching between the multiple processing tasks that use the special-purpose registers.
6 more elements
Dependencies are inferred from the claim text.