Scalar core integration

US11762804B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11762804-B2
Application numberUS-202217868448-A
CountryUS
Kind codeB2
Filing dateJul 19, 2022
Priority dateMar 15, 2019
Publication dateSep 19, 2023
Grant dateSep 19, 2023

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Methods and apparatus relating to scalar core integration in a graphics processor. In an example, an apparatus comprises a processor to receive a set of workload instructions for a graphics workload from a host complex, determine a first subset of operations in the set of operations that is suitable for execution by a scalar processor complex of the graphics processing device and a second subset of operations in the set of operations that is suitable for execution by a vector processor complex of the graphics processing device, assign the first subset of operations to the scalar processor complex for execution to generate a first set of outputs, assign the second subset of operations to the vector processor complex for execution to generate a second set of outputs. Other embodiments are also disclosed and claimed.

First claim

Opening claim text (preview).

The invention claimed is: 1. An apparatus comprising: a scalar processor complex comprising a plurality of scalar processor cores; a vector processor complex comprising a plurality of vector processor cores; a hardware accelerator bank comprising a tensor core to perform matrix processing for deep learning operations using a plurality of operand precisions; and a pre-processor communicably coupled to the scalar processor complex, the vector processor complex, and the hardware accelerator bank, wherein the pre-processor to: receive a binary translation of a code segment of a plurality of code segments corresponding to a set of workload instructions for a graphics workload from a host processor; analyze operations of the binary translation to identify whether the operations are suitable for execution by one of the scalar processor complex, the vector processor complex, or the hardware accelerator bank; and assigning the operations of the binary translation to the one of the scalar processor complex, the vector processor complex, or the hardware accelerator bank that is identified as suitable for execution of the operations. 2. The apparatus of claim 1 , wherein the pre-processor is further to continue to process other binary translations of other code segments of the plurality of code segments until the graphics workload is finished. 3. The apparatus of claim 2 , wherein the pre-processor is further to store outputs in a local memory. 4. The apparatus of claim 3 , wherein the pre-processor is further to synchronize the local memory with a memory in the host processor after the graphics workload is finished processing. 5. The apparatus of claim 3 , wherein the pre-processor is further to synchronize an execution marker with the host processor after the graphics workload is finished processing. 6. The apparatus of claim 1 , wherein the operations comprises at least one of a stack push operation, a stack pop operation, a register spill operation, a register fill operation, a read operation, or a write operation. 7. A computer-implemented method comprising: receiving, by a pre-processor of a graphics processing device, a binary translation of a code segment of a plurality of code segments corresponding to a set of workload instructions for a graphics workload from a host processor, wherein the pre-processor is communicably coupled to a scalar processor complex comprising a plurality of scalar processor cores, to a vector processor complex comprising a plurality of vector processor cores, and to a hardware accelerator bank comprising a tensor core to perform matrix processing for deep learning operations using a plurality of operand precisions; analyzing, by the pre-processor, operations of the binary translation to identify whether the operations are suitable for execution by one of the scalar processor complex, the vector processor complex, or the hardware accelerator bank; and assigning, by the pre-processor, the operations of the binary translation to the one of the scalar processor complex, the vector processor complex, or the hardware accelerator bank that is identified as suitable for execution of the operations. 8. The computer-implemented method of claim 7 , further comprising continuing to process other binary translations of other code segments of the plurality of code segments until the graphics workload is finished. 9. The computer-implemented method of claim 8 , further comprising storing outputs in a local memory. 10. The computer-implemented method of claim 9 , further comprising synchronizing the local memory with a memory in the host processor after the graphics workload is finished processing. 11. The computer-implemented method of claim 9 , further comprising synchronizing an execution marker with the host processor after the graphics workload is finished processing. 12. The computer-implemented method of claim 7 , wherein the operations comprises at least one of a stack push operation, a stack pop operation, a register spill operation; a register fill operation, a read operation, or a write operation. 13. A non-transitory computer-readable medium comprising one or more instructions that, when executed on at least one processor, configure the at least one processor to perform operations to: receiving, by a pre-processor of a graphics processing device of the at least one processor, a binary translation of a code segment of a plurality of code segments corresponding to a set of workload instructions for a graphics workload from a host processor, wherein the pre-processor is communicably coupled to a scalar processor complex comprising a plurality of scalar processor cores, to a vector processor complex comprising a plurality of vector processor cores, and to a hardware accelerator bank comprising a tensor core to perform matrix processing for deep learning operations using a plurality of operand precisions; analyzing, by the pre-processor, operations of the binary translation to identify whether the operations are suitable for execution by one of the scalar processor complex, the vector processor complex, or the hardware accelerator bank; and assigning, by the pre-processor, the operations of the binary translation to the one of the scalar processor complex, the vector processor complex, or the hardware accelerator bank that is identified as suitable for execution of the operations. 14. The non-transitory computer-readable medium of claim 13 , further comprising one or more instructions that when executed on the at least one processor configure the at least one processor to continue to process other binary translations of other code segments of the plurality of code segments until the graphics workload is finished. 15. The non-transitory computer-readable medium of claim 14 , further comprising one or more instructions that when executed on the at least one processor configure the at least one processor to store outputs in a local memory. 16. The non-transitory computer-readable medium of claim 15 , further comprising one or more instructions that when executed on the at least one processor configure the at least one processor to synchronize the local memory with a memory in the host processor after the graphics workload is finished processing. 17. The non-transitory computer-readable medium of claim 15 , further comprising one or more instructions that when executed on the at least one processor configure the at least one processor to synchronize an execution marker with the host processor after the graphics workload is finished processing. 18. The non-transitory computer-readable medium of claim 13 , wherein the operations comprise at least one of a stack push operation, a stack pop operation, a register spill operation; a register fill operation, a read operation, or a write operation. 19. A system comprising: a local memory; a host processor; a scalar processor complex comprising a plurality of scalar processor cores; a vector processor complex comprising a plurality of vector processor cores; a hardware accelerator bank comprising a tensor core to perform matrix processing for deep learning operations using a plurality of operand precisions; and a pre-processor communicably coupled to the local memory, the host processor, the scalar processor complex, the vector processor complex, and the hardware accelerator bank, the pre-processor to: receive a binary translation of a code segment of a plurality of code segments corresponding to a set of workload instructions for a graphics workload from a host processor;

Assignees

Inventors

Classifications

  • G06F9/5044Primary

    considering hardware capabilities · CPC title

  • using a cache · CPC title

  • with implied specifier, e.g. top of stack · CPC title

  • Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution · CPC title

  • using a secondary processor, e.g. coprocessor (peripheral processor G06F13/12) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11762804B2 cover?
Methods and apparatus relating to scalar core integration in a graphics processor. In an example, an apparatus comprises a processor to receive a set of workload instructions for a graphics workload from a host complex, determine a first subset of operations in the set of operations that is suitable for execution by a scalar processor complex of the graphics processing device and a second subse…
Who is the assignee on this patent?
Intel Corp
What technology area does this patent fall under?
Primary CPC classification G06F9/5044. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Sep 19 2023 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).