@@ -38,7 +38,7 @@ Aramis already has the following example compiled NNs in `party0/src/example_neu
...
@@ -38,7 +38,7 @@ Aramis already has the following example compiled NNs in `party0/src/example_neu
# Programming in SGX
# Programming in SGX
* You can debug SGX applications using a tool that comes with SGX SDK called `sgx-gdb`. When running it, you might face a SIGILL interrupt, enter `c` and continue. You will need to do this 4 times. Don't worry, this will not have any effect on your debugging.
* You can debug SGX applications using a tool that comes with SGX SDK called `sgx-gdb`. When running it, you might face a SIGILL interrupt, enter `c` and continue. You will need to do this 4 times. Don't worry, this will not have any effect on your debugging.
* If you want to benchmark the peak memory usage of your SGX application, then you can use `sgx_emmt` tool. To use it, run your application with `sgx-gdb` and enter `enable sgx_emmt` before running you application.
* If you want to benchmark the peak memory usage of your SGX application, then you can use `sgx_emmt` tool. To use it, run your application with `sgx-gdb` and enter `enable sgx_emmt` before running you application.
* You might face a SIGILL or SEGFAULT error while running a big NN in Aramis. This occurs when you try to use more memory during runtime than what is specified in the file `party0/Enclave/Enclave.config.xml`. There are 2 lines there, one for `StackMaxSize` and the other for `HeapMaxSize`. To fix SIGLL or SEGFAULT, you can increase these values. Try increasing only the `HeakMaxSize` value first and it the faults are still there, then increase `StackMaxSize` slowly and try to run. These values are in Hex representation of the number of Bytes the program is expected to use during runtime.
* You might face a SIGILL or SEGFAULT error while running a big NN in Aramis. This occurs when you try to use more memory during runtime than what is specified in the file `party0/Enclave/Enclave.config.xml`. There are 2 lines there, one for `StackMaxSize` and the other for `HeapMaxSize`. To fix SIGLL or SEGFAULT, you can increase these values. Try increasing only the `HeakMaxSize` value first and it the faults are still there, then increase `StackMaxSize` slowly and try to run. These values are in Hex representation of the number of Bytes the program is expected to use during runtime. Remember to run `./update_all.sh` after any change that you make to `party0/` directory to update `party1/` and `party2/` directories automatically.
# Some Notes Regarding SGX Configuration and Aramis
# Some Notes Regarding SGX Configuration and Aramis
* The project's Remote Attestation handling routine is totally compatible with Intel IAS API version 3, revision 5.
* The project's Remote Attestation handling routine is totally compatible with Intel IAS API version 3, revision 5.