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:
Nov. 27, 2012

Filed:

Jan. 26, 2007
Applicants:

John R. Nickolls, Los Altos, CA (US);

Henry P. Moreton, Woodside, CA (US);

Lars S. Nyland, Carrboro, NC (US);

Ian A. Buck, San Jose, CA (US);

Richard C. Johnson, Cary, NC (US);

Robert S. Glanville, Cupertino, CA (US);

Jayant B. Kolhe, Milpitas, CA (US);

Inventors:

John R. Nickolls, Los Altos, CA (US);

Henry P. Moreton, Woodside, CA (US);

Lars S. Nyland, Carrboro, NC (US);

Ian A. Buck, San Jose, CA (US);

Richard C. Johnson, Cary, NC (US);

Robert S. Glanville, Cupertino, CA (US);

Jayant B. Kolhe, Milpitas, CA (US);

Assignee:

NVIDIA Corporation, Santa Clara, CA (US);

Attorney:
Primary Examiner:
Assistant Examiner:
Int. Cl.
CPC ...
G06F 9/45 (2006.01);
U.S. Cl.
CPC ...
Abstract

A virtual architecture and instruction set support explicit parallel-thread computing. The virtual architecture defines a virtual processor that supports concurrent execution of multiple virtual threads with multiple levels of data sharing and coordination (e.g., synchronization) between different virtual threads, as well as a virtual execution driver that controls the virtual processor. A virtual instruction set architecture for the virtual processor is used to define behavior of a virtual thread and includes instructions related to parallel thread behavior, e.g., data sharing and synchronization. Using the virtual platform, programmers can develop application programs in which virtual threads execute concurrently to process data; virtual translators and drivers adapt the application code to particular hardware on which it is to execute, transparently to the programmer.


Find Patent Forward Citations

Loading…