Patents by Inventor Vasudevan Sangili

Vasudevan Sangili 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: 10359945
    Abstract: A data storage system has a plurality of hosts that request writes of data to a relatively high-performance storage device (RHPSD) such as NVRAM, which may be one of a plurality of RHPSDs in a plurality of storage nodes. A storage management system receives the write requests and writes received data to the RHPSD. According to an allocation policy, the storage management system indicates to at least one of the hosts that it should limit its use of RHPSD and it then discards data upon indication from that host to do so. Before being discarded from the RHPSD, the data may be written to a persistent storage device.
    Type: Grant
    Filed: September 13, 2018
    Date of Patent: July 23, 2019
    Assignee: Datrium, Inc.
    Inventors: Garrett Smith, Nitin Garg, Alex Mirgorodsky, R. Hugo Patterson, III, Vasudevan Sangili, Ganesh Venkitachalam
  • Publication number: 20190012083
    Abstract: A data storage system has a plurality of hosts that request writes of data to a relatively high-performance storage device (RHPSD) such as NVRAM, which may be one of a plurality of RHPSDs in a plurality of storage nodes. A storage management system receives the write requests and writes received data to the RHPSD. According to an allocation policy, the storage management system indicates to at least one of the hosts that it should limit its use of RHPSD and it then discards data upon indication from that host to do so. Before being discarded from the RHPSD, the data may be written to a persistent storage device.
    Type: Application
    Filed: September 13, 2018
    Publication date: January 10, 2019
    Inventors: Garrett SMITH, Nitin GARG, Alex MIRGORODSKY, R. Hugo PATTERSON, III, Vasudevan SANGILI, Ganesh VENKITACHALAM
  • Patent number: 10089013
    Abstract: A data storage system has a plurality of hosts that request writes of data to a relatively high-performance storage device (RHPSD) such as NVRAM, which may be one of a plurality of RHPSDs in a plurality of storage nodes. A storage management system receives the write requests and writes received data to the RHPSD. According to an allocation policy, the storage management system indicates to at least one of the hosts that it should limit its use of RHPSD and it then discards data upon indication from that host to do so. Before being discarded from the RHPSD, the data may be written to a persistent storage device.
    Type: Grant
    Filed: August 28, 2016
    Date of Patent: October 2, 2018
    Assignee: Datrium, Inc.
    Inventors: Garrett Smith, Nitin Garg, Alex Mirgorodsky, R. Hugo Patterson, III, Vasudevan Sangili, Ganesh Venkitachalam
  • Publication number: 20160364145
    Abstract: A data storage system has a plurality of hosts that request writes of data to a relatively high-performance storage device (RHPSD) such as NVRAM, which may be one of a plurality of RHPSDs in a plurality of storage nodes. A storage management system receives the write requests and writes received data to the RHPSD. According to an allocation policy, the storage management system indicates to at least one of the hosts that it should limit its use of RHPSD and it then discards data upon indication from that host to do so. Before being discarded from the RHPSD, the data may be written to a persistent storage device.
    Type: Application
    Filed: August 28, 2016
    Publication date: December 15, 2016
    Applicant: Datrium, Inc.
    Inventors: Garrett SMITH, Nitin GARG, Alex MIRGORODSKY, R. Hugo PATTERSON, III, Vasudevan SANGILI, Ganesh VENKITACHALAM
  • Patent number: 8584138
    Abstract: An embodiment of the invention provides an apparatus and a method for direct switching of software threads. The apparatus and method include performing acts including: issuing a wakeup call from a first thread to a second thread in a sleep state; removing the second thread from the sleep state; switching out the first thread from the resource; switching in the second thread to the resource; and running the second thread on the resource.
    Type: Grant
    Filed: July 30, 2007
    Date of Patent: November 12, 2013
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Vasudevan Sangili, Edward J. Sharpe, Harshadrai Parekh
  • Patent number: 8214834
    Abstract: A system for asynchronous process sleep or wake management and corresponding methods thereof are described. The system comprises a sleep queue hash table, a process, and a first sleep object and a second sleep object. The first and second sleep objects each comprise a sleep queue and each of the first and second sleep objects are associated with the process. The system further comprises one or more kernel-space processes arranged to perform at least one of associating the first sleep object with the sleep queue hash table and designating the second sleep object to be used for sleeping the process.
    Type: Grant
    Filed: April 30, 2007
    Date of Patent: July 3, 2012
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Vasudevan Sangili, Chukwuma Valentine Akpuokwe, Swapneel Kekre
  • Patent number: 7870543
    Abstract: One embodiment relates to a method for dynamic tuning of a user-space process. The method attaches to the user-space process. Load-time and compile-time base addresses of a data section of an object to be tuned are read. An offset to a symbol to be tuned is determined, and an effective address of the symbol is computed. A new value of the symbol is then written. Other embodiments and features are also disclosed.
    Type: Grant
    Filed: December 8, 2006
    Date of Patent: January 11, 2011
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventor: Vasudevan Sangili
  • Publication number: 20090037927
    Abstract: An embodiment of the invention provides an apparatus and a method for direct switching of software threads. The apparatus and method include performing acts including: issuing a wakeup call from a first thread to a second thread in a sleep state; removing the second thread from the sleep state; switching out the first thread from the resource; switching in the second thread to the resource; and running the second thread on the resource.
    Type: Application
    Filed: July 30, 2007
    Publication date: February 5, 2009
    Inventors: Vasudevan Sangili, Edward J. Sharpe, Harshadrai Parekh
  • Publication number: 20080270812
    Abstract: A system for asynchronous process sleep or wake management and corresponding methods thereof are described. The system comprises a sleep queue hash table, a process, and a first sleep object and a second sleep object. The first and second sleep objects each comprise a sleep queue and each of the first and second sleep objects are associated with the process. The system further comprises one or more kernel-space processes arranged to perform at least one of associating the first sleep object with the sleep queue hash table and designating the second sleep object to be used for sleeping the process.
    Type: Application
    Filed: April 30, 2007
    Publication date: October 30, 2008
    Applicant: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
    Inventors: Vasudevan Sangili, Chukwuma Valentine Akpuokwe, Swapneel Kekre
  • Publication number: 20080136832
    Abstract: One embodiment relates to a method for dynamic tuning of a user-space process. The method attaches to the user-space process. Load-time and compile-time base addresses of a data section of an object to be tuned are read. An offset to a symbol to be tuned is determined, and an effective address of the symbol is computed. A new value of the symbol is then written. Other embodiments and features are also disclosed.
    Type: Application
    Filed: December 8, 2006
    Publication date: June 12, 2008
    Inventor: Vasudevan Sangili
  • Patent number: 7181741
    Abstract: An embodiment of the invention provides a method to minimize blocking overhead in upcall based M×N threads. The method includes: setting a limit for the number of outstanding unbound user threads that has blocked and has invoked a blocking upcall mechanism on a particular virtual processor at any point in time; after reaching the limit, if the user threads still blocks, then temporarily disabling the upcall mechanism for these user threads; and re-enabling the upcall mechanism for the user threads during the next context switch time. In another embodiment, an apparatus implemented in a computer to minimize blocking overhead in upcall based M×N threads, includes: a virtual processor configured to track the number of blocked unbound threads that are blocked; and an M×N user space scheduler configured to disable a block upcall handler and an unblock upcall handler for the blocked unbound threads if the number of blocked unbound threads has reached a limit value.
    Type: Grant
    Filed: January 30, 2003
    Date of Patent: February 20, 2007
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventor: Vasudevan Sangili
  • Publication number: 20070011429
    Abstract: Methods, computer readable media, and computing devices including program instructions are provided for virtual memory key generation. One method embodiment includes selecting a memory location that has a virtual memory address and a unique descriptor, assigned to it. The method includes generating a key for identifying the memory location, by using the virtual memory address and the unique descriptor.
    Type: Application
    Filed: July 7, 2005
    Publication date: January 11, 2007
    Inventors: Vasudevan Sangili, Saleem Mohideen, Hari Ganapathy
  • Publication number: 20040154021
    Abstract: An embodiment of the invention provides a method to minimize blocking overhead in upcall based M×N threads. The method includes: setting a limit for the number of outstanding unbound user threads that has blocked and has invoked a blocking upcall mechanism on a particular virtual processor at any point in time; after reaching the limit, if the user threads still blocks, then temporarily disabling the upcall mechanism for these user threads; and re-enabling the upcall mechanism for the user threads during the next context switch time. In another embodiment, an apparatus implemented in a computer to minimize blocking overhead in upcall based M×N threads, includes: a virtual processor configured to track the number of blocked unbound threads that are blocked; and an M×N user space scheduler configured to disable a block upcall handler and an unblock upcall handler for the blocked unbound threads if the number of blocked unbound threads has reached a limit value.
    Type: Application
    Filed: January 30, 2003
    Publication date: August 5, 2004
    Inventor: Vasudevan Sangili