Patent ID: 8572573

Claim:
A method for performing interactive debugging on non-preemptible graphics processing units, the method comprising: allowing a shader program to be loaded onto a parallel processing unit by an application program, wherein the parallel processing unit is configured to render a graphical user interface for an interactive debugging environment for display on a display device coupled to the parallel processing unit; intercepting a command to transmit a workload to the parallel processing unit; issuing the workload to the parallel processing unit for processing during a first processing pass, wherein the workload is processed by a plurality of threads executing in parallel on separate input data included in the workload, and wherein the parallel processing unit is configured to halt the first processing pass when a hardware trap is triggered by any thread in the plurality of threads; detecting that a hardware trap has occurred during a first point in the first processing pass; and entering a re-launch loop that comprises disabling the first processing pass to allow the graphical user interface to be updated by the parallel processing unit and re-issuing the workload to the parallel processing unit for processing during one or more subsequent processing passes.