Patents by Inventor Sriram Rao

Sriram Rao 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: 20240085964
    Abstract: A system and method for updating power supply voltages due to variations from aging are described. A functional unit includes a power supply monitor capable of measuring power supply variations in a region of the functional unit. An age counter measures an age of the functional unit. A control unit notifies the power supply monitor to measure an operating voltage reference. When the control unit receives a measured operating voltage reference, the control unit determines an updated age of the region different from the current age based on the measured operating voltage reference. The control unit updates the age counter with the corresponding age, which is younger than the previous age in some cases due to the region not experiencing predicted stress and aging. The control unit is capable of determining a voltage adjustment for the operating voltage reference based on an age indicated by the age counter.
    Type: Application
    Filed: November 20, 2023
    Publication date: March 14, 2024
    Inventors: Sriram Sambamurthy, Sriram Sundaram, Indrani Paul, Larry David Hewitt, Anil Harwani, Aaron Joseph Grenat, Dana Glenn Lewis, Leonardo Piga, Wonje Choi, Karthik Rao
  • Patent number: 11210270
    Abstract: A system that maps files into multiple parts and initiates storage of each part within a respective storage provider. The mapping facilitates this by correlating each of the multiple parts to a corresponding storage provider which may be different than the storage provider that stores a different part of the same file. The system then initiates storage of the multiple parts of the file in each of their corresponding storage provider in accordance with the mapping, and using a storage-provider-facing API. Similarly, retrieval and/or editing of a partial file may be accomplished by referencing the mapping, and using the same API issued to the appropriate storage provider. Each storage provider is capable of interfacing with the system using this same API.
    Type: Grant
    Filed: September 15, 2017
    Date of Patent: December 28, 2021
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Peng Li, Raghunath Ramakrishnan, Baskar Sridharan, Christopher William Douglas, Virajith Jalaparti, Sriram Rao, Sri Sai Kameswara Pavan Kumar Kasturi, Karthick Krishnamoorthy, Chakrapani Bhat Talapady, Krishna Pradeep Reddy Tamma
  • Patent number: 11010193
    Abstract: Embodiments for efficient queue management for cluster scheduling and managing task queues for tasks which are to be executed in a distributed computing environment. Both centralized and distributed scheduling is provided. Task queues may be bound by length-based bounding or delay-based bounding. Tasks may be prioritized and task queues may be dynamically reordered based on task priorities. Job completion times and cluster resource utilization may both be improved.
    Type: Grant
    Filed: April 16, 2018
    Date of Patent: May 18, 2021
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Konstantinos Karanasos, Sriram Rao, Srikanth Kandula, Milan Vojnovic, Jeffrey Thomas Rasley, Rodrigo Lopes Cancado Fonseca
  • Publication number: 20190370408
    Abstract: Mechanisms to modify a dataflow execution graph that processes a data stream. An intermediate dataflow execution graph is used during modification of the dataflow execution graph from one configuration (the old dataflow execution graph) to the next (the new dataflow execution graph). Data messages of the data stream may continue to feed into the intermediate dataflow execution graph, thereby reducing latency and maintaining throughput during reconfiguration of the dataflow execution graph. Control message(s) that are structured to accomplish the reconfiguration is/are also passed into the intermediate dataflow execution graph during reconfiguration. As the control message(s) are all processed by the intermediate dataflow execution graph, the intermediate dataflow execution graph assumes the topology of the new dataflow execution graph.
    Type: Application
    Filed: May 31, 2018
    Publication date: December 5, 2019
    Inventors: Rahul POTHARAJU, Kai ZENG, Paolo COSTA, Terry Yumin KIM, Sudheer DHULIPALLA, Saravanan MUTHUKRISHNAN, Shivaram VENKATARAMAN, Le XU, Lao MAI, Steve D. SUH, Sriram RAO
  • Publication number: 20180300174
    Abstract: Embodiments for efficient queue management for cluster scheduling and managing task queues for tasks which are to be executed in a distributed computing environment. Both centralized and distributed scheduling is provided. Task queues may be bound by length-based bounding or delay-based bounding. Tasks may be prioritized and task queues may be dynamically reordered based on task priorities. Job completion times and cluster resource utilization may both be improved.
    Type: Application
    Filed: April 16, 2018
    Publication date: October 18, 2018
    Inventors: Konstantinos KARANASOS, Sriram RAO, Srikanth KANDULA, Milan VOJNOVIC, Jeffrey Thomas RASLEY, Rodrigo Lopes Cancado FONSECA
  • Publication number: 20180260392
    Abstract: A system that maps files into multiple parts and initiates storage of each part within a respective storage provider. The mapping facilitates this by correlating each of the multiple parts to a corresponding storage provider which may be different than the storage provider that stores a different part of the same file. The system then initiates storage of the multiple parts of the file in each of their corresponding storage provider in accordance with the mapping, and using a storage-provider-facing API. Similarly, retrieval and/or editing of a partial file may be accomplished by referencing the mapping, and using the same API issued to the appropriate storage provider. Each storage provider is capable of interfacing with the system using this same API.
    Type: Application
    Filed: September 15, 2017
    Publication date: September 13, 2018
    Inventors: Peng LI, Raghunath RAMAKRISHNAN, Baskar SRIDHARAN, Christopher William DOUGLAS, Virajith JALAPARTI, Sriram RAO, Sri Sai Kameswara Pavan KUMAR KASTURI, Karthick Krishnamoorthy, Chakrapani Bhat TALAPADY, Krishna Pradeep Reddy TAMMA
  • Patent number: 9876878
    Abstract: Embodiments are directed to progressively migrating source computer nodes where the source computer nodes perform a computer-implemented service. In one embodiment, a computer system determines that execution of the performed service is to be migrated from the source computer nodes to target computer nodes. The computer system groups the source computer nodes into multiple source subgroups, where each source subgroup includes at least one source computer node. The computer system then schedules creation of target subgroups of target nodes. These target subgroups include at least one source computer node and, themselves, correspond to a source subgroup. The computer system activates a first target subgroup corresponding to a first source subgroup, and deactivates the first source subgroup. In this manner, the first target subgroup replaces the first source subgroup. Still further, the target subgroups are scheduled to be created only after the first source subgroup has been deactivated.
    Type: Grant
    Filed: January 20, 2017
    Date of Patent: January 23, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Kishore Chaliparambil, Carlo Curino, Kannababu Karanam, Subramaniam Venkatraman Krishnan, Christopher William Douglas, Sriram Rao, Mostafa Elhemali, Chuan Liu
  • Publication number: 20170134526
    Abstract: Embodiments are directed to progressively migrating source computer nodes where the source computer nodes perform a computer-implemented service. In one embodiment, a computer system determines that execution of the performed service is to be migrated from the source computer nodes to target computer nodes. The computer system groups the source computer nodes into multiple source subgroups, where each source subgroup includes at least one source computer node. The computer system then schedules creation of target subgroups of target nodes. These target subgroups include at least one source computer node and, themselves, correspond to a source subgroup. The computer system activates a first target subgroup corresponding to a first source subgroup, and deactivates the first source subgroup. In this manner, the first target subgroup replaces the first source subgroup. Still further, the target subgroups are scheduled to be created only after the first source subgroup has been deactivated.
    Type: Application
    Filed: January 20, 2017
    Publication date: May 11, 2017
    Inventors: Kishore Chaliparambil, Carlo Curino, Kannababu Karanam, Subramaniam Venkatraman Krishnan, Christopher William Douglas, Sriram Rao, Mostafa Elhemali, Chuan Liu
  • Patent number: 9578091
    Abstract: Embodiments are directed to progressively migrating source computer nodes where the source computer nodes perform a computer-implemented service. In one embodiment, a computer system determines that execution of the performed service is to be migrated from the source computer nodes to target computer nodes. The computer system groups the source computer nodes into multiple source subgroups, where each source subgroup includes at least one source computer node. The computer system then schedules creation of target subgroups of target nodes. These target subgroups include at least one source computer node and, themselves, correspond to a source subgroup. The computer system activates a first target subgroup corresponding to a first source subgroup, and deactivates the first source subgroup. In this manner, the first target subgroup replaces the first source subgroup. Still further, the target subgroups are scheduled to be created only after the first source subgroup has been deactivated.
    Type: Grant
    Filed: December 30, 2013
    Date of Patent: February 21, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Kishore Chaliparambil, Carlo Curino, Kannababu Karanam, Subramaniam Venkatraman Krishnan, Christopher William Douglas, Sriram Rao, Mostafa Elhemali, Chuan Liu
  • Publication number: 20150188989
    Abstract: Embodiments are directed to progressively migrating source computer nodes where the source computer nodes perform a computer-implemented service. In one embodiment, a computer system determines that execution of the performed service is to be migrated from the source computer nodes to target computer nodes. The computer system groups the source computer nodes into multiple source subgroups, where each source subgroup includes at least one source computer node. The computer system then schedules creation of target subgroups of target nodes. These target subgroups include at least one source computer node and, themselves, correspond to a source subgroup. The computer system activates a first target subgroup corresponding to a first source subgroup, and deactivates the first source subgroup. In this manner, the first target subgroup replaces the first source subgroup. Still further, the target subgroups are scheduled to be created only after the first source subgroup has been deactivated.
    Type: Application
    Filed: December 30, 2013
    Publication date: July 2, 2015
    Applicant: Microsoft Corporation
    Inventors: Kishore Chaliparambil, Carlo Curino, Kannababu Karanam, Subramaniam Venkatraman Krishnan, Christopher William Douglas, Sriram Rao, Mostafa Elhemali, Chuan Liu
  • Publication number: 20130007091
    Abstract: Various methods and apparatuses are provided which may be implemented using one or more computing devices within a networked computing environment to support a computing grid having selective storage of shared data files within certain distributed the systems provided by dusters of computing devices. The selective storage may represent limited duplicative storage of a shared file.
    Type: Application
    Filed: July 1, 2011
    Publication date: January 3, 2013
    Applicant: Yahoo! Inc.
    Inventors: Sriram Rao, Adam Silberstein, Russell Sears, Azza Abouzeid
  • Patent number: 7730277
    Abstract: A multi-stage technique invalidates and replaces loadable physical volume block numbers (pvbns) stored in indirect blocks of a dual vbn (“flexible”) virtual volume (vvol) of a storage system to enable efficient image transfers and/or fragmentation handling of the flexible vvol. Each loadable pvbn of a pvbn/virtual vbn (vvbn) block pointer pair is converted into a special block pointer having a predefined reserved value that provides a temporary “pvbn_unknown” placeholder until replaced by a real (actual) pvbn. The technique further allows the storage system to serve data from the flexible vvol using the placeholders while the actual pvbns are computed, thereby eliminating latencies associated with completion of actual pvbn replacement for the pvbn_unknown placeholders.
    Type: Grant
    Filed: October 25, 2004
    Date of Patent: June 1, 2010
    Assignee: NetApp, Inc.
    Inventors: Ashish Prakash, John K. Edwards, Sriram Rao
  • Patent number: 7467282
    Abstract: A file system migrates a traditional volume to a virtual volume without data copying. In an embodiment, a traditional volume index node is selected for migration. The traditional volume index node is converted to a virtual volume index node. In one embodiment, the virtual volume index node provides both physical address information and virtual address information.
    Type: Grant
    Filed: April 5, 2005
    Date of Patent: December 16, 2008
    Assignee: Network Appliance, Inc.
    Inventors: Sriram Rao, John Edwards, Douglas P. Doucette, Cheryl Thompson
  • Patent number: 7136935
    Abstract: A method and apparatus for reducing performance overhead of a media server sending packetized audio/video data to an end-player or user is provided. The main sources of performance overhead associated with a media server transmitting packetized audio/video data are (1) copying data from the user space buffer to the kernel buffer and (2) context switching from user level to kernel level. There are several techniques that can be used to address overhead. One technique involves creating an aggregate packet, which includes a policy, at the user level and transmitting this aggregate packet from the user level to the OS level with a system call. A second technique involves manipulating packets based on a policy in the OS level rather than in the user level. The manipulation of packets may include redirecting packets or splitting packets.
    Type: Grant
    Filed: June 22, 2001
    Date of Patent: November 14, 2006
    Assignee: Inktomi Corporation
    Inventor: Sriram Rao
  • Publication number: 20060224843
    Abstract: A file system migrates a traditional volume to a virtual volume without data copying. In an embodiment, a traditional volume index node is selected for migration. The traditional volume index node is converted to a virtual volume index node. In one embodiment, the virtual volume index node provides both physical address information and virtual address information.
    Type: Application
    Filed: April 5, 2005
    Publication date: October 5, 2006
    Inventors: Sriram Rao, John Edwards, Douglas Doucette, Cheryl Thompson
  • Publication number: 20030007488
    Abstract: A method and apparatus for reducing performance overhead of a media server sending packetized audio/video data to an end-player or user is provided. The main sources of performance overhead associated with a media server transmitting packetized audio/video data are (1) copying data from the user space buffer to the kernel buffer and (2) context switching from user level to kernel level. There are several techniques that can be used to address overhead. One technique involves creating an aggregate packet, which includes a policy, at the user level and transmitting this aggregate packet from the user level to the OS level with a system call. A second technique involves manipulating packets based on a policy in the OS level rather than in the user level. The manipulation of packets may include redirecting packets or splitting packets.
    Type: Application
    Filed: June 22, 2001
    Publication date: January 9, 2003
    Inventor: Sriram Rao