The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.

The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.

Date of Patent:
Jul. 30, 2024

Filed:

Jun. 14, 2022
Applicant:

Nvidia Corporation, Santa Clara, CA (US);

Inventors:

Konstantinos Kyriakopoulos, Weinsberg, DE;

Michael F. Haidl, Stolberg, DE;

Ralf Andreas Karrenberg, Offenbach am Main, DE;

Zhiwei Cao, San Jose, CA (US);

Gokul Ramaswamy Hirisave Chandra Shekhara, Karnataka, IN;

Girish Bhaskarrao Bharambe, Mahārāshtra, IN;

Justin Andrew Holewinski, Grove City, OH (US);

Bharath Vasudevan, Bangalore, IN;

Assignee:

NVIDIA Corporation, Santa Clara, CA (US);

Attorney:
Primary Examiner:
Int. Cl.
CPC ...
G06F 8/41 (2018.01);
U.S. Cl.
CPC ...
G06F 8/443 (2013.01);
Abstract

Systems and methods related to generating machine code using a coroutine suspension mechanism are disclosed below. An asynchronous programming model utilizing coroutines may be implemented in a compiler for a high-level programming language. The compiler is configured to include functionality related to an intrinsic function for a suspend operation of a coroutine. In accordance with an aspect of the disclosure, a method is disclosed for generating machine code that includes the coroutine mechanism. The method includes: receiving source code for a program in a high-level programming language, and compiling the source code with a compiler to generate machine code for a target processor. The source code includes a caller and a coroutine called by the caller. The compiler is configured to detect an intrinsic function for a suspend operation in the source code for the coroutine. The compiler inserts low-level code in the machine code in accordance with an ABI.


Find Patent Forward Citations

Loading…