Patents by Inventor Manan Patel
Manan Patel 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).
-
Patent number: 11080051Abstract: A technique for block data transfer is disclosed that reduces data transfer and memory access overheads and significantly reduces multiprocessor activity and energy consumption. Threads executing on a multiprocessor needing data stored in global memory can request and store the needed data in on-chip shared memory, which can be accessed by the threads multiple times. The data can be loaded from global memory and stored in shared memory using an instruction which directs the data into the shared memory without storing the data in registers and/or cache memory of the multiprocessor during the data transfer.Type: GrantFiled: December 12, 2019Date of Patent: August 3, 2021Assignee: NVIDIA CorporationInventors: Andrew Kerr, Jack Choquette, Xiaogang Qiu, Omkar Paranjape, Poornachandra Rao, Shirish Gadre, Steven J. Heinrich, Manan Patel, Olivier Giroux, Alan Kaatz
-
Publication number: 20210124582Abstract: A technique for block data transfer is disclosed that reduces data transfer and memory access overheads and significantly reduces multiprocessor activity and energy consumption. Threads executing on a multiprocessor needing data stored in global memory can request and store the needed data in on-chip shared memory, which can be accessed by the threads multiple times. The data can be loaded from global memory and stored in shared memory using an instruction which directs the data into the shared memory without storing the data in registers and/or cache memory of the multiprocessor during the data transfer.Type: ApplicationFiled: December 12, 2019Publication date: April 29, 2021Inventors: Andrew Kerr, Jack Choquette, Xiaogang Qiu, Omkar Paranjape, Poornachandra Rao, Shirish Gadre, Steven J. Heinrich, Manan Patel, Olivier Giroux, Alan Kaatz
-
Patent number: 10877757Abstract: A just-in-time (JIT) compiler binds constants to specific memory locations at runtime. The JIT compiler parses program code derived from a multithreaded application and identifies an instruction that references a uniform constant. The JIT compiler then determines a chain of pointers that originates within a root table specified in the multithreaded application and terminates at the uniform constant. The JIT compiler generates additional instructions for traversing the chain of pointers and inserts these instructions into the program code. A parallel processor executes this compiled code and, in doing so, causes a thread to traverse the chain of pointers and bind the uniform constant to a uniform register at runtime. Each thread in a group of threads executing on the parallel processor may then access the uniform constant.Type: GrantFiled: February 14, 2018Date of Patent: December 29, 2020Assignee: NVIDIA CorporationInventors: Ajay Tirumala, Jack Choquette, Manan Patel, Shirish Gadre, Praveen Kaushik, Amanpreet Grewal, Shekhar Divekar, Andrei Khodakovsky
-
Patent number: 10866806Abstract: A compiler parses a multithreaded application into cohesive blocks of instructions. Cohesive blocks include instructions that do not diverge or converge. Each cohesive block is associated with one or more uniform registers. When a set of threads executes the instructions in a given cohesive block, each thread in the set may access the uniform register independently of the other threads in the set. Accordingly, the uniform register may store a single copy of data on behalf of all threads in the set of threads, thereby conserving resources.Type: GrantFiled: February 14, 2018Date of Patent: December 15, 2020Assignee: NVIDIA CorporationInventors: Ajay Tirumala, Jack Choquette, Manan Patel, Shirish Gadre, Praveen Kaushik
-
Publication number: 20200226685Abstract: Systems and methods for change in language-based textual analysis are disclosed. In one embodiment, in an information processing apparatus comprising at least one computer processor, a method for change in language-based textual analysis may include: (1) retrieving, from a data source, a first document of a first type; (2) retrieving, from the data source, a second document of the first type, the second document being subsequent in time to the first document; (3) identifying changes between the first document and the second document; (4) calculating a change score based on the changes; and (5) providing the change score to a downstream system for projecting a performance of an investment associated with the first document.Type: ApplicationFiled: January 15, 2019Publication date: July 16, 2020Inventors: Phil Hart, Jonathan Tse, Santosh Khot, Dan Zheng, Manan Patel, Wonseok Choi, Haoran Zhao, Dennis S. Ruhl, Eric Moreau
-
Publication number: 20200081794Abstract: An application may store data to a dataset comprising a plurality of volumes stored on a plurality of storage systems. The application may request a dataset image of the dataset, the dataset image comprising a volume image of each volume of the dataset. A dataset image manager operates with a plurality of volume image managers in parallel to produce the dataset image, each volume image manager executing on a storage system. The plurality of volume image managers respond by performing requested operations and sending responses to the dataset image manager in parallel. Each volume image manager on a storage system may manage and produce a volume image for each volume of the dataset stored to the storage system. If a volume image for any volume of the dataset fails, or a timeout period expires, a cleanup procedure is performed to delete any successful volume images.Type: ApplicationFiled: November 14, 2019Publication date: March 12, 2020Inventors: Stephen Wu, Prathamesh Deshpande, Manan Patel
-
Publication number: 20200050920Abstract: An integrated circuit such as, for example a graphics processing unit (GPU), includes a dynamic power controller for adjusting operating voltage and/or frequency. The controller may receive current power used by the integrated circuit and a predicted power determined based on instructions pending in a plurality of processors. The controller determines adjustments that need to be made to the operating voltage and/or frequency to minimize the difference between the current power and the predicted power. An in-system reinforced learning mechanism is included to self-tune parameters of the controller.Type: ApplicationFiled: July 17, 2019Publication date: February 13, 2020Inventors: Sachin IDGUNJI, Michael SIU, Alex GU, James REILLEY, Manan PATEL, Raj SELVANESAN, Ewa KUBALSKA
-
Publication number: 20200014974Abstract: In some aspects, the disclosure is directed to methods and systems for controlling a set top box remotely and monitoring its display output. Remote control commands may be intercepted or captured and forwarded over a network as encapsulated serial data or HDMI-CEC, in some implementations. This data may be transmitted over a network to a processing device, sometimes referred to as an HDMI pass-through and streamer device. The HDMI pass-through device may receive the encapsulated serial data via the network and retransmit the data as CEC data over HDMI to the set top box as if it were any other HDMI capable device, such as a television. Thus, the recipient set top box may receive the remote control commands via CEC and treat them as incoming IR commands and act accordingly.Type: ApplicationFiled: July 2, 2019Publication date: January 9, 2020Applicant: Avago Technologies General IP (Singapore) Pte. Ltd.Inventors: Manan Patel, Rajesh MAMIDWAR, Prashant Katre, David ERICKSON
-
Patent number: 10509702Abstract: An application may store data to a dataset comprising a plurality of volumes stored on a plurality of storage systems. The application may request a dataset image of the dataset, the dataset image comprising a volume image of each volume of the dataset. A dataset image manager operates with a plurality of volume image managers in parallel to produce the dataset image, each volume image manager executing on a storage system. The plurality of volume image managers respond by performing requested operations and sending responses to the dataset image manager in parallel. Each volume image manager on a storage system may manage and produce a volume image for each volume of the dataset stored to the storage system. If a volume image for any volume of the dataset fails, or a timeout period expires, a cleanup procedure is performed to delete any successful volume images.Type: GrantFiled: October 9, 2017Date of Patent: December 17, 2019Assignee: NetApp Inc.Inventors: Stephen Wu, Prathamesh Deshpande, Manan Patel
-
Publication number: 20190286528Abstract: An application may store data to a dataset comprising a plurality of volumes stored on a plurality of storage systems. The application may request a dataset image of the dataset, the dataset image comprising a volume image of each volume of the dataset. A dataset image manager operates with a plurality of volume image managers in parallel to produce the dataset image, each volume image manager executing on a storage system. The plurality of volume image managers respond by performing requested operations and sending responses to the dataset image manager in parallel. Each volume image manager on a storage system may manage and produce a volume image for each volume of the dataset stored to the storage system. If a volume image for any volume of the dataset fails, or a timeout period expires, a cleanup procedure is performed to delete any successful volume images.Type: ApplicationFiled: June 3, 2019Publication date: September 19, 2019Inventors: Stephen Wu, Prathamesh Deshpande, Manan Patel
-
Publication number: 20190286529Abstract: An application may store data to a dataset comprising a plurality of volumes stored on a plurality of storage systems. The application may request a dataset image of the dataset, the dataset image comprising a volume image of each volume of the dataset. A dataset image manager operates with a plurality of volume image managers in parallel to produce the dataset image, each volume image manager executing on a storage system. The plurality of volume image managers respond by performing requested operations and sending responses to the dataset image manager in parallel. Each volume image manager on a storage system may manage and produce a volume image for each volume of the dataset stored to the storage system. If a volume image for any volume of the dataset fails, or a timeout period expires, a cleanup procedure is performed to delete any successful volume images.Type: ApplicationFiled: June 3, 2019Publication date: September 19, 2019Inventors: Stephen Wu, Prathamesh Deshpande, Manan Patel
-
Patent number: 10346254Abstract: An application may store data to a dataset comprising a plurality of volumes stored on a plurality of storage systems. The application may request a dataset image of the dataset, the dataset image comprising a volume image of each volume of the dataset. A dataset image manager operates with a plurality of volume image managers in parallel to produce the dataset image, each volume image manager executing on a storage system. The plurality of volume image managers respond by performing requested operations and sending responses to the dataset image manager in parallel. Each volume image manager on a storage system may manage and produce a volume image for each volume of the dataset stored to the storage system. If a volume image for any volume of the dataset fails, or a timeout period expires, a cleanup procedure is performed to delete any successful volume images.Type: GrantFiled: October 2, 2017Date of Patent: July 9, 2019Assignee: NetApp Inc.Inventors: Stephen Wu, Prathamesh Deshpande, Manan Patel
-
Publication number: 20190146817Abstract: A just-in-time (JIT) compiler binds constants to specific memory locations at runtime. The JIT compiler parses program code derived from a multithreaded application and identifies an instruction that references a uniform constant. The JIT compiler then determines a chain of pointers that originates within a root table specified in the multithreaded application and terminates at the uniform constant. The JIT compiler generates additional instructions for traversing the chain of pointers and inserts these instructions into the program code. A parallel processor executes this compiled code and, in doing so, causes a thread to traverse the chain of pointers and bind the uniform constant to a uniform register at runtime. Each thread in a group of threads executing on the parallel processor may then access the uniform constant.Type: ApplicationFiled: February 14, 2018Publication date: May 16, 2019Inventors: Ajay TIRUMALA, Jack CHOQUETTE, Manan PATEL, Shirish GADRE, Praveen KAUSHIK, Amanpreet GREWAL, Shekhar DIVEKAR, Andrei KHODAKOVSKY
-
Publication number: 20190146796Abstract: A compiler parses a multithreaded application into cohesive blocks of instructions. Cohesive blocks include instructions that do not diverge or converge. Each cohesive block is associated with one or more uniform registers. When a set of threads executes the instructions in a given cohesive block, each thread in the set may access the uniform register independently of the other threads in the set. Accordingly, the uniform register may store a single copy of data on behalf of all threads in the set of threads, thereby conserving resources.Type: ApplicationFiled: February 14, 2018Publication date: May 16, 2019Inventors: Ajay TIRUMALA, Jack CHOQUETTE, Manan PATEL, Shirish GADRE, Praveen KAUSHIK
-
Publication number: 20180032407Abstract: An application may store data to a dataset comprising a plurality of volumes stored on a plurality of storage systems. The application may request a dataset image of the dataset, the dataset image comprising a volume image of each volume of the dataset. A dataset image manager operates with a plurality of volume image managers in parallel to produce the dataset image, each volume image manager executing on a storage system. The plurality of volume image managers respond by performing requested operations and sending responses to the dataset image manager in parallel. Each volume image manager on a storage system may manage and produce a volume image for each volume of the dataset stored to the storage system. If a volume image for any volume of the dataset fails, or a timeout period expires, a cleanup procedure is performed to delete any successful volume images.Type: ApplicationFiled: October 9, 2017Publication date: February 1, 2018Inventors: Stephen Wu, Prathamesh Deshpande, Manan Patel
-
Publication number: 20180024891Abstract: An application may store data to a dataset comprising a plurality of volumes stored on a plurality of storage systems. The application may request a dataset image of the dataset, the dataset image comprising a volume image of each volume of the dataset. A dataset image manager operates with a plurality of volume image managers in parallel to produce the dataset image, each volume image manager executing on a storage system. The plurality of volume image managers respond by performing requested operations and sending responses to the dataset image manager in parallel. Each volume image manager on a storage system may manage and produce a volume image for each volume of the dataset stored to the storage system. If a volume image for any volume of the dataset fails, or a timeout period expires, a cleanup procedure is performed to delete any successful volume images.Type: ApplicationFiled: October 2, 2017Publication date: January 25, 2018Inventors: Stephen Wu, Prathamesh Deshpande, Manan Patel
-
Patent number: 9785512Abstract: An application may store data to a dataset comprising a plurality of volumes stored on a plurality of storage systems. The application may request a dataset image of the dataset, the dataset image comprising a volume image of each volume of the dataset. A dataset image manager operates with a plurality of volume image managers in parallel to produce the dataset image, each volume image manager executing on a storage system. The plurality of volume image managers respond by performing requested operations and sending responses to the dataset image manager in parallel. Each volume image manager on a storage system may manage and produce a volume image for each volume of the dataset stored to the storage system. If a volume image for any volume of the dataset fails, or a timeout period expires, a cleanup procedure is performed to delete any successful volume images.Type: GrantFiled: October 5, 2015Date of Patent: October 10, 2017Assignee: NetApp, Inc.Inventors: Stephen Wu, Prathamesh Deshpande, Manan Patel
-
Patent number: 9778995Abstract: An application may store data to a dataset comprising a plurality of volumes stored on a plurality of storage systems. The application may request a dataset image of the dataset, the dataset image comprising a volume image of each volume of the dataset. A dataset image manager operates with a plurality of volume image managers in parallel to produce the dataset image, each volume image manager executing on a storage system. The plurality of volume image managers respond by performing requested operations and sending responses to the dataset image manager in parallel. Each volume image manager on a storage system may manage and produce a volume image for each volume of the dataset stored to the storage system. If a volume image for any volume of the dataset fails, or a timeout period expires, a cleanup procedure is performed to delete any successful volume images.Type: GrantFiled: October 5, 2015Date of Patent: October 3, 2017Assignee: NetApp, Inc.Inventors: Stephen Wu, Prathamesh Deshpande, Manan Patel
-
Publication number: 20160055256Abstract: In a system for enabling a user to access a product or service, resources for accessing the product or service, such as apps on a user device, are explored in a specified order. A relatively lower priority resource is not explored until it is determined that all higher priority resources are unavailable. Within the content corresponding to an available resource, the user can be readily directed to the portion of the content that is associated with the particular product or service.Type: ApplicationFiled: August 19, 2014Publication date: February 25, 2016Inventors: Andrew Look, Greg Bowyer, Andrew Goldstein, Joe Isaacson, David Lee, Jeremy Lucas, John Milinovich, Manan Patel, Chris Sell, Parth Shah, Nathanael Smith, Sujeeth, James Turner, Neal Wiggins
-
Publication number: 20160055133Abstract: In a system for enabling a user to access a product or service, resources for accessing the product or service, such as apps on a user device, are explored in a specified order. A relatively lower priority resource is not explored until it is determined that all higher priority resources are unavailable. Within the content corresponding to an available resource, the user can be readily directed to the portion of the content that is associated with the particular product or service.Type: ApplicationFiled: August 19, 2014Publication date: February 25, 2016Inventors: Andrew Look, Greg Bowyer, Andrew Goldstein, Joe Isaacson, David Lee, Jeremy Lucas, John Milinovich, Manan Patel, Chris Sell, Parth Shah, Nathanael Smith, Sujeeth, James Turner, Neal Wiggins