Optimierung von Workloads bei Verwendung von switchlosen OCALLS in Intel® Software Guard Extensions (Intel® SGX) Enklaven
- SL_DEFAULT_FALLBACK_RETRIES ist in linux-sgx/common/inc/sgx_uswitchless.h auf 20000 eingestellt.
- Dieser Standardparameter bewirkt, dass Anwendungen, die viele lange switchless-OCALLS durchführen, eine langsame Leistung aufweisen, verglichen mit der Leistung, die sie haben, wenn switchless deaktiviert ist.
- Es kann nicht überprüft werden, warum 20000 der Standardwert ist.
Während der genaue Grund für SL_DEFAULT_FALLBACK_RETRIES = 20000 nicht bekannt ist, erfordern Workloads, die switchless-Aufrufe verwenden, eine Feinabstimmung der Leistung. In der Intel® Software Guard Extensions (Intel® SGX) Developer Reference für Linux* heißt es:
Switchless Calls ist eine erweiterte Funktion. Es erfordert zusätzliche Arbeitsthreads und Konfiguration, Leistungstests und Tuning. Er sollte für Workloads verwendet werden, die eine Feinabstimmung der Leistung erfordern. Eine Fehlkonfiguration kann zu nicht ausgelasteten Arbeitsthreads führen, was CPU-Zeit verbraucht, ohne Aufgaben zu erfüllen.
Die Intel SGX Developer Reference für Linux befindet sich im Dokumentationsordner der neuesten Version des Intel® Software Guard Extensions SDK für Linux*.