SGXTuner: Performance Enhancement of Intel SGX Applications Via Stochastic Optimization

Giovanni Mazzeo, Sergei Arnautov, Christof W. Fetzer, Luigi Romano · IEEE Transactions on Dependable and Secure Computing · 2021

IntelSGXhas started to be widely adopted. Cloud providers (Microsoft Azure, IBM Cloud, Alibaba Cloud) are offering new solutions, implementingdata-in-useprotection via SGX. A major challenge faced by both academia and industry is providing transparent SGX support to legacy applications. The approach with the highest consensus is linking the target software with SGX-extendedlibclibraries. Unfortunately, the increased security entails a dramatic performance penalty, which is mainly due to the intrinsic overhead of context switches, and the limited size of protected memory. Performance optimization is non-trivial since it depends on key parameters whose manual tuning is a very long process. We present the architecture of an automated tool, calledSGXTuner, which is able to find the best setting of SGX-extendedlibclibrary parameters, by iteratively adjusting such parameters based on continuous monitoring of performance data. The tool is — to a large extent — algorithm agnostic. We decided to base the current implementation on a particular type of stochastic optimization algorithm, specificallySimulated Annealing. A massive experimental campaign was conducted on a relevant case study. Three client-server applications —Memcached,Redis, andApache— were compiled with SCONE'ssgx-musland tuned for best performance. Results demonstrate the effectiveness ofSGXTuner.

Read the paper · More papers on PaperTik