Efficiency of cycle-reproducible debug processes in a multi-core environment

US9513985B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9513985-B1
Application numberUS-201615013731-A
CountryUS
Kind codeB1
Filing dateFeb 2, 2016
Priority dateJun 29, 2015
Publication dateDec 6, 2016
Grant dateDec 6, 2016

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.

An approach for improving efficiency of cycle-reproducible debug in a multi-core environment is provided. The approach executes an exerciser image on one or more cores, wherein the exerciser image includes one or more different seeds. The approach determines a seed from the one or more different seeds that locates a fail-condition. Responsive to determining a seed from the one or more different seeds that locates the fail condition, the approach determines an upper bound and a lower bound of the fail-condition. The approach determines an exact cycle where the fail-condition occurs. The approach constructs a multi-cycle trace for the fail-condition.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for improving efficiency of cycle-reproducible debug in a multi-core environment, the method comprising: executing, by one or more computer processors, an exerciser image on one or more cores, wherein the exerciser image includes one or more different seeds, wherein executing includes presetting each of the one or more cores with the one or more different seeds, wherein the one or more different seeds are at least one of: a pseudo random value or a binary value, and evaluating the one or more different seeds for each of the one or more cores concurrently; determining, by one or more computer processors, a seed from the one or more different seeds that locates a fail-condition; responsive to determining a seed from the one or more different seeds that locates the fail condition, determining, by one or more computer processors, an upper bound and a lower bound of the fail-condition, wherein determining includes executing the exerciser image with the seed on each of the one or more cores for a range of cycles, wherein each of the one or more cores is set to stop at a different cycle within the range of cycles, searching from an initial cycle at the beginning of a test execution run where the fail-condition does not exist to a subsequent cycle of a test execution run where the fail-condition exists, and determining whether the fail-condition has occurred within the range of cycles executed on each of the one or more cores; responsive to a determination that the fail-condition has occurred within the range of cycles executed by at least one of the one or more cores, determining, by one or more computer processors, a lowest cycle count in the at least one of the one or more cores where the fail-condition as an upper bound; responsive to a determination that the fail-condition has not occurred within the range of cycles executed by at least one of the one or more cores, resetting, by one or more computer processors, each of the one or more cores with a higher stopping cycle; determining, by one or more computer processors, an exact cycle where the fail-condition occurs, wherein determining includes performing a plurality of distributed searches for the fail-condition across each of the one or more cores, wherein performing the plurality of distributed searches includes distributing a number of cycles between the upper bound and the lower bound across each of the one or more cores; constructing, by one or more computer processors, a multi-cycle trace for the fail-condition, wherein constructing includes performing one test execution per-cycle, including the exact cycle where the fail condition occurred, and extracting data from one or more cycles preceding the exact cycle where the fail-condition occurred, data from the exact cycle where the fail-condition occurred, and data from one or more cycles subsequent to the exact cycle where the fail-condition occurred; and aggregating, by one or more computer processors, test data collected from a plurality of test executions.

Assignees

Inventors

Classifications

  • to test CPU or processors · CPC title

  • in a multiprocessor or a multi-core unit (multiprocessors per se G06F15/80) · CPC title

  • G06F11/079Primary

    Root cause analysis, i.e. error or fault diagnosis (in a hardware test environment G06F11/22; in a software test environment G06F11/36) · CPC title

  • in multi-processor systems, e.g. one processor becoming the primary tester (G06F11/2736 takes precedence) · CPC title

  • Debugging of software · 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 US9513985B1 cover?
An approach for improving efficiency of cycle-reproducible debug in a multi-core environment is provided. The approach executes an exerciser image on one or more cores, wherein the exerciser image includes one or more different seeds. The approach determines a seed from the one or more different seeds that locates a fail-condition. Responsive to determining a seed from the one or more different…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F11/079. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 06 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).