Adaptive processor core sharing based on workload proportion
AssigneeDell Products L.P.
InventorsVladimir Shveidel, Roy Koren
Life of this patent
Estimating the term…
Abstract
A host I/O (Input/Output) request workload including block I/O requests and file I/O requests is received by a data storage system. A file I/O share of the host I/O request workload is detected. The file I/O share of the host I/O request workload indicates a proportion of the host I/O request workload that consists of file I/O requests. The amount of block I/O request processing assigned to an individual shared processor core is modified based on the file I/O share of the host I/O request workload. The shared processor core is shared between a file I/O request processing component of the data storage system and a block I/O request processing component of the data storage system.
Claims14
A method comprising:
- receiving a host I/O (Input/Output) request workload by a data storage system, the host I/O request workload including block I/O requests and file I/O requests;
- detecting a file I/O share of the host I/O request workload, wherein the file I/O share of the host I/O request workload indicates a proportion of the host I/O request workload that consists of file I/O requests;
- and
- modifying an amount of block I/O request processing assigned to a shared processor core based on the file I/O share of the host I/O request workload, wherein the shared processor core is shared between a file I/O request processing component of the data storage system and a block I/O request processing component of the data storage system, wherein modifying the amount of block I/O request processing assigned to the shared processor core includes reducing the amount of block I/O request processing assigned to the shared processor core in response to the file I/O share of the host I/O request workload having a non-zero value at least in part by calculating a corrective coefficient that is inversely related to the file I/O share of the host I/O request workload and reducing the amount of block I/O request processing assigned to the shared processor core by an amount according to the corrective coefficient.
A data storage system comprising:
- processing circuitry and a memory;
- a plurality of non-volatile data storage drives;
- and
- wherein the memory has program code stored thereon, wherein the program code, when executed by the processing circuitry, causes the processing circuitry to:
- receive a host I/O (Input/Output) request workload by a data storage system, the host I/O request workload including block I/O requests and file I/O requests,
- detect a file I/O share of the host I/O request workload, wherein the file I/O share of the host I/O request workload indicates a proportion of the host I/O request workload that consists of file I/O requests, and
- modify an amount of block I/O request processing assigned to a shared processor core based on the file I/O share of the host I/O request workload, wherein the shared processor core is shared between a file I/O request processing component of the data storage system and a block I/O request processing component of the data storage system, wherein the amount of block I/O request processing assigned to the shared processor core is modified by reducing the amount of block I/O request processing assigned to the shared processor core in response to the file I/O share of the host I/O request workload having a non-zero value at least in part by calculating a corrective coefficient that is inversely related to the file I/O share of the host I/O request workload and reducing the amount of block I/O request processing assigned to the shared processor core by an amount according to the corrective coefficient.
A computer program product including a non-transitory computer readable medium having instructions stored thereon, wherein the instructions, when executed on processing circuitry, cause the processing circuitry to perform steps including:
- receiving a host I/O (Input/Output) request workload by a data storage system, the host I/O request workload including block I/O requests and file I/O requests;
- detecting a file I/O share of the host I/O request workload, wherein the file I/O share of the host I/O request workload indicates a proportion of the host I/O request workload that consists of file I/O requests;
- and
- modifying an amount of block I/O request processing assigned to a shared processor core based on the file I/O share of the host I/O request workload, wherein the shared processor core is shared between a file I/O request processing component of the data storage system and a block I/O request processing component of the data storage system, wherein modifying the amount of block I/O request processing assigned to the shared processor core includes reducing the amount of block I/O request processing assigned to the shared processor core in response to the file I/O share of the host I/O request workload having a non-zero value at least in part by calculating a corrective coefficient that is inversely related to the file I/O share of the host I/O request workload and reducing the amount of block I/O request processing assigned to the shared processor core by an amount according to the corrective coefficient.
Dependencies are inferred from the claim text.