Systems and methods for determining code coverage for GPU shader code

US12443512B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12443512-B2
Application numberUS-202318334246-A
CountryUS
Kind codeB2
Filing dateJun 13, 2023
Priority dateApr 21, 2023
Publication dateOct 14, 2025
Grant dateOct 14, 2025

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.

Systems and methods for determining code coverage for GPU shader code are provided herein. In one example, a method includes adding a flag for each line of shader code to be executed by a GPU. The method further includes creating at least one graphic object to be displayed on a display device for each line of shader code to be executed by the GPU. The method further includes receiving one or more hit files that include a status of one or more attributes of displayed graphic objects on the display device after execution of a requirements-based test. The method further includes generating a structural code coverage report for the shader code based on the one or more hit files and a mapping between the shader code and the displayed graphic objects.

First claim

Opening claim text (preview).

What is claimed is: 1. A method, comprising: adding a flag for each line of shader code to be executed by a graphics processing unit (GPU); creating at least one graphic object to be displayed on a display device for each line of shader code to be executed by the GPU; receiving one or more hit files that include a status of one or more attributes of displayed graphic objects on the display device after execution of a requirements-based test; and generating a structural code coverage report for the shader code based on the one or more hit files and a mapping between the shader code and the displayed graphic objects; wherein adding a flag for each line of shader code to be executed by the GPU includes adding a flag for each statement and decision branch of the shader code to be executed by the GPU. 2. The method of claim 1 , wherein generating the structural code coverage report for the shader code is based on requirements for Design Assurance Level (DAL) A, DAL B, and/or DAL C. 3. The method of claim 1 , wherein the at least one graphic object to be displayed on the display device for a first line of shader code includes a first graphic object and a second graphic object, wherein the first graphic object corresponds to a first decision branch for the first line of shader code, wherein the second graphic object corresponds to a second decision branch for the first line of shader code. 4. The method of claim 1 , wherein the one or more attributes include a color, a shape, a size, and/or a pattern. 5. The method of claim 1 , further comprising displaying each graphic object using a respective pixel of the display device. 6. The method of claim 1 , further comprising changing an attribute of a respective displayed graphic object on the display device for a respective line of the shader code in response to the respective line of shader code being executed during the requirements-based test. 7. The method of claim 1 , further comprising receiving an input from a user indicating a level of structural code coverage required for the structural code coverage report. 8. The method of claim 7 , wherein adding the flag for each line of shader code to be executed by the GPU and creating the at least one graphic object to be displayed on the display device for each line of shader code to be executed by the GPU are based on the level of structural code coverage required for the structural code coverage report indicated by the input from the user. 9. A system, comprising: one or more processors; and a non-transitory, computer readable medium communicatively coupled to the one or more processors, wherein the non-transitory, computer readable medium stores one or more instructions which, when executed by the one or more processors, cause one or more processors to: add a flag for each line of shader code to be executed by a graphics processing unit (GPU); create at least one graphic object to be displayed on a display device for each line of shader code to be executed by the GPU; receive one or more hit files that include a status of one or more attributes of displayed graphic objects on the display device after execution of a requirements-based test; and generate a structural code coverage report for the shader code based the one or more hit files and a mapping between the shader code and the displayed graphic objects; wherein adding the flag for each line of shader code to be executed by the GPU and creating at least one graphic object to be displayed on the display device for each line of shader code executed by the GPU are based on the level of structural code coverage required for the structural code coverage report indicated by the input from the user; and wherein the at least one graphic object has a uniquely modified attribute. 10. The system of claim 9 , wherein the system is configured to output executable instrumented shader code to a target system for execution; wherein the system is configured to receive the one or more hit files from the target system. 11. The system of claim 9 , wherein the one or more instructions, when executed by the one or more processors, further cause one or more processors to: simulate hardware of a target system; output executable instrumented shader code to the simulated hardware of the target system for execution; wherein the system is configured to receive the one or more hit files from the simulated hardware of the target system. 12. The system of claim 9 , wherein the one or more instructions, when executed by the one or more processors, further cause one or more processors to add a flag for each statement and decision branch associated with each line of the shader code to be executed by the GPU; wherein the at least one graphic object to be displayed on a display device for each line of shader code to be executed by the GPU includes a respective graphic object for each statement and decision branch associated with each line of the shader code to be executed by the GPU. 13. The system of claim 9 , wherein the system is configured to receive an input from a user indicating the level of structural code coverage required for the structural code coverage report. 14. The system of claim 9 , wherein the one or more instructions, when executed by the one or more processors, cause the one or more processors to generate the structural code coverage report for the shader code based on requirements for Design Assurance Level (DAL) A, DAL B, and/or DAL C. 15. A method, comprising: receiving instrumented shader code to be executed by a graphics processing unit (GPU) and scripts of a requirements-based test, wherein the instrumented shader code includes one or more flags for each statement and decision branchline of the instrumented shader code to be executed by the GPU; executing the scripts of the requirements-based test; displaying a respective graphic object for each line of the instrumented shader code on a display device; changing an attribute of a respective displayed graphic object for each respective line of the instrumented shader code in response to the respective line of the instrumented shader code being executed during the execution of the scripts of the requirements-based test; and outputting one or more hit files in response to completion of the execution of the scripts of the requirements-based test, wherein the one or more hit files include a status of the attribute of each respective displayed graphic object for each respective line of the instrumented shader code. 16. The method of claim 15 , wherein the attribute includes a color, a shape, a size, and/or a pattern. 17. The method of claim 15 , wherein displaying the respective graphic object for each line of the instrumented shader code on the display device includes displaying the respective graphic object using a respective pixel of the display device. 18. The method of claim 15 , wherein the method comprises outputting the one or more hit files in response to completion of the execution of the scripts of the requirement-based test without storing the one or more hit files in a memory of the GPU. 19. The method of claim 15 , wherein changing the attribute of each respective displayed graphic object for each respective line of the instrumented shader code in response to the respective line of the instrumented shader code being executed during the execution of the scripts of the requirements-based test includes changing the attribute from a default state to a second state.

Assignees

Inventors

Classifications

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 US12443512B2 cover?
Systems and methods for determining code coverage for GPU shader code are provided herein. In one example, a method includes adding a flag for each line of shader code to be executed by a GPU. The method further includes creating at least one graphic object to be displayed on a display device for each line of shader code to be executed by the GPU. The method further includes receiving one or mo…
Who is the assignee on this patent?
Honeywell Int Inc
What technology area does this patent fall under?
Primary CPC classification G06F11/3676. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Oct 14 2025 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 9 related publications on this page (citations in our corpus or others sharing the same primary CPC).