Patents by Inventor Geoffrey Gerfin

Geoffrey Gerfin has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20230315328
    Abstract: Various embodiments include techniques for accessing extended memory in a parallel processing system via a high-bandwidth path to extended memory residing on a central processing unit. The disclosed extended memory system extends the directly addressable high-bandwidth memory local to a parallel processing system and avoids the performance penalties associated with low-bandwidth system memory. As a result, execution threads that are highly parallelizable and access a large memory space execute with increased performance on a parallel processing system relative to prior approaches.
    Type: Application
    Filed: March 18, 2022
    Publication date: October 5, 2023
    Inventors: Hemayet HOSSAIN, Steven E. MOLNAR, Jonathon Stuart Ramsay EVANS, Wishwesh Anil GANDHI, Lacky V. SHAH, Vyas VENKATARAMAN, Mark HAIRGROVE, Geoffrey GERFIN, Jeffrey M. SMITH, Terje BERGSTROM, Vikram SETHI, Piyush PATEL
  • Patent number: 9519568
    Abstract: A system and method for debugging an executing program. The method includes executing a general-purpose computing on graphics processing units (GPGPU) program. The GPGPU program comprises a first portion operable to execute on a central processing unit (CPU) and a second portion operable to execute on a graphics processing unit (GPU). The method further includes attaching a debugging program to the first portion of the GPGPU program and modifying the first portion of the GPGPU program. The attaching of the debugging program to the first portion of the GPGPU program pauses execution of the first portion of the GPGPU program. The method further includes resuming execution of the first portion of the GPGPU program and accessing a first state information corresponding to the first portion of the GPGPU program. Execution of the first portion of the GPGPU program may then be paused.
    Type: Grant
    Filed: December 31, 2012
    Date of Patent: December 13, 2016
    Assignee: NVIDIA CORPORATION
    Inventors: Mayank Kaushik, Alban Douillet, Geoffrey Gerfin, Vyas Venkataraman, Mark Hairgrove, Riley Andrews
  • Publication number: 20150206277
    Abstract: The present invention facilitates efficient and effective utilization of unified virtual addresses across multiple components. In one embodiment, the presented new approach or solution uses Operating System (OS) allocation on the central processing unit (CPU) combined with graphics processing unit (GPU) driver mappings to provide a unified virtual address (VA) across both GPU and CPU. The new approach helps ensure that a GPU VA pointer does not collide with a CPU pointer provided by OS CPU allocation (e.g., like one returned by “malloc” C runtime API, etc.).
    Type: Application
    Filed: January 20, 2015
    Publication date: July 23, 2015
    Inventors: Amit RAO, Ashish SRIVASTAVA, Yogesh KINI, Alban DOUILLET, Geoffrey GERFIN, Mayank KAUSHIK, Nikita SHULGA, Vyas VENKATARAMAN, David FONTAINE, Mark HAIRGROVE, Piotr JAROSZYNSKI, Stephen JONES, Vivek KINI
  • Publication number: 20140189647
    Abstract: A system and method for debugging an executing program. The method includes executing a general-purpose computing on graphics processing units (GPGPU) program. The GPGPU program comprises a first portion operable to execute on a central processing unit (CPU) and a second portion operable to execute on a graphics processing unit (GPU). The method further includes attaching a debugging program to the first portion of the GPGPU program and modifying the first portion of the GPGPU program. The attaching of the debugging program to the first portion of the GPGPU program pauses execution of the first portion of the GPGPU program. The method further includes resuming execution of the first portion of the GPGPU program and accessing a first state information corresponding to the first portion of the GPGPU program. Execution of the first portion of the GPGPU program may then be paused.
    Type: Application
    Filed: December 31, 2012
    Publication date: July 3, 2014
    Applicant: NVIDIA CORPORATION
    Inventors: Mayank Kaushik, Alban Douillet, Geoffrey Gerfin, Vyas Venkataraman, Mark Hairgrove, Riley Andrews
  • Patent number: 8752018
    Abstract: One embodiment of the present invention sets forth a technique for emitting coherent output from multiple threads for the printf( ) function. Additionally, parallel (not divergent) execution of the threads for the printf( ) function is maintained when possible to improve run-time performance. Processing of the printf( ) function is separated into two tasks, gathering of the per thread data and formatting the gathered data according to the formatting codes for display. The threads emit a coherent stream of contiguous segments, where each segment includes the format string for the printf( ) function and the gathered data for a thread. The coherent stream is written by the threads and read by a display processor. The display processor executes a single thread to format the gathered data according to the format string for display.
    Type: Grant
    Filed: June 21, 2011
    Date of Patent: June 10, 2014
    Assignee: NVIDIA Corporation
    Inventors: Stephen Jones, Geoffrey Gerfin
  • Publication number: 20130304996
    Abstract: A system and method for detecting shared memory hazards are disclosed. The method includes, for a unit of hardware operating on a block of threads, mapping a plurality of shared memory locations assigned to the unit to a tracking table. The tracking table comprises an initialization bit as well as access type information, collectively called the state tracking bits for each shared memory location. The method also includes, for an instruction of a program within a barrier region, identifying a second access to a location in shared memory within a block of threads executed by the hardware unit. The second access is identified based on a status of the state tracking bits. The method also includes determining a hazard based on a first type of access and a second type of access to the shared memory location. Information related to the first access is provided in the table.
    Type: Application
    Filed: December 27, 2012
    Publication date: November 14, 2013
    Applicant: NVIDIA Corporation
    Inventors: Vyas Venkataraman, Jaydeep Marathe, Manjunath Kudlur, Vinod Grover, Geoffrey Gerfin, Alban Douillet, Mayank Kaushik
  • Publication number: 20120331470
    Abstract: One embodiment of the present invention sets forth a technique for emitting coherent output from multiple threads for the printf( )function. Additionally, parallel (not divergent) execution of the threads for the printf( )function is maintained when possible to improve run-time performance. Processing of the printf( )function is separated into two tasks, gathering of the per thread data and formatting the gathered data according to the formatting codes for display. The threads emit a coherent stream of contiguous segments, where each segment includes the format string for the printf( )function and the gathered data for a thread. The coherent stream is written by the threads and read by a display processor. The display processor executes a single thread to format the gathered data according to the format string for display.
    Type: Application
    Filed: June 21, 2011
    Publication date: December 27, 2012
    Inventors: Stephen JONES, Geoffrey Gerfin