Patents by Inventor Karthik Raman
Karthik Raman 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: 11071812Abstract: Doxorubicin is extracted from blood using anionic material, such as a resin comprising sulfonated polystyrene divinylbenzene beads, and polyethersulfone membrane, or both. After exposing the resin and/or membrane to blood in order to remove doxorubicin therefrom, the doxorubicin maybe extracted from the resin and/or membrane by exposing the material to an extraction solution, sonicating the extraction solution to enhance release of the doxorubicin, and repeating the exposure and sonication in order to remove substantially all of doxorubicin from the resin.Type: GrantFiled: May 30, 2017Date of Patent: July 27, 2021Assignee: PENUMBRA, INC.Inventors: Karthik Raman, Colin Yee, Chia-Hung Sze, Arthur John Lockhart, David Barry
-
Patent number: 11030185Abstract: Data sets such as databases are often distributed over a number of servers, where each server stores a subset of records and an index that enables the server to locate the records in response to queries. However, tight coupling of indexing and storage may limit load-balancing, fault recovery, and distribution. Instead, the set of servers may be partitioned into a set of storage servers that store the records and a set of index servers of the index over the records. In a set that is decoupled in this manner, load-balancing may involve provisioning and locating index servers independently of the provisioning and locating of the storage servers in view of the particular sensitivities and tolerances of various applications. Additionally, the index servers may also utilize a data layout that is selected and adapted independent of the data layout of the storage servers and/or the schema of the data stored thereby.Type: GrantFiled: May 29, 2018Date of Patent: June 8, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Karthik Raman, Momin Mahmoud Al-Ghosien, Samer Boshra, Brandon Chong, Madhan Gajendran, Mikhail Mikhailovich Koltachev, Aravind Ramachandran Krishna, Emily Lawton, Liang Li, Karan Vishwanath Popali, Adrian Ilcu Predescu, Ankur Savailal Shah, Pankaj Sharma, Dharma Shukla, Hari Sudan Sundar, Krishnan Sundaram, Shireesh Kumar Thota
-
Patent number: 10977573Abstract: Systems and methods provide distantly supervised wrapper induction for semi-structured documents, including automatically generating and annotating training documents for the wrapper. Training of the wrapper may occur in two phases using the training documents. An example method includes identifying a training set of semi-structured web pages having a subject entity that exists in a knowledge base and, for each training page, identifying target objects, identifying predicates in the knowledge base that connect the subject entity to a target objects identified in the training page, and annotating the training page. Annotating a training page includes generating a feature set for a mention of the target object, generating predicate-target object pairs for the mention, and labeling each predicate-target object pair with a corresponding example type and weight. The annotated training pages are used to train the wrapper to extract new subject entities and new facts from the set of semi-structured web pages.Type: GrantFiled: April 15, 2016Date of Patent: April 13, 2021Assignee: Google LLCInventors: Jeffrey Dalton, Karthik Raman, Evgeniy Gabrilovich, Kevin Patrick Murphy, Wei Zhang
-
Patent number: 10970270Abstract: Databases are often provided according to various organizational models (e.g., document-oriented storage, key/value stores, and relational database), and are accessed through various access models (e.g., SQL, XPath, and schemaless queries). As data is shared across sources and applications, the dependency of a data service upon a particular organizational and/or access models may become confining. Instead, data services may store data in a base representation format, such as an atom-record-sequence model. New data received in a native item format may be converted into the base representation format for storage, and converted into a requested format to fulfill data requests. Queries may be translated from a native query format into a base query format that is applicable to the base representation format of the data set, e.g., via translation into an query intermediate language (such as JavaScript) and compilation into opcodes that are executed by a virtual machine within the database engine.Type: GrantFiled: May 29, 2018Date of Patent: April 6, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Karthik Raman, Momin Mahmoud Al-Ghosien, Samer Boshra, Brandon Chong, Madhan Gajendran, Mikhail Mikhailovich Koltachev, Orestis Kostakis, Aravind Ramachandran Krishna, Liang Li, Jayanta Mondal, Balachandar Perumalswamy, Karan Vishwanath Popali, Adrian Ilcu Predescu, Vivek Ravindran, Ankur Savailal Shah, Pankaj Sharma, Dharma Shukla, Ashwini Singh, Vinod Sridharan, Hari Sudan Sundar, Krishnan Sundaram, Shireesh Kumar Thota, Oliver Drew Leonard Towers, Siddhesh Dilip Vethe
-
Patent number: 10970269Abstract: Data services are often provided with consistency guarantees of either strong consistency models, comprising uniform wall-clock consistency, or eventual consistency models, where temporary logical inconsistency is guaranteed to be resolved only after full data propagation. However, the performance characteristics of contemporary services often require an intermediate consistency model, where some aspects of the service have specific consistency expectations and other aspects of the service are flexible, such as bounded staleness (e.g., a maximum delay in reaching consistency); session consistency (e.g., individual sessions remain logically consistent, but ordering may vary across sessions); and prefix consistency (e.g., each view during a session is logically consistent, but ordering may vary between session views).Type: GrantFiled: May 29, 2018Date of Patent: April 6, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Karthik Raman, Arsalan Ahmad, Momin Mahmoud Al-Ghosien, Mohammad Derakhshani, Madhan Gajendran, Ji Huang, Kiran Kumar Kolli, Sujit Vattathil Kuruvilla, Liang Li, Denis Rystsov, Pankaj Sharma, Dharma Shukla, Hari Sudan Sundar, Shireesh Kumar Thota, Swarnim Vyas
-
Publication number: 20210011747Abstract: A method of bridging a first database and a second database. The method includes maintaining a state machine representing a state of a virtual node in the first database, wherein the state of the virtual node conforms to a native protocol for native nodes of the first database, said native protocol of the first database differing from a foreign protocol of the second database. The method further includes receiving an incoming message for the virtual node from one of the native nodes according to the native protocol, and based on the incoming message, accessing the second database. The method further includes updating the state of the virtual node based on the incoming message according to the native protocol, and based on the state of the virtual node as updated, sending an outgoing message to one or more of the native nodes according to the native protocol.Type: ApplicationFiled: July 11, 2019Publication date: January 14, 2021Applicant: Microsoft Technology Licensing, LLCInventors: Willis LANG, Karthik RAMAN
-
Patent number: 10885018Abstract: A data service may be distributed over a set of servers in order to provide a database with properties such as low latency, high availability, and support for various consistency levels. Presented herein is a particular architecture that promotes rapid provisioning to promote scalability and failover; adaptive load-balancing to accommodate fluctuations in demand; and resiliency in the event of various types of failure, such as network partitions or regional outages. For a service comprising a resource set, a container is provided that hosts a set of replicas of a partition, and that is assigned an allocation of computing capabilities of one or more servers. The resource set of the service may be distributed over the replicas of the container. Scalability is achieved by adding replicas to the container, and load-balancing may be provided by splitting, merging, or otherwise refactoring the partition to accommodate anticipated and unanticipated fluctuations in service demand.Type: GrantFiled: May 29, 2018Date of Patent: January 5, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Karthik Raman, Momin Mahmoud Al-Ghosien, Rajeev Sudhakar Bhopi, Madhan Gajendran, Atul Katiyar, Liang Li, Ankur Savailal Shah, Pankaj Sharma, Dharma Shukla, Hari Sudan Sundar, Shireesh Kumar Thota
-
Patent number: 10817506Abstract: Workloads are often performed by a server set according to a service level agreement, and are often provisioned and load-balanced by dedicating selected computational resources (e.g., servers and bandwidth) for application to the workload. However, resource-based provisioning may not accurately reflect the computational resource expenditure of the workload, leading to overprovisioning or underprovisioning of servers for the workload. Instead, the workload may be evaluated according to a service unit as a measurement of a volume of computational resources consumed by a workload unit, including performance dimensions specified in the service level agreement. The service level agreement may indicate a service unit rate for the workload. The workload may therefore be allocated to a subset of servers in portions according to a service unit rate, where the sum of the service unit rates for the portions allocated to the servers satisfies the service unit rate specified in the service level agreement.Type: GrantFiled: May 29, 2018Date of Patent: October 27, 2020Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Dharma Shukla, Momin Mahmoud Al-Ghosien, Rajeev Sudhakar Bhopi, Samer Boshra, Madhan Gajendran, Artavazd Ginosian, Atul Katiyar, Liang Li, Karthik Raman, Ankur Savailal Shah, Pankaj Sharma, Hari Sudan Sundar, Krishnan Sundaram, Shireesh Kumar Thota, Lalitha Manjapara Viswanathan
-
Patent number: 10698685Abstract: Disclosed embodiments relate to instructions for dual-destination type conversion, accumulation, and atomic memory operations. In one example, a system includes a memory, a processor including: a fetch circuit to fetch the instruction from a code storage, the instruction including an opcode, a first destination identifier, and a source identifier to specify a source vector register, the source vector register including a plurality of single precision floating point data elements, a decode circuit to decode the fetched instruction, and an execution circuit to execute the decoded instruction to: convert the elements of the source vector register into double precision floating point values, store a first half of the double precision floating point values to a first location identified by the first destination identifier, and store a second half of the double precision floating point values to a second location.Type: GrantFiled: May 3, 2017Date of Patent: June 30, 2020Assignee: INTEL CORPORATIONInventors: William M. Brown, Karthik Raman
-
Patent number: 10686875Abstract: A server set may provide a document service to various clients in view of considerations such as availability, fault tolerance, flexibility, and performance. Presented herein are document service architectures that involve partitioning the document set into at least two document ranges, and assigning the respective document ranges to an agent that is deployed to at least one assigned server. A request to apply an operation to a selected document may be fulfilled by identifying the document range of the document; identifying a selected server of the server set that hosts the agent to which the range is assigned; and forwarding the request to the selected server. In some variations, servers may retain detailed information about neighboring servers (e.g., according to logical and/or physical proximity) and scant information about distant servers, thereby avoiding both the extensive information exchange of highly informed network architectures and the inefficiency of uninformed routing algorithms.Type: GrantFiled: November 26, 2018Date of Patent: June 16, 2020Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Dharma Shukla, Madhan Gajendran, Quetzalcoatl Bradley, Shireesh Thota, Karthik Raman, Mark Connolly Benvenuto, John Macintyre, Nemanja Matkovic, Constantin Dulu, Elisa Marie Flasko, Atul Katiyar
-
Patent number: 10684833Abstract: An embodiment of a semiconductor package apparatus may include technology to identify a nested loop in a set of executable instructions, and determine at runtime if the nested loop is a candidate for cache blocking. Other embodiments are disclosed and claimed.Type: GrantFiled: March 15, 2018Date of Patent: June 16, 2020Assignee: Intel CorporationInventors: Ruchira Sasanka, Karthik Raman, Konstantinos Krommydas
-
Publication number: 20200065100Abstract: An apparatus and method for loop flattening and reduction in a SIMD pipeline including broadcast, move, and reduction instructions.Type: ApplicationFiled: August 28, 2019Publication date: February 27, 2020Inventors: WILLIAM M. BROWN, ROLAND SCHULZ, KARTHIK RAMAN
-
Publication number: 20200012792Abstract: In accordance with one embodiment of the present disclosure, a method for determining the similarity between a first data set and a second data set is provided. The method includes performing an entropy analysis on the first and second data sets to produce a first entropy result, wherein the first data set comprises data representative of a first one or more computer files of known content and the second data set comprises data representative of a one or more computer files of unknown content; analyzing the first entropy result; and if the first entropy result is within a predetermined threshold, identifying the second data set as substantially related to the first data set.Type: ApplicationFiled: September 19, 2019Publication date: January 9, 2020Inventors: David Neill Beveridge, Abhishek Ajay Karnik, Kevin A. Beets, Tad M. Heppner, Karthik Raman
-
Publication number: 20200004789Abstract: An application on a device may interact with a document service that provides access to a document service. The interaction may occur in a variety of contexts, such as a device context (e.g., the document service and the application provided on the same device), a local context (e.g., via a LAN), and a remote context (e.g., over the Internet). It may be advantageous to adapt the interaction to the current context, while also providing a consistent application interface that alleviates the application from context-specific implementations, and also achieving this adaptation in a performant manner. These considerations may be achieved in a balanced manner by providing a set of runtimes, where each runtime mediates the application/document service interaction between the application and the document service in a contextually adapted manner. The device may automatically detect the context of the interaction and select a contextually suitable runtime to service the application.Type: ApplicationFiled: September 10, 2019Publication date: January 2, 2020Applicant: Microsoft Technology Licensing, LLCInventors: Dharma Shukla, Karthik Raman
-
Publication number: 20190340265Abstract: A data service may be distributed over a set of servers in order to provide a database with properties such as low latency, high availability, and support for various consistency levels. Presented herein is a particular architecture that promotes rapid provisioning to promote scalability and failover; adaptive load-balancing to accommodate fluctuations in demand; and resiliency in the event of various types of failure, such as network partitions or regional outages. For a service comprising a resource set, a container is provided that hosts a set of replicas of a partition, and that is assigned an allocation of computing capabilities of one or more servers. The resource set of the service may be distributed over the replicas of the container. Scalability is achieved by adding replicas to the container, and load-balancing may be provided by splitting, merging, or otherwise refactoring the partition to accommodate anticipated and unanticipated fluctuations in service demand.Type: ApplicationFiled: May 29, 2018Publication date: November 7, 2019Inventors: Karthik RAMAN, Momin Mahmoud AL-GHOSIEN, Rajeev Sudhakar BHOPI, Madhan GAJENDRAN, Atul KATIYAR, Liang LI, Ankur Savailal SHAH, Pankaj SHARMA, Dharma SHUKLA, Hari Sudan SUNDAR, Shireesh Kumar THOTA
-
Publication number: 20190340168Abstract: A server set for a data set may designate a subset of “master” servers that update the data set in order to reduce data version conflicts involving mutually exclusive updates of the data set. Multi-master configurations may fulfill the performance constraints, and the subset of masters may detect and resolve data version conflicts. However, if multiple masters perform conflict resolution for a particular data version conflict, the resolution may produce inefficiency and redundancy (if the masters reach the same outcome) or additional data version conflicts (if the masters reach different outcomes). Instead, among the masters, a merge master may be identified that applies conflict resolution techniques to data version conflicts and forwards the conflict resolution outcome to the other masters for application to the data set to resolve the data version conflict. The other masters may temporarily store updates in a tentative update set until data version conflicts are resolved.Type: ApplicationFiled: December 4, 2018Publication date: November 7, 2019Inventors: Karthik RAMAN, Momin Mahmoud AL-GHOSIEN, Bhalakumaaran ERODE RANGANATHAN, Madhan GAJENDRAN, Ji HUANG, Atul KATIYAR, Mikhail Mikhailovich KOLTACHEV, Sujit Vattathil KURUVILLA, Digvijaysinh Govindbhai MAKWANA, Subramanyam PATTIPAKA, Ovidiu Constantin PLATON, Ankur Savailal SHAH, Pankaj SHARMA, Dharma SHUKLA, Shreshth SINGHAL, Shireesh Kumar THOTA
-
Publication number: 20190340273Abstract: Data sets such as databases are often distributed over a number of servers, where each server stores a subset of records and an index that enables the server to locate the records in response to queries. However, tight coupling of indexing and storage may limit load-balancing, fault recovery, and distribution. Instead, the set of servers may be partitioned into a set of storage servers that store the records and a set of index servers of the index over the records. In a set that is decoupled in this manner, load-balancing may involve provisioning and locating index servers independently of the provisioning and locating of the storage servers in view of the particular sensitivities and tolerances of various applications. Additionally, the index servers may also utilize a data layout that is selected and adapted independent of the data layout of the storage servers and/or the schema of the data stored thereby.Type: ApplicationFiled: May 29, 2018Publication date: November 7, 2019Inventors: Karthik Raman, Momin Mahmoud Al-Ghosien, Samer Boshra, Brandon Chong, Madhan Gajendran, Mikhail Mikhailovich Koltachev, Aravind Ramachandran Krishna, Emily Lawton, Liang Li, Karan Vishwanath Popali, Adrian Ilcu Predescu, Ankur Savailal Shah, Pankaj Sharma, Dharma Shukla, Hari Sudan Sundar, Krishnan Sundaram, Shireesh Kumar Thota
-
Publication number: 20190342379Abstract: Workloads are often performed by a server set according to a service level agreement, and are often provisioned and load-balanced by dedicating selected computational resources (e.g., servers and bandwidth) for application to the workload. However, resource-based provisioning may not accurately reflect the computational resource expenditure of the workload, leading to overprovisioning or underprovisioning of servers for the workload. Instead, the workload may be evaluated according to a service unit as a measurement of a volume of computational resources consumed by a workload unit, including performance dimensions specified in the service level agreement. The service level agreement may indicate a service unit rate for the workload. The workload may therefore be allocated to a subset of servers in portions according to a service unit rate, where the sum of the service unit rates for the portions allocated to the servers satisfies the service unit rate specified in the service level agreement.Type: ApplicationFiled: May 29, 2018Publication date: November 7, 2019Inventors: Dharma SHUKLA, Momin Mahmoud AL-GHOSIEN, Rajeev Sudhakar BHOPI, Samer BOSHRA, Madhan GAJENDRAN, Artavazd GINOSIAN, Atul KATIYAR, Liang LI, Karthik RAMAN, Ankur Savailal SHAH, Pankaj SHARMA, Hari Sudan SUNDAR, Krishnan SUNDARAM, Shireesh Kumar THOTA, Lalitha Manjapara VISWANATHAN
-
Publication number: 20190342188Abstract: Data services are often provided with consistency guarantees of either strong consistency models, comprising uniform wall-clock consistency, or eventual consistency models, where temporary logical inconsistency is guaranteed to be resolved only after full data propagation. However, the performance characteristics of contemporary services often require an intermediate consistency model, where some aspects of the service have specific consistency expectations and other aspects of the service are flexible, such as bounded staleness (e.g., a maximum delay in reaching consistency); session consistency (e.g., individual sessions remain logically consistent, but ordering may vary across sessions); and prefix consistency (e.g., each view during a session is logically consistent, but ordering may vary between session views).Type: ApplicationFiled: May 29, 2018Publication date: November 7, 2019Inventors: Karthik RAMAN, Arsalan AHMAD, Momin Mahmoud AL-GHOSIEN, Mohammad DERAKHSHANI, Madhan GAJENDRAN, Ji HUANG, Kiran Kumar KOLLI, Sujit Vattathil KURUVILLA, Liang LI, Denis RYSTSOV, Pankaj SHARMA, Dharma SHUKLA, Hari Sudan SUNDAR, Shireesh Kumar THOTA, Swarnim VYAS
-
Publication number: 20190340011Abstract: Distributed transactions are performed over a collection of servers operating as replicas of a data set, where a successful transaction involves meeting a quorum count of replicas that locally commit the transaction. However, performance constraints of data sets and consuming applications may vary (e.g., sensitivity to latency, scalability, and/or consistency), and the performance characteristics of the server set may be partly determined by the transactional commitment and quorum selection. The distributed transaction may be applied by designating the replicas as a set of followers and a leader that initiates the transaction and receives acknowledgments of local commits by each follower. On condition of the acknowledgments meeting a quorum count for the data set according to the performance characteristics of the application, the leader locally commits the transaction and delivers a result.Type: ApplicationFiled: May 4, 2018Publication date: November 7, 2019Inventors: Karthik Raman, Arsalan AHMAD, Momin Mahmoud AL-GHOSIEN, Padma Priya ARADHYULA BHAVANI, Rajeev Sudhakar BHOPI, Junyan GUO, Ji HUANG, Atul KATIYAR, Hemant KUMAR, Sujit Vattathil KURUVILLA, Ovidiu Constantin PLATON, Venkata Sivaramakrishna RAMADUGU, Ankur Savailal SHAH, Pankaj SHARMA, Dharma SHUKLA, Shreshth SINGHAL, Shireesh Kumar THOTA