# US 12,001,386 B2 · Disabling processor cores for best latency in a multiple core processor

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,001,386 B2
- Document ID: US12001386B2
- Status: Granted
- Kind: B2
- Application number: 17/871,034
- Filed: 2022-07-22
- Published: 2024-01-25
- Granted: 2024-06-04
- Earliest claimed: 2022-07-22
- Assignees: Dell Products L.P.
- Applicants: Dell Products L.P.
- Inventors: Michael Christensen; Yuwei Cai
- Web page: https://patentgrep.com/patent/US12001386B2

## CPC

- G06F 15/177: Initialisation or configuration control {(processor initialisation G06F9/4405)}
- G06F 15/82: data or demand driven
- G06F 9/30123: {according to context, e.g. thread buffers}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

An information handling system includes a model-specific register and a basic input/output system (BIOS). The BIOS receives a selection of a number of processor cores to have enabled in a multiple core processor. In response to the reception of the selection of the number of processor cores to have enabled, the BIOS calculates a different latency for each of a plurality of processor cores in the multiple core processor. Based on the calculated different latency for each of the processor cores, the BIOS determines a first subset of the processor cores to enable and a second subset of the processor cores to disable. The BIOS sets bits in the model-specific register to indicate that the first subset of the processor cores is enabled and the second subset of the processor cores is disabled.

## Claims

### Claim 1

An information handling system, comprising:
a model-specific register; and
a basic input/output system (BIOS) to communicate with the model-specific register, the BIOS to:
receive a selection of a number of processor cores to have enabled in a multiple core processor;
in response to the reception of the selection of the number of processor cores to have enabled, calculate a different latency for each of a plurality of processor cores in the multiple core processor;
based on the calculated different latency for each of the processor cores, determine a first subset of the processor cores to enable and a second subset of the processor cores to disable; and
set bits in the model-specific register to indicate that the first subset of the processor cores is enabled and the second subset of the processor cores is disabled, wherein the bits in the model-specific register being set, the BIOS further to set a bit associated with a first processor core to a particular value based on the first processor core having a worst latency for a first integrated memory controller, wherein the particular value of the bit indicates that the first processor core is disabled.

### Claim 2 (depends on 1)

The information handling system of claim 1, further comprising a dual in-line memory module, wherein a first latency between a first processor core and a first integrated memory controller controls a latency that data is read from/written to the dual inline memory module by the first processor core.

### Claim 3 (depends on 1)

The information handling system of claim 1, wherein each of the different latencies for each of the processor cores is calculated with respect to different distances between each of the processor cores and an associated one of the integrated memory controllers.

### Claim 4 (depends on 3)

The information handling system of claim 3, wherein the different distances are associated with a different number of hops in different communication paths between each of the processor cores and the associated one of the integrated memory controllers.

### Claim 5 (depends on 1)

The information handling system of claim 1, wherein the BIOS further to select a first processor core having a best latency for a first integrated memory controller to be enabled.

### Claim 6 (depends on 5)

The information handling system of claim 5, wherein the BIOS further to select a second processor core having a best latency for a second integrated memory controller to be enabled.

### Claim 7 (depends on 1)

The information handling system of claim 1, further comprising a graphical user interface on a display device, wherein the selection of the number of processor cores to have enabled is received from the graphical user interface on the display device.

### Claim 8

A method, comprising:
in response to receiving a selection of a number of processor cores to have enabled in a multiple core processor, determining, by a basic input/output system (BIOS) of an information handling system, a different latency for each of a plurality of processor cores in the multiple core processor;
based on the different latency for each of the processor cores, determining a first subset of the processor cores to enable and a second subset of the processor cores to disable; and
setting, by the BIOS, bits in the model-specific register to indicate that the first subset of the processor cores is enabled and the second subset of the processor cores is disabled, wherein the bits in the model-specific register being set, the method further comprises setting a bit associated with a first processor core to a particular value based on the first processor core having a worst latency for a first integrated memory controller, wherein the particular value of the bit indicates that the first processor core is disabled.

### Claim 9 (depends on 8)

The method of claim 8, wherein the method further comprises calculating each of the different latencies for each of the processor cores with respect to different distances between each of the processor cores and an associated one of the integrated memory controllers.

### Claim 10 (depends on 9)

The method of claim 9, wherein the different distances are associated with a different number of hops in different communication paths between each of the processor cores and the associated one of the integrated memory controllers.

### Claim 11 (depends on 8)

The method of claim 8, wherein the method further comprises selecting a first processor core having a best latency for a first integrated memory controller to be enabled.

### Claim 12 (depends on 11)

The method of claim 11, wherein the method further comprises selecting a second processor core having a best latency for a second integrated memory controller to be enabled.

### Claim 13 (depends on 8)

The method of claim 8, wherein a first latency between a first processor core and a first integrated memory controller controls a latency that data is read from/written to a dual inline memory module by the first processor core.

### Claim 14 (depends on 8)

The method of claim 8, wherein the selection is received during a system boot.

### Claim 15

An information handling system, comprising:
a first dual in-line memory module (DIMM);
a model-specific register;
a first processor die of a multiple core processor coupled to the first DIMM, the first processor die including a first plurality of processor cores and a first integrated memory controller to communicate with the first DIMM; and
a basic input/output system to:
in response to reception of a selection of a number of processor cores to have enabled, calculate a different latency for each of the first processor cores in the first processor die;
based on the different latency for each of the processor cores, determine a first subset of the first processor cores in the first processor die to enable and a second subset of the first processor cores in the first processor die to disable; and
set bits in the model-specific register to indicate that the first subset of the first processor cores is enabled and the second subset of the first processor cores is disabled, wherein a bit associated with one of the first processor cores is set to a particular value based on the one of the first processor cores having a worst latency for the first integrated memory controller, wherein the particular value of the bit indicates that the one of the first processor cores is disabled.

### Claim 16 (depends on 15)

The information handling system of claim 15, further comprising:
a second DIMM; and
a second processor die coupled to the second DIMM, the second processor die including:
a second plurality of processor cores; and
a second integrated memory controller to communicate with the second DIMM;
wherein the BIOS further to:
in response to the reception of the selection of the number of processor cores to have enabled, calculate a different latency for each of the second plurality of processor cores in the second processor die;
based on the calculated different latency for each of the second processor cores, determine a third subset of the second processor cores in the second processor die to enable and a fourth subset of the second processor cores in the second processor die to disable; and
set bits in the model-specific register to indicate that the third subset of the second processor cores is enabled and the fourth subset of the second processor cores is disabled.

### Claim 17 (depends on 15)

The information handling system of claim 15, further comprising:
a graphical user interface on a display device, wherein the selection of the number of processor cores to have enabled is received from the graphical user interface on the display device.
