Files
Li, Xun e7bbc158fa Linux 2.20 Open Source Gold Release
Supported the AEX (Asynchronous Enclave Exit) Notify feature.
Supported Mbed-TLS Cryptography library (excluding SSL/TLS portion) in Enclave.
Applied patches to OpenSSL 1.1.1t, fixed CVE-2023-1255, CVE-2023-0465 and
  CVE-2023-0466.
Upgraded to Intel(R) Integrated Performance Primitives (IPP) Cryptography
  library version 2021.7.
Upgraded Intel SGX Quote Verification Enclave to integrate updated SgxSSL.
Enhanced the attestation local cache functionality by giving users the option
  to provide their own cache file.
Enabled QPL/QCNL log in DCAP samples.
Fixed bugs.

Signed-off-by: Li, Xun <xun.li@intel.com>
2023-07-21 10:11:26 +08:00

45 lines
2.0 KiB
Plaintext

--------------------------
Purpose of Deep Neural Network Library (DNNL)
--------------------------
The project demonstrates Intel(R) Deep Neural Network Library (DNNL) functions inside Intel(R) SGX environment
**NOTE**: The SampleDNNL project is validated under GNU Compiler Collection Version <= 9.4. High GCC versions are incompatible with the current version.
------------------------------------
How to Build/Execute the Sample Code
------------------------------------
1. Install Intel(R) Software Guard Extensions (Intel(R) SGX) SDK for Linux* OS
2. Enclave test key(two options):
a. Install openssl first, then the project will generate a test key<Enclave_private_test.pem> automatically when you build the project.
b. Rename your test key(3072-bit RSA private key) to <Enclave_private_test.pem> and put it under the <Enclave> folder.
3. Build Intel(R) SGX DNNL library.
a. Download Intel(R) SGX source codes from: https://github.com/intel/linux-sgx
b. Build the library.
$ cd ./external/dnnl
$ make
4. Install Intel(R) SGX DNNL library and header files.
a. Copy Intel(R) SGX DNNL lib to the Intel(R) SGX SDK installation directory.
$ cp "./sgx_dnnl/lib/libsgx_dnnl.a" "$(SGX_SDK)/lib64"
b. Copy Intel(R) SGX DNNL header files to the Intel(R) SGX SDK header file directory.
$ cp "./sgx_dnnl/include/*" "$(SGX_SDK)/include"
5. Make sure your environment is set:
$ source ${sgx-sdk-install-path}/environment
6. Build the project with the prepared Makefile:
a. Hardware Mode, Debug build:
$ make
b. Hardware Mode, Pre-release build:
$ make SGX_PRERELEASE=1 SGX_DEBUG=0
c. Hardware Mode, Release build:
$ make SGX_DEBUG=0
d. Simulation Mode, Debug build:
$ make SGX_MODE=SIM
e. Simulation Mode, Pre-release build:
$ make SGX_MODE=SIM SGX_PRERELEASE=1 SGX_DEBUG=0
f. Simulation Mode, Release build:
$ make SGX_MODE=SIM SGX_DEBUG=0
7. Execute the binary directly:
$ ./app
8. Remember to "make clean" before switching build mode