Patents by Inventor Anil Ravindranath
Anil Ravindranath 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: 11521042Abstract: A system and method for dynamically and automatically sharing resources of a coprocessor AI accelerator based on workload changes during training and inference of a plurality of neural networks. The method comprising steps of receiving a plurality of requests from each neural network and high-performance computing applications (HPCs) through a dynamic adaptive scheduler module. The dynamic adaptive scheduler module morphs the received requests into threads, dimensions and memory sizes. The method then receives the morphed requests from the dynamic adaptive scheduler module through client units. Each of the neural network applications is mapped with at least one of the client units on a graphics processing unit (GPU) hosts. The method then receives the morphed requests from the plurality of client units through a plurality of server units. Further, the method receives the morphed request from the plurality of server units through one or more coprocessors.Type: GrantFiled: May 21, 2019Date of Patent: December 6, 2022Inventor: Anil Ravindranath
-
Patent number: 10719245Abstract: In one embodiment, a storage system includes a processor, a memory coupled to the processor to store instructions for execution, and an IO tagging module executed by the processor to determine a plurality of child IO requests required to complete a plurality of received IO request transactions and to tag the IO request transaction and/or the associated child IO requests with a tag identifier uniquely identifying the IO request transaction. The system includes an IO scheduler module executed by the processor to prioritize the IO request transactions according to a policy by grouping the child IO requests based on the associated tag identifier. The grouped child IO requests of the IO request transactions are serviced by a plurality of storage devices of the storage system for an optimal performance.Type: GrantFiled: July 13, 2017Date of Patent: July 21, 2020Assignee: EMC IP HOLDING COMPANY LLCInventors: Krishna Chaitanya Gudipati, Anil Ravindranath, Rahul Ugale
-
Patent number: 10671293Abstract: Described is a system (and technique) to determine an appropriate path to a storage device and scheduling a data transfer by taking into consideration bandwidth, device performance, and the nature of the transfer. The system may use an efficient implementation to reduce overhead when making such a determination by utilizing a reservation table and selecting a dispatch that is efficient for a particular data transfer. For example, the system may determine a first-fit and a future-fit scheduling for an I/O request for each path to a storage device. The system may determine completion times for each of the types of scheduling for each of the paths, and accordingly, select the path and schedule with the earliest completion time.Type: GrantFiled: January 28, 2019Date of Patent: June 2, 2020Assignee: EMC IP HOLDING COMPANY LLCInventors: Krishna Gudipati, Charles Hickey, Anil Ravindranath
-
Patent number: 10599340Abstract: In one embodiment, a storage system receives a number of input/output (IO) request transactions at the storage system having multiple storage devices. For each of the IO request transactions, the system determines a number of child IO requests required to complete the IO request transaction and tags the IO request transaction and/or the associated child IO requests with a tag identifier uniquely identifying the IO request transaction within the same session. The system prioritizes the IO request transactions based on a service priority level associated with each of the IO request transaction. The system dispatches the prioritized child IO requests of the IO request transaction to storage devices, including grouping the associated child IO request to be dispatched together.Type: GrantFiled: July 13, 2017Date of Patent: March 24, 2020Assignee: EMC IP Holding LLCInventors: Krishna Chaitanya Gudipati, Anil Ravindranath, Rahul Ugale
-
Patent number: 10592123Abstract: In one embodiment, a storage system receives a number of input/output (IO) request transactions at the storage system having multiple storage devices, the IO request transactions including at least a read and a write. For each of the IO request transactions, the system determines a number of child IO requests required to complete the IO request transaction, where the child IO requests includes a write child IO request and a read child IO request. The system tags the associated child IO requests with a tag identifier uniquely identifying the IO request transaction within the same session. The system prioritizes the IO request transactions based on a service priority level and completeness of each of the IO request transactions dynamically determined at a point in time and services the child IO requests according to a prioritized order to reduce a time to complete the IO request transaction.Type: GrantFiled: July 13, 2017Date of Patent: March 17, 2020Assignee: EMC IP Holding Company LLCInventors: Krishna Chaitanya Gudipati, Anil Ravindranath, Rahul Ugale
-
Patent number: 10509739Abstract: In one embodiment, a storage system receives a number of input/output (IO) request transactions at the storage system having multiple storage devices. For each of the plurality of IO request transactions, the system determines a number of child IO requests required to complete the IO request transaction. The system tags the IO request transaction and/or the associated child IO requests with a tag identifier. For each of the child requests that is a write IO request, the system determines an optimal write IO request size, segments the write IO request into a number of sub-IO write requests, each having an optimal request size, and interleaves sub-IO write requests with read IO requests for servicing to avoid impact in performance to read IO requests for a mixed IO workload.Type: GrantFiled: July 13, 2017Date of Patent: December 17, 2019Assignee: EMC IP Holding Company LLCInventors: Krishna Chaitanya Gudipati, Anil Ravindranath, Rahul Ugale
-
Patent number: 10474371Abstract: One embodiment is related to a method for implementing a staggered solid-state drive (SSD) replacement schedule, comprising: determining whether more than a first threshold number of SSDs within an array are expected to reach End of Life (EOL) at approximately a same time; determining that the staggered SSD replacement schedule is to be engaged in response to determining that more than the first threshold number of SSDs within the array are expected to reach EOL at approximately the same time; determining the staggered SSD replacement schedule for the SSDs that are expected to reach EOL at approximately the same time; and raising replacement alerts according to the determined staggered SSD replacement schedule to prompt a user to replace the SSDs.Type: GrantFiled: June 30, 2016Date of Patent: November 12, 2019Assignee: EMC IP Holding Company LLCInventors: Anil Ravindranath, Krishna Gudipati
-
Publication number: 20190272461Abstract: A system and method for dynamically and automatically sharing resources of a coprocessor AI accelerator based on workload changes during training and inference of a plurality of neural networks. The method comprising steps of receiving a plurality of requests from each neural network and high-performance computing applications (HPCs) through a dynamic adaptive scheduler module. The dynamic adaptive scheduler module morphs the received requests into threads, dimensions and memory sizes. The method then receives the morphed requests from the dynamic adaptive scheduler module through client units. Each of the neural network applications is mapped with at least one of the client units on a graphics processing unit (GPU) hosts. The method then receives the morphed requests from the plurality of client units through a plurality of server units. Further, the method receives the morphed request from the plurality of server units through one or more coprocessors.Type: ApplicationFiled: May 21, 2019Publication date: September 5, 2019Applicant: Rapt.ai Inc.Inventor: Anil Ravindranath
-
Publication number: 20190235763Abstract: Described is a system (and technique) to determine an appropriate path to a storage device and scheduling a data transfer by taking into consideration bandwidth, device performance, and the nature of the transfer. The system may use an efficient implementation to reduce overhead when making such a determination by utilizing a reservation table and selecting a dispatch that is efficient for a particular data transfer. For example, the system may determine a first-fit and a future-fit scheduling for an I/O request for each path to a storage device. The system may determine completion times for each of the types of scheduling for each of the paths, and accordingly, select the path and schedule with the earliest completion time.Type: ApplicationFiled: January 28, 2019Publication date: August 1, 2019Inventors: Krishna Gudipati, Charles Hickey, Anil Ravindranath
-
Patent number: 10346054Abstract: In one embodiment, a storage system receives a number of input/output (IO) request transactions at the storage system having multiple storage devices. The system detects storage events associated with the storage devices, the storage events include storage device error events, storage device path error events, and solid state storage device high write amplification events. For each of the IO request transactions, the system tags a number of associated child IO requests with a tag identifier and predicts a completion time for the IO request transaction based on a completeness of the IO request transaction and detected events associated with the storage devices. The system sends the child IO requests to the storage devices to be serviced in a first order based on the predicted completion time and an arrival time of the IO request transaction so that the IO request transactions are resilient to storage events.Type: GrantFiled: July 13, 2017Date of Patent: July 9, 2019Assignee: EMC IP HOLDING COMPANY LLCInventors: Krishna Chaitanya Gudipati, Anil Ravindranath, Rahul Ugale
-
Publication number: 20190073127Abstract: A system and method for providing a byte addressable memory for a neural network. The method comprises a step of initiating reading and writing input-output (I/O) request of a file through a neural network application. The method then accesses the file through POSIX APIs. The method maps the accessed file to bytes of a primary memory unit by utilizing load/store CPU instructions. The method maps the bytes to a secondary memory unit through an MMU. The method transmits instructions to a persistent memory aware file system with the MMU mappings and then the instructions are transmitted to the persistent unit. The method receives the reading and writing I/O request from the persistent unit through VFIO driver. The method receives the reading and writing I/O request from VFIO driver through DMA. The method then receives the reading and writing I/O request from the DMA through a memory pertaining to coprocessors.Type: ApplicationFiled: November 5, 2018Publication date: March 7, 2019Applicant: Rapt.ai Inc.Inventor: Anil Ravindranath
-
Patent number: 10216425Abstract: Described is a system (and technique) to determine an appropriate path to a storage device and scheduling a data transfer by taking into consideration bandwidth, device performance, and the nature of the transfer. The system may use an efficient implementation to reduce overhead when making such a determination by utilizing a reservation table and selecting a dispatch that is efficient for a particular data transfer. For example, the system may determine a first-fit and a future-fit scheduling for an I/O request for each path to a storage device. The system may determine completion times for each of the types of scheduling for each of the paths, and accordingly, select the path and schedule with the earliest completion time.Type: GrantFiled: September 30, 2016Date of Patent: February 26, 2019Assignee: EMC IP Holding Company LLCInventors: Krishna Gudipati, Charles Hickey, Anil Ravindranath
-
Patent number: 10216591Abstract: One embodiment is related to a method for determining a faulty hardware component within a data storage system, comprising: collecting data relating to a plurality of input/output (IO) errors associated with a first storage processor within the data storage system; compiling IO error statistics based on the data relating to the plurality of IO errors; and determining a faulty hardware component based on the IO error statistics, wherein the determining of the faulty hardware component comprises utilizing a second storage processor of the data storage system independent from the first storage processor.Type: GrantFiled: June 30, 2016Date of Patent: February 26, 2019Assignee: EMC IP Holding Company LLCInventors: Anil Ravindranath, Krishna Gudipati
-
Patent number: 9785360Abstract: Embodiments are directed to a method of optimizing input/output (I/O) operations to a storage device having mixed read and write operations by determining a current queue state for the read and write operations with respect to defined optimum values of I/O operations per second (IOPS) and latency for the I/O operations, determining device characteristics of the storage device by determining read/write response times, queue depths and dispatch time intervals for an initial read/write operation, and modifying at least one of a wait time or batch size for subsequent read/write operations to meet the defined optimum values of IOPS and latency.Type: GrantFiled: June 29, 2015Date of Patent: October 10, 2017Assignee: EMC IP Holding Company LLCInventors: Anil Ravindranath, Krishna Gudipati
-
Patent number: 9645872Abstract: A system for handling errors during interfacing with storage devices comprises a communications interface and an error handler. The error handler is for: indicating to provide a first instruction to the first storage device using the first path; determining whether an error or time out message is received; in the event the error handler determines that either message is received: indicating to provide a second instruction to the first storage device using a second path; determining whether a second error or second time out message is received; in the event the error handler determines that either message is received, indicating to provide a likely first storage device error message; and in the event the error handler determines that either message is not received, indicating to provide a likely first path error message and indicating to communicate using the second path.Type: GrantFiled: March 27, 2015Date of Patent: May 9, 2017Assignee: EMC IP Holding Company LLCInventors: Anil Ravindranath, Krishna Gudipati