TL;DR: In this paper, the authors present a rollback operation on clients experiencing a decrease of performance due to an addition of new software, based on a plurality of updates received from the first client.
Abstract: Embodiments of the invention provide the ability to determine whether a particular application may be safely added to a client computing device. Further, embodiments of the invention also allow for performing a rollback operation on clients experiencing a decrease of performance due to an addition of new software. For example, after a client updates to a new piece of software, a server may monitor the performance of the first client by analyzing a plurality of updates received from the first client. Each update may include a performance indicator. Using the updates, the server may detect a decrease in the performance of the first client. Upon detecting the decrease in the performance, the server may initiate a rollback to a previous state on the first client.
TL;DR: This paper addresses the issue of executing backward updates in a fully-transparent and event granularity-independent way, by relying on static software instrumentation to generate at runtime reverse update code blocks which are able to undo the effects of a forward execution while minimizing the cost of the undo operation.
Abstract: The rollback operation is a fundamental building block to support the correct execution of a speculative Time Warp-based Parallel Discrete Event Simulation. In the literature, several solutions to reduce the execution cost of this operation have been proposed, either based on the creation of a checkpoint of previous simulation state images, or on the execution of negative copies of simulation events which are able to undo the updates on the state. In this paper, we explore the practical design and implementation of a state recoverability technique which allows to restore a previous simulation state either relying on checkpointing or on the reverse execution of the state updates occurred while processing events in forward mode. Differently from other proposals, we address the issue of executing backward updates in a fully-transparent and event granularity-independent way, by relying on static software instrumentation (targeting the x86 architecture and Linux systems) to generate at runtime reverse update code blocks (not to be confused with reverse events, proper of the reverse computing approach). These are able to undo the effects of a forward execution while minimizing the cost of the undo operation. We also present experimental results related to our implementation, which is released as free software and fully integrated into the open source ROOT-Sim (ROme OpTimistic Simulator) package. The experimental data support the viability and effectiveness of our proposal.
TL;DR: The practical design and implementation of a fully new approach based on the runtime generation of so-called undo code blocks, which are blocks of instructions implementing the reverse memory side effects generated by the forward execution of the events, which can be combined with classical checkpointing to further improve the runtime behavior of the state recoverability support as a function of the workload.
Abstract: The Time Warp synchronization protocol for Parallel Discrete Event Simulation (PDES) is universally considered a viable solution to exploit the intrinsic simulation model parallelism and to provide model execution speedup. Yet it leads the PDES system to execute events in an order that may generate causal inconsistencies that need to be recovered via rollback, which requires restoration of a previous (consistent) simulation state whenever a causality violation is detected. The rollback operation is so critical for the performance of a Time Warp system that it has been extensively studied in the literature for decades to find approaches suitable to optimize it. The proposed solutions can be roughly classified as based on either checkpointing or reverse computing. In this article, we explore the practical design and implementation of a fully new approach based on the runtime generation of so-called undo code blocks, which are blocks of instructions implementing the reverse memory side effects generated by the forward execution of the events. However, this is not done by recomputing the original values to be restored, as instead it occurs in reverse computing schemes. Hence, the philosophy undo code blocks rely on is similar in spirit to that of undo-logs (as a form of checkpointing). Nevertheless, they are not data logs (as instead checkpoints are); rather, they are logs of instructions. Our proposal is fully transparent, thanks to the reliance on static software instrumentation (targeting the x86 architecture and Linux systems). Also, as we show, it can be combined with classical checkpointing to further improve the runtime behavior of the state recoverability support as a function of the workload. We also present experimental results related to our implementation, which is released as free software and fully integrated into the open source ROOT-Sim package. Experimental data support the viability and effectiveness of our proposal.
TL;DR: In this paper, the system transforms data structures without the need for a backup copy by using a select sequence of data operations that move data from its origin in the initial logical arrangement to a target location in the desired logical arrangement.
Abstract: A system transforms data structures absent the need for a backup copy. The system transforms a first logical store in an initial logical arrangement to a desired logical arrangement where the data structures of the logical arrangements are different. The system uses a select sequence of data operations that moves data from its origin in the initial logical arrangement to a target location in the desired logical arrangement. The system generates and properly locates parity information when so desired. The system executes a subsequent data operation in accordance with an indication that the previous data operation was successful. Each subsequent data operation uses the source location from the previous data operation. A non-volatile memory element holds information concerning a present data operation to enable a rollback operation when a present data operation is unsuccessful.
TL;DR: In this article, a page rollback controlling method is proposed to control the rollback operation of a page. But the method is quite easy and convenient to operate; and the problem that the user only can return to a historical page by repeatedly clicking a widget of'returning to a previous page' is solved.
Abstract: The invention relates to a page rollback controlling method and a page rollback controlling device. The page rollback controlling method comprises the following steps of acquiring rollback operation; judging whether a preset rollback page which corresponds to the rollback operation and is a preset page exists or not; and displaying the preset rollback page if the preset rollback page exists. Regardless of the number of content pages, the preset rollback page with a headline can be directly opened by using the method when the rollback operation of the user is acquired. The page rollback controlling method is quite easy and convenient to operate; and the problem that the user only can return to a historical page by repeatedly clicking a widget of 'returning to a previous page' is solved.