G06F9/4868

APPLYING AN ALLOCATION POLICY TO CAPTURE MEMORY CALLS
20210019200 · 2021-01-21 ·

A technique is introduced for intercepting memory calls from a user-space application and applying an allocation policy to determine whether such calls are handled using volatile memory such as dynamic random-access memory (DRAM) or persistent memory (PMEM). In an example embodiment, memory calls from an application are intercepted by a memory allocation capture library. Such calls may be to a memory function such as malloc( ) and may be configured to cause a portion of DRAM to be allocated to the application to process a task. The memory allocation capture library then determines whether the intercepted call satisfies capture criteria associated with an allocation policy. If the intercepted call does satisfy the capture criteria, the call is processed to cause a portion of PMEM to be allocated to the application instead of DRAM.

MULTI-LEVEL CACHING TO DEPLOY LOCAL VOLATILE MEMORY, LOCAL PERSISTENT MEMORY, AND REMOTE PERSISTENT MEMORY
20210019206 · 2021-01-21 ·

A technique is introduced for applying multi-level caching to deploy various types of physical memory to service captured memory calls from an application. The various types of physical memory can include local volatile memory (e.g., dynamic random-access memory), local persistent memory, and/or remote persistent memory. In an example embodiment, a user-space page fault notification mechanism is used to defer assignment of actual physical memory resources until a memory buffer is accessed by the application. After populating a selected physical memory in response to an initial user-space page fault notification, page access information can be monitored to determine which pages continues to be accessed and which pages are inactive to identify candidates for eviction.

FORK HANDLING IN APPLICATION OPERATIONS MAPPED TO DIRECT ACCESS PERSISTENT MEMORY
20210019207 · 2021-01-21 ·

A technique is described for handling forks in operations mapped to direct access persistent memory (PMEM). In an example embodiment, access by a parent operation of an allocated portion of PMEM is monitored to determine a portion of the allocated PMEM that is in use by the parent operation. In response to a fork call indicating that the parent operation will copy itself to create a child operation, a clone of the portion of allocated PMEM is created to facilitate processing of the child operation. The cloned portion of PMEM can be created just before the child operation is created (i.e., pre-fork) or after the child operation is created (i.e., post-fork). To create the clone post-fork, a user-space page fault notification mechanism can be implemented to detect a next buffer access by the child operation and create the clone in response to the detected access.

Intelligent and automatic replication load score based load balancing and resiliency of replication appliances

Various systems and methods are provided for receiving replication data at a recovery site from a replication process initiated on a primary site, where the recovery site includes at least a first gateway appliance and a second gateway appliance that can be used to process the replication data. The systems and methods further involve evaluating a replication load of the first gateway appliance, which includes analyzing at least a first evaluation factor and a second evaluation factor related to the replication process, and in response to evaluating the evaluation factors, determining whether the first gateway appliance is overloaded. In response to determining that the first gateway appliance is overloaded, rebalancing a replication workload between the first gateway appliance and the second gateway appliance.

System and method for blockchain-based notification

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for blockchain-based notification are provided. One of the methods includes: obtaining, from a computing device, a notification message indicating that a current state of a workflow is one of one or more states of the workflow, wherein a blockchain contract deployed in a blockchain is executable to update the current state among the one or more states of the workflow; executing a function associated with the one state in response to the notification message; and in response to completion of the execution of the function, transmitting, to the computing device, a reply message indicating completion of the execution of the function associated with the one state.

PROCESS PLACEMENT IN A CLOUD ENVIRONMENT BASED ON AUTOMATICALLY OPTIMIZED PLACEMENT POLICIES AND PROCESS EXECUTION PROFILES

A method for placement of processes in a distributed datacenter is described. The method includes receiving, by a first placement node, a placement request corresponding to a process; determining a load estimation for resources managed by the first placement node and a demand estimation for the process based on a process execution profile for the process; determining whether the placement request can be fulfilled with the resources managed by the first placement node based on the demand estimation of the process and the load estimation of the resources managed by the first placement node; executing the process with the resources managed by the first placement node in response to determining that the placement request can be fulfilled with the resources managed by the first placement node; generating an intermediate score based on the execution; and updating a performance score of the process execution profile based on the intermediate score.

SYSTEM AND METHOD FOR REGISTERING SUBSCRIBABLE SUB-STATES IN BLOCKCHAIN
20200356405 · 2020-11-12 ·

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for registering subscribable sub-states in blockchain are provided. One of the methods includes: obtaining a request for registering one or more sub-states of a state, wherein a registered workflow comprises the state; generating a blockchain contract comprising the one or more sub-states; and deploying the blockchain contract in a blockchain. The deployed blockchain contract is executable to update a current sub-state of the state corresponding to the workflow among the one or more sub-states.

SYSTEM AND METHOD FOR BLOCKCHAIN-BASED NOTIFICATION
20200310892 · 2020-10-01 ·

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for blockchain-based notification are provided. One of the methods includes: obtaining, from a computing device, a notification message indicating that a current state of a workflow is one of one or more states of the workflow, wherein a blockchain contract deployed in a blockchain is executable to update the current state among the one or more states of the workflow; executing a function associated with the one state in response to the notification message; and in response to completion of the execution of the function, transmitting, to the computing device, a reply message indicating completion of the execution of the function associated with the one state.

System and method for registering subscribable sub-states in blockchain
10789092 · 2020-09-29 · ·

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for registering subscribable sub-states in blockchain are provided. One of the methods includes: obtaining a request for registering one or more sub-states of a state, wherein a registered workflow comprises the state; generating a blockchain contract comprising the one or more sub-states; and deploying the blockchain contract in a blockchain. The deployed blockchain contract is executable to update a current sub-state of the state corresponding to the workflow among the one or more sub-states.

Smart replay in management systems

Methods, mediums, and systems include use of a system manger application in a data processing system to create a replay in a graphical user interface, to receive replay criteria, identify any replay devices, replay sensors, replay actuators, and replay functions corresponding to the replay criteria from among the plurality of devices, sensors, and actuators, identify a replay time period corresponding to the replay criteria, gather replay data for the identified replay devices, replay sensors, replay actuators, or replay functions corresponding to the replay criteria that was generated during the replay time period, and display the replay in the graphical user interface according to the replay data.