CRaC Command-Line Options
CRaC engines
The CRaC engine is the component responsible for performing checkpoint and restore operations.
There are currently two engines available in production mode:
CRIU
The first one is based on a standard Linux feature called CRIU (Checkpoint/Restore In Userspace). This is the default engine.
WARP
WARP is a CRIU-independent engine designed by Azul especially for CRaC. This engine is only available for x86_64 architecture.
Using WARP engine can be enabled with VM option -XX:CRaCEngine=warp
.
When you specify an engine, it must be set in both start and restore command lines.
It is recommended to use the WARP engine rather than the default CRIU engine. Indeed, the CRIU engine must be run as root user (as described in the official documentation), while WARP engine doesn’t require any additional privileges.
More information about CRaC engines can be found in the official documentation.
VM options
Lots of VM arguments can be set to fine-tune CRaC behavior, such as selecting the engine.
For instance, you can choose whether the application should keep running after a checkpoint with the following argument:
-XX:CRaCEngineOptions=keep_running=<true/false>
.
By default, the application stops after checkpointing.
See all the options in the official documentation.