Patents by Inventor Pratap Pereira

Pratap Pereira 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: 11880224
    Abstract: A recommendation system can be configured to provide tailored software update relevance information for deployed software. The recommendation engine can obtain running state information for a current version of software running on a device, as well as build data for each of the current version of the software and a new version of the software. The recommendation engine can obtain software version difference information based on the build data and determine, based on at least the software version difference information and the running state information, a number of functions in the current version of software that are directly impacted by the new version. The recommendation engine can cause relevance information derived from this determination to be displayed on a computing device, and/or the recommendation engine can automatically cause an update to the new version of the software to be applied or rejected based on the determination.
    Type: Grant
    Filed: February 24, 2021
    Date of Patent: January 23, 2024
    Assignee: CISCO TECHNOLOGY, INC.
    Inventors: Avaneesh Anandrao Kadam, Pratap Pereira, Ravinandan Govinda Rao Arakali, Harshavardhan Parandekar, Vikram Guleria
  • Patent number: 11681508
    Abstract: Techniques to process a source code program include, by one or more processors, determining an analysis perspective is exhibited by one or more portions of the source code program based at least in part on processing the source code program and an analysis perspective definition collection. The techniques further include storing a mapping of the analysis perspective to event data that is generated by object code when executed by one or more processors of a target computing system, wherein the object code is associated with the one or more source code program portions that exhibit the analysis perspective.
    Type: Grant
    Filed: August 24, 2020
    Date of Patent: June 20, 2023
    Inventor: Pratap Pereira
  • Patent number: 11669432
    Abstract: This disclosure describes techniques to compile source code corresponding to a portion of a software program. The techniques include generating first object code by processing the source code. Based at least in part on processing the source code, generating second object code, wherein the second object code, when executed by one or more processors, causes the one or more processors to perform an operation unconditionally bound to a unique identifier of the operation. The described techniques further include generating an indication of a mapping of the unique identifier to the portion of the software program.
    Type: Grant
    Filed: July 17, 2020
    Date of Patent: June 6, 2023
    Assignee: Cisco Technology, Inc.
    Inventors: Harshavardhan Parandekar, Pratap Pereira, Tapraj Singh, Jeffrey yi dar Lo, Zhijian Zhang
  • Patent number: 11528191
    Abstract: Techniques are described for automatically generating a consistent configuration state version 2 for a network device with no or minimal help from a user and/or from a provider of the network device when updating from a configuration state version 1 to the configuration state version 2. The techniques and architecture also provide for migration from configuration state version 1 to configuration state version 2 when at least some of a configuration state are located in text files that are applied to the network device at start-up of the network device.
    Type: Grant
    Filed: August 16, 2021
    Date of Patent: December 13, 2022
    Assignee: Cisco Technology, Inc.
    Inventors: Domenico Ficara, Roberto Muccifora, Andriani Stylianou, Shankar Sthanuretnam, Pratap Pereira
  • Patent number: 11442708
    Abstract: Techniques for compiling source code include generating object code by processing source code corresponding to a portion of a software program. The source code includes an instruction, native to a program language, for a memory location access. Based at least in part on processing the source code, the compiler generates second object code that, when executed by one or more processors, configures the one or more processors to determine to implement the memory location access using first database access transaction operations or to implement the memory location access using second database access transaction operations. The compiler may generate third object code that configures the one or more processors to implement the memory location access using the first database access transaction operations or to implement the memory location access using the second database access transaction operations, based at least in part based on the determining.
    Type: Grant
    Filed: September 17, 2020
    Date of Patent: September 13, 2022
    Assignee: Cisco Technology, Inc.
    Inventors: Zhijian Zhang, Avaneesh Anandrao Kadam, Pratap Pereira
  • Publication number: 20220269499
    Abstract: A recommendation system can be configured to provide tailored software update relevance information for deployed software. The recommendation engine can obtain running state information for a current version of software running on a device, as well as build data for each of the current version of the software and a new version of the software. The recommendation engine can obtain software version difference information based on the build data and determine, based on at least the software version difference information and the running state information, a number of functions in the current version of software that are directly impacted by the new version. The recommendation engine can cause relevance information derived from this determination to be displayed on a computing device, and/or the recommendation engine can automatically cause an update to the new version of the software to be applied or rejected based on the determination.
    Type: Application
    Filed: February 24, 2021
    Publication date: August 25, 2022
    Inventors: Avaneesh Anandrao Kadam, Pratap Pereira, Ravinandan Govinda Rao Arakali, Harshavardhan Parandekar, Vikram Guleria
  • Publication number: 20220179679
    Abstract: Disclosed herein are techniques to facilitate the performance database transactions directly by applications employing concurrency control of an in-memory database (IMDB) and the compilation of expressions to accomplish such database transactions. This disclosure describes techniques to facilitate the compilation of programming-language expressions into processor-executable instructions that employ software transactional memory (STM) concurrency control of an IMDB.
    Type: Application
    Filed: December 7, 2020
    Publication date: June 9, 2022
    Inventors: Pedro Ramalhete, Patrick Marlier, Pratap Pereira, Avaneesh Anandrao Kadam, Jeffrey yi dar Lo, Tzewei Sou, Zhijian Zhang
  • Publication number: 20220083319
    Abstract: Techniques for compiling source code include generating object code by processing source code corresponding to a portion of a software program. The source code includes an instruction, native to a program language, for a memory location access. Based at least in part on processing the source code, the compiler generates second object code that, when executed by one or more processors, configures the one or more processors to determine to implement the memory location access using first database access transaction operations or to implement the memory location access using second database access transaction operations. The compiler may generate third object code that configures the one or more processors to implement the memory location access using the first database access transaction operations or to implement the memory location access using the second database access transaction operations, based at least in part based on the determining.
    Type: Application
    Filed: September 17, 2020
    Publication date: March 17, 2022
    Inventors: Zhijian Zhang, Avaneesh Anandrao Kadam, Pratap Pereira
  • Publication number: 20220058004
    Abstract: This disclosure describes techniques to process a source code program. The techniques include, by one or more processors, determining an analysis perspective is exhibited by one or more portions of the source code program based at least in part on processing the source code program and an analysis perspective definition collection. The techniques further include storing a mapping of the analysis perspective to event data that is generated by object code when executed by one or more processors of a target computing system, wherein the object code is associated with the one or more source code program portions that exhibit the analysis perspective.
    Type: Application
    Filed: August 24, 2020
    Publication date: February 24, 2022
    Inventor: Pratap Pereira
  • Patent number: 10984048
    Abstract: In one embodiment, an operating system on a computer device interfaces with a graph database that has data nodes interconnected by relationship edges. The operating system generates database instructions that specify a database operation for a target node in the graph database and a node traversal list through the graph database to reach the target node. By then transmitting the database instruction to the graph database, the graph database (e.g., a database management operating system) traverses the specified node traversal list through the graph database to the target node, and performs the database operation on the target node.
    Type: Grant
    Filed: August 20, 2019
    Date of Patent: April 20, 2021
    Assignee: Cisco Technology, Inc.
    Inventors: Jeffrey Y. D Lo, Pratap Pereira, Tzewei Sou
  • Patent number: 10956501
    Abstract: In one embodiment, an operating system (on a computer device in a network of computer devices) interfaces with a distributed graph database that is distributed across the network of computer devices, and executes an application that has one or more parent data constructs that reference one or more child objects within the distributed graph database. Specifically, the one or more child objects each have a location-independent object identifier (OID) having at least: a) an OID-identifier (OID-ID) assigned upon creation to each particular child object by a data source of the location-independent OID; b) an OID-source structure that uniquely identifies the data source of the location-independent OID within the network of computer devices; and c) an OID-pointer indicative of a relative location of the particular child object in a memory mapped region. Accordingly, the operating system accesses the child objects (e.g., for an application) based on the location-independent OID.
    Type: Grant
    Filed: January 22, 2020
    Date of Patent: March 23, 2021
    Assignee: Cisco Technology, Inc.
    Inventors: Vinit Rajan Kizhakkel, Jeffrey Y.D. Lo, Pratap Pereira
  • Publication number: 20200159775
    Abstract: In one embodiment, an operating system (on a computer device in a network of computer devices) interfaces with a distributed graph database that is distributed across the network of computer devices, and executes an application that has one or more parent data constructs that reference one or more child objects within the distributed graph database. Specifically, the one or more child objects each have a location-independent object identifier (OID) having at least: a) an OID-identifier (OID-ID) assigned upon creation to each particular child object by a data source of the location-independent OID; b) an OID-source structure that uniquely identifies the data source of the location-independent OID within the network of computer devices; and c) an OID-pointer indicative of a relative location of the particular child object in a memory mapped region. Accordingly, the operating system accesses the child objects (e.g., for an application) based on the location-independent OID.
    Type: Application
    Filed: January 22, 2020
    Publication date: May 21, 2020
    Inventors: Vinit Rajan Kizhakkel, Jeffrey Y.D. Lo, Pratap Pereira
  • Patent number: 10599672
    Abstract: In one embodiment, a cursor management process inserts temporal references into a plurality of records written to a table of a shared database, the temporal references indicative of an order in which the records are written. A table write cursor points at a last-written record from among the plurality of records, and read cursors point to a last-read record of a corresponding application. The cursor management process may then provide, table updates to a particular application by determining a chain of one or more updated records of the table from the last-read record of the particular application to the last-written record based on walking a particular read cursor for the particular application through the temporal references of the one or more updated records until the particular read cursor points to the last-written record according to the table write cursor.
    Type: Grant
    Filed: October 7, 2016
    Date of Patent: March 24, 2020
    Assignee: Cisco Technology, Inc.
    Inventors: Jeffrey Y. D. Lo, Pratap Pereira, Rajeev Kochhar, Vinit Rajan Kizhakkel, Clinton Grant
  • Patent number: 10585943
    Abstract: In one embodiment, an operating system (on a computer device in a network of computer devices) interfaces with a distributed graph database that is distributed across the network of computer devices, and executes an application that has one or more parent data constructs that reference one or more child objects within the distributed graph database. Specifically, the one or more child objects each have a location-independent object identifier (OID) having at least: a) an OID-identifier (OID-ID) assigned upon creation to each particular child object by a data source of the location-independent OID; b) an OID-source structure that uniquely identifies the data source of the location-independent OID within the network of computer devices; and c) an OID-pointer indicative of a relative location of the particular child object in a memory mapped region. Accordingly, the operating system accesses the child objects (e.g., for an application) based on the location-independent OID.
    Type: Grant
    Filed: October 7, 2016
    Date of Patent: March 10, 2020
    Assignee: Cisco Technology, Inc.
    Inventors: Vinit Rajan Kizhakkel, Jeffrey Y. D Lo, Pratap Pereira
  • Publication number: 20190377759
    Abstract: In one embodiment, an operating system on a computer device interfaces with a graph database that has data nodes interconnected by relationship edges. The operating system generates database instructions that specify a database operation for a target node in the graph database and a node traversal list through the graph database to reach the target node. By then transmitting the database instruction to the graph database, the graph database (e.g., a database management operating system) traverses the specified node traversal list through the graph database to the target node, and performs the database operation on the target node.
    Type: Application
    Filed: August 20, 2019
    Publication date: December 12, 2019
    Inventors: Jeffrey Y.D Lo, Pratap Pereira, Tzewei Sou
  • Patent number: 10437883
    Abstract: In one embodiment, an operating system on a computer device interfaces with a graph database that has data nodes interconnected by relationship edges. The operating system generates database instructions that specify a database operation for a target node in the graph database and a node traversal list through the graph database to reach the target node. By then transmitting the database instruction to the graph database, the graph database (e.g., a database management operating system) traverses the specified node traversal list through the graph database to the target node, and performs the database operation on the target node.
    Type: Grant
    Filed: October 7, 2016
    Date of Patent: October 8, 2019
    Assignee: Cisco Technology, Inc.
    Inventors: Jeffrey Y. D Lo, Pratap Pereira, Tzewei Sou
  • Patent number: 10282268
    Abstract: In one embodiment, a logging process initiates a trace of an execution flow across a plurality of processes, and creates a log context for the trace, the log context having a universally unique identifier (UUID) and an indication that the trace is to be performed as the plurality of processes are executed during the execution flow. The logging process manages passage of the log context across the plurality of processes during the execution flow, and gathers log entries from the plurality of processes based on the UUID for the trace, where the log entries were created based on the indication being within the log context. As such, the logging process may stitch the log entries into a flow execution log for the trace of the execution flow.
    Type: Grant
    Filed: October 31, 2016
    Date of Patent: May 7, 2019
    Assignee: Cisco Technology, Inc.
    Inventors: Zachariah Cherian, Pratap Pereira
  • Publication number: 20170147708
    Abstract: In one embodiment, an operating system on a computer device interfaces with a graph database that has data nodes interconnected by relationship edges. The operating system generates database instructions that specify a database operation for a target node in the graph database and a node traversal list through the graph database to reach the target node. By then transmitting the database instruction to the graph database, the graph database (e.g., a database management operating system) traverses the specified node traversal list through the graph database to the target node, and performs the database operation on the target node.
    Type: Application
    Filed: October 7, 2016
    Publication date: May 25, 2017
    Inventors: Jeffrey Y.D Lo, Pratap Pereira, Tzewei Sou
  • Publication number: 20170147448
    Abstract: In one embodiment, an operating system (on a computer device in a network of computer devices) interfaces with a distributed graph database that is distributed across the network of computer devices, and executes an application that has one or more parent data constructs that reference one or more child objects within the distributed graph database. Specifically, the one or more child objects each have a location-independent object identifier (OID) having at least: a) an OID-identifier (OID-ID) assigned upon creation to each particular child object by a data source of the location-independent OID; b) an OID-source structure that uniquely identifies the data source of the location-independent OID within the network of computer devices; and c) an OID-pointer indicative of a relative location of the particular child object in a memory mapped region. Accordingly, the operating system accesses the child objects (e.g., for an application) based on the location-independent OID.
    Type: Application
    Filed: October 7, 2016
    Publication date: May 25, 2017
    Inventors: Vinit Rajan Kizhakkel, Jeffrey Y.D Lo, Pratap Pereira
  • Publication number: 20170147669
    Abstract: In one embodiment, a cursor management process inserts temporal references into a plurality of records written to a table of a shared database, the temporal references indicative of an order in which the records are written. A table write cursor points at a last-written record from among the plurality of records, and read cursors point to a last-read record of a corresponding application. The cursor management process may then provide, table updates to a particular application by determining a chain of one or more updated records of the table from the last-read record of the particular application to the last-written record based on walking a particular read cursor for the particular application through the temporal references of the one or more updated records until the particular read cursor points to the last-written record according to the table write cursor.
    Type: Application
    Filed: October 7, 2016
    Publication date: May 25, 2017
    Inventors: Jeffrey Y.D. Lo, Pratap Pereira, Rajeev Kochhar, Vinit Rajan Kizhakkel, Clinton Grant