This is documentation for the development version of the project, aka master branch. If you installed Gramine from packages, documentation for the stable version is available at

is-sgx-available – Check environment for SGX compatibility


is-sgx-available [OPTIONS]


is-sgx-available checks the CPU and operating system for SGX compatibility. A detailed report is printed unless suppressed by the --quiet option.

Command line arguments


Suppress displaying detailed report. See exit status for the result.

Exit status


SGX version 1 is available and ready


No CPU cupport


No BIOS support


SGX Platform Software (PSW) is not installed


The aesmd PSW daemon is not installed


$ is-sgx-available
SGX supported by CPU: true
SGX1 (ECREATE, EENTER, ...): true
SGX2 (EAUG, EACCEPT, EMODPR, ...): false
Flexible Launch Control (IA32_SGXPUBKEYHASH{0..3} MSRs): false
SGX extensions for virtualizers (EINCVIRTCHILD, EDECVIRTCHILD, ESETCONTEXT): false
Extensions for concurrent memory management (ETRACKC, ELDBC, ELDUC, ERDINFO): false
EDECCSSA instruction: false
CET enclave attributes support (See Table 37-5 in the SDM): false
Key separation and sharing (KSS) support (CONFIGID, CONFIGSVN, ISVEXTPRODID, ISVFAMILYID report fields): false
AEX-Notify: false
Max enclave size (32-bit): 0x80000000
Max enclave size (64-bit): 0x1000000000
EPC size: 0x5d80000
SGX driver loaded: true
AESMD installed: true
SGX PSW/libsgx installed: true
#PF/#GP information in EXINFO in MISC region of SSA supported: false
#CP information in EXINFO in MISC region of SSA supported: false