SAP SE
Delegating bytecode runtime compilation to serverless environment

Last updated:

Abstract:

A host delegates Just-In-Time (JIT) bytecode compilation to a serverless Web Assembly (WASM) runtime. The WASM runtime receives the bytecode, together with any additional arguments (e.g.: offsets of dependent functions, vtable metadata, virtual machine state). The host may include a parser to provide the additional arguments. In response to receiving the bytecode and arguments, the WASM runtime triggers a thread and loads appropriate WASM modules to compile the bytecode. The resulting assembly instructions are sent back to the host for execution in connection with the (frequently requested) method. Only the bytecode of frequently-accessed methods (as determined at the host) may be delegated for compilation. Delegation of bytecodes for compilation according to embodiments, may conserve a significant percentage of CPU cycles at the host, which can then be used for executing code instead. Based upon analysis of historical compilation activities, particular embodiments may pro-actively implement speculative loading of additional WASM modules.

Status:
Grant
Type:

Utility

Filling date:

13 Dec 2019

Issue date:

19 Jul 2022