US Patent Application 17804230. PORTABILITY OF CHECKPOINTS OF AN APPLICATION USING CENTRAL PROCESSING UNIT (CPU)-SPECIFIC FUNCTIONS simplified abstract
PORTABILITY OF CHECKPOINTS OF AN APPLICATION USING CENTRAL PROCESSING UNIT (CPU)-SPECIFIC FUNCTIONS
Organization Name
Inventor(s)
Ashutosh Mehra of Toronto (CA)
Daniel Heidinga of Toronto (CA)
PORTABILITY OF CHECKPOINTS OF AN APPLICATION USING CENTRAL PROCESSING UNIT (CPU)-SPECIFIC FUNCTIONS - A simplified explanation of the abstract
This abstract first appeared for US patent application 17804230 titled 'PORTABILITY OF CHECKPOINTS OF AN APPLICATION USING CENTRAL PROCESSING UNIT (CPU)-SPECIFIC FUNCTIONS
Simplified Explanation
The patent application describes a system and method for improving the portability of checkpoints in an application using CPU-specific features.
- The system includes a source computing system and a destination computing system.
- The source computing system executes an application with multiple implementations of a function.
- When a request to resolve an implementation decision for the function is received, the source computing system selects a source-specific implementation based on the CPU-specific features of the source system.
- The source computing system patches the call site associated with the function with the address of the source-specific implementation.
- A checkpoint of the application, including the resolved callsite table, is sent to the destination computing system.
- The destination computing system restores the application by changing the implementation decision based on the CPU-specific features of the destination system.
Original Abstract Submitted
Systems and methods are described for improving portability of checkpoints of an application using central processing unit (CPU)-specific features. In an example, a system includes a source computing system and a destination computing system. The source computing system may be configured to: cause a first execution of an application that includes a function associated with a plurality of implementations; receive a request to resolve an implementation decision for the function; select, based on a set of source CPU-specific features, a source-specific implementation for the first execution of the function; patch, by rendering a resolved callsite table, a call site associated with the function with an address of the source-specific implementation; and send, to a destination computing system, a checkpoint of the application that includes the resolved callsite table. The destination computing system is configured to restore the application by changing the implementation decision based on a set of destination CPU-specific features.